当前位置:   article > 正文

机器学习入门(小白学习笔记)

机器学习入门(小白学习笔记)

一、机器学习ML

机器学习(Machine Learning)就是通过训练样本数据建立数学模型做出预测和决策
统计学习(Statistical Learning)就是运用数据及统计方法的机器学习
一般谈到统计学习就是机器学习

二、基本术语

数据 Data:机器学习的研究对象,计算机及网络一切信息都可以是数据
数据集 Data Set:用于训练或测试模型的数据的集合
样本 Sample:数据集中对某事件或某对象的描述的记录,也叫实例 Instance,样本所组成的空间叫样本空间 Sample Space,作为输入空间
特征 Feature:每个样本在某方面的表现,类似于生物里的“性状”,也叫属性 Attribute
学习 Learning:从数据得到模型的过程,也叫训练Training,因而训练中使用的数据叫训练数据,其中每个样本叫训练样本,训练样本组成的集合叫训练集,训练学习得到的模型叫做假设 Hypothesis,假设逼近的真正的规律叫真相 Ground-true
模型 Model:从数据中学得的结果,也叫学习器 Learner
标签 Label:人工给部分样本标记的信息,有标签的样本叫样例 example,标签的集合叫标签空间 Label Space,作为输出空间
测试 Testing:测试是使用模型进行预测的过程,被预测的样本叫测试样本 Testing Sample
损失函数 loss function:度量预测错误的程度,来评价模型一次预测的好坏,又叫cost function

常用的损失函数表达式
0-1loss function L ( Y , f ( X ) ) = { 1 , Y ≠ f ( X ) 0 , Y = f ( X ) L(Y, f(X))=
{1,Yf(X)0,Y=f(X)
L(Y,f(X))={1,0,Y=f(X)Y=f(X)
quadratic loss function L ( Y , f ( X ) ) = ( Y − f ( X ) ) 2 L(Y,f(X))=(Y-f(X))^2 L(Y,f(X))=(Yf(X))2
absolute loss function L ( Y , f ( X ) ) = ∣ Y − f ( X ) ∣ L(Y,f(X))=\lvert{Y-f(X)}\rvert L(Y,f(X))=Yf(X)
logarithmic\log-likelihood loss function L ( Y , P ( Y ∣ X ) = − log ⁡ ( P ( Y ∣ X ) ) L(Y,P(Y{\lvert}X)=-\log(P(Y{|}X)) L(Y,P(YX)=log(P(YX))

风险函数 risk function:模型关于其联合分布的损失的期望,来评价模型平均意义下预测的好坏,又叫期望损失 expected loss
经验风险 empirical risk/loss:训练集中损失的平均值

风险函数 R e x p ( f ) = ∫ X × Y L ( y , f ( x ) ) P ( x , y ) d x d y R_{exp}(f)=\int_{\mathcal{X}\times\mathcal{Y}}L(y,f(x))P(x,y)\mathrm{d}x\mathrm{d}y Rexp(f)=X×YL(y,f(x))P(x,y)dxdy
经验风险 R e m p ( f ) = 1 N ∑ i = 1 N L ( y i , f ( x i ) ) R_{emp}(f)=\frac{1}{N}\overset{N}{\underset{i=1}\sum}L(y_{i},f(x_{i})) Remp(f)=N1i=1NL(yi,f(xi))

根据大数定律,当样本容量 N → ∞ N\to\infty N,则 R e m p ( f ) → R e x p ( f ) R_{emp}(f)\to{R_{exp}(f)} Remp(f)Rexp(f)
但实际上训练样本数目有限,所以用经验风险估计期望损失需要对经验风险矫正

三、基本分类

监督学习 supervised learning无监督学习 unsupervised learning强化学习 reinforcement learning半监督学习 semi-supervised learning主动学习 active learning

1.监督学习

基本描述

从标注数据中学习预测模型
输入输出变量可能取值的集合分别成为输入空间 input space输出空间 output space
输入变量记为X,输出变量记为Y
输入的样本实例记为 x = ( x ( 1 ) , x ( 2 ) , . . . , x ( i ) , . . . , x ( n ) ) T x=(x^{(1)},x^{(2)},...,x^{(i)},...,x^{(n)})^{T} x=(x(1),x(2),...,x(i),...,x(n))T
x ( i ) x^{(i)} x(i)表示x的第 i i i个特征
i i i个输入样本实例记为 x i = ( x i ( 1 ) , x i ( 2 ) , . . . , x i ( i ) , . . . , x i ( n ) ) T x_{i}=(x^{(1)}_{i},x^{(2)}_{i},...,x^{(i)}_{i},...,x^{(n)}_{i})^{T} xi=(xi(1),xi(2),...,xi(i),...,xi(n))T
N N N个样本点的训练集记为 T = { ( x 1 , y 1 ) , ( x 2 , y 2 ) , . . . , ( x N , y N ) } T=\{(x_{1},y_{1}),(x_{2},y_{2}),...,(x_{N},y_{N})\} T={(x1,y1),(x2,y2),...,(xN,yN)}
联合概率分布 X , Y ∼ P ( X , Y ) X,Y\sim P(X,Y) X,YP(X,Y)
监督学习的模型可以是条件概率分布 P ( Y ∣ X ) P(Y|X) P(YX)决策函数 Y = f ( X ) Y=f(X) Y=f(X)
样本输入是 x x x时,写作 P ( y ∣ x ) P(y|x) P(yx) y = f ( x ) y=f(x) y=f(x)

监督学习三大问题

分类问题(学习+分类)输出变量为有限个离散变量

主要看分类器的性能评价指标

error rate与accuracy

error rate = 1 N ∑ i = 1 N I ( y i ≠ f ^ ( x i ) ) = ∫ x ∼ D I ( y ≠ f ^ ( x ) ) p ( x ) d x \text{error rate}=\frac{1}{N}\overset{N}{\underset{i=1}\sum}I(y_{i}\neq\hat{f}(x_{i}))=\int_{x\sim\mathcal{D}}I(y\neq\hat{f}(x))p(x)\text{d}x error rate=N1i=1NI(yi=f^(xi))=xDI(y=f^(x))p(x)dx
accuracy = 1 N ∑ i = 1 N I ( y i = f ^ ( x i ) ) = ∫ x ∼ D I ( y = f ^ ( x ) ) p ( x ) d x \text{accuracy}=\frac{1}{N}\overset{N}{\underset{i=1}\sum}I(y_{i}=\hat{f}(x_{i}))=\int_{x\sim\mathcal{D}}I(y=\hat{f}(x))p(x)\text{d}x accuracy=N1i=1NI(yi=f^(xi))=xDI(y=f^(x))p(x)dx
p ( x ) p(x) p(x)是概率密度函数

查准率 precision与查全率 recall

预测结果混淆矩阵

预测正例预测反例
真实正例TPFN
真实反例FPTN

precision = T P T P + F P \text{precision}=\frac{TP}{TP+FP} precision=TP+FPTP意思是模型判断为正例的样本里有多少真正的正例
recall = T P T P + F N \text{recall}=\frac{TP}{TP+FN} recall=TP+FNTP意思是真正的正例中有多少模型判断对了
查准率等于查全率的取值被称为平衡点 Break-Even Point BEP,平衡点越高,一般认为模型更优异
更精准一点可以使用两者的调和平均数 F 1 = 2 × P × R P + R F_1=\frac{2\times{P}\times{R}}{P+R} F1=P+R2×P×R判断
或可用加权调和平均数 F β = ( 1 + β 2 ) × P × R β 2 × P + R F_{\beta}=\frac{(1+\beta^2)\times{P}\times{R}}{\beta^2\times{P}+R} Fβ=β2×P+R(1+β2)×P×R
β \beta β是衡量P和R谁重要的参数,大于一 R 更重要,小于一 P 更重要

标注问题(学习+标注tagging)
回归问题(学习+预测)输入输出均为连续变量

回归问题最常用的是平方损失函数

2.无监督学习

从无标注数据中学习预测模型
学习数据中的统计规律和潜在结构
典型的无监督学习是聚类问题

3.强化学习、半监督学习、主动学习

强化学习是智能系统在与环境的连续互动中学习最优行为策略
半监督学习是利用未标注数据辅助标注数据进行学习
主动学习是机器不断主动给实例让人进行标注,然后利用标注数据进行学习

四、机器学习三要素

模型 model、策略 strategy、算法 algorithm

1.模型

选择模型时只选择概率模型 probabilistic model非概率模型 non-probabilistic model其中的一种
假设空间用 F \mathcal{F} F表示
非概率模型时, F \mathcal{F} F是决策函数的集合 F = { f ∣ Y = f θ ( X ) , θ ∈ R n } \mathcal{F}=\{f|Y={f_{\theta}}(X),\theta\in{\mathbf{R}^n}\} F={fY=fθ(X),θRn}
概率模型时, F \mathcal{F} F是决策函数的集合 F = { P ∣ P θ ( Y ∣ X ) , θ ∈ R n } \mathcal{F}=\{P|P_{\theta}(Y|X),\theta\in{\mathbf{R}^n}\} F={PPθ(YX),θRn}
θ \theta θ是参数向量

2.策略

经验风险最小化(empirical risk minimization,ERM)

ERM策略认为 R e m p R_{emp} Remp最小的模型就是最优的模型
该策略就是求解 min ⁡ f ∈ F R e m p \underset{f\in\mathcal{F}}\min{R_{emp}} fFminRemp
代表例子:极大似然估计 maximum likelihood estimation
要求:样本数量足够大,否则会出现过拟合 over-fitting现象

结构风险最小化(structural risk minimization,SRM)

SRM策略认为 R s r m R_{srm} Rsrm最小的模型就是最优的模型,就是正则化 regularization
在经验风险后面加上正则化项 regularizer罚项 penalty term
R s r m = R e m p + λ J ( f ) R_{srm}=R_{emp}+\lambda{J(f)} Rsrm=Remp+λJ(f)
这个添加项 J ( f ) J(f) J(f)表示模型的复杂程度,模型 f f f越复杂, J ( f ) J(f) J(f)越大
结构风险小的模型往往对训练数据和未知的测试数据都有较好的预测
代表例子:贝叶斯估计的最大后验概率估计

3.算法

学习模型的具体计算方法
因而机器学习就是基于训练数据集,根据学习策略(ERM还是SRM),从假设空间 F \mathcal{F} F选择最优模型 f f f,最后考虑用什么计算方法求解最优模型

五、模型评估与模型选择

  • 训练误差与测试误差
    训练误差 training error就是经验风险 R e m p ( f ^ ) R_{emp}(\hat{f}) Remp(f^)
    测试误差 test error是测试数据集的平均损失 e t e s t = 1 N ′ ∑ i = N + 1 N + N ′ L ( y i , f ^ ( x i ) ) e_{test}=\frac{1}{N'}\overset{N+N'}{\underset{i=N+1}\sum}L(y_{i},\hat{f}(x_{i})) etest=N1i=N+1N+NL(yi,f^(xi))
    其中 N N N是训练样本容量, N ′ N' N是测试样本容量
    当损失函数为0-1损失时
    测试误差就是误差率 error rate e t e s t = 1 N ′ ∑ i = N + 1 N + N ′ I ( y i ≠ f ^ ( x i ) ) e_{test}=\frac{1}{N'}\overset{N+N'}{\underset{i=N+1}\sum}I(y_{i}\neq\hat{f}(x_{i})) etest=N1i=N+1N+NI(yi=f^(xi))
    准确率 accuracy e t e s t = 1 N ′ ∑ i = N + 1 N + N ′ I ( y i = f ^ ( x i ) ) e_{test}=\frac{1}{N'}\overset{N+N'}{\underset{i=N+1}\sum}I(y_{i}=\hat{f}(x_{i})) etest=N1i=N+1N+NI(yi=f^(xi))
  • 过拟合
    过拟合 over-fitting:学习能力过强导致把训练样本不具有一般性的特性学习,导致泛化性下降。特点是参数过多,对已知数据预测的好,对未知数据预测的差
    欠拟合under-fitting:学习能力太差
  • 泛化
    将学习方法应对于新样本的预测能力叫泛化能力 generalization ability
    能反映泛化能力的参数叫泛化误差 generalization error,其实就是期望损失 R e x p R_{exp} Rexp

1.评估方法

留出法 hold-out

将原数据集 D D D划分为两个互斥集合,一个作为训练集 S S S,一个作为验证集 T T T
常用做法是 2 3 \frac{2}{3} 32~ 4 5 \frac{4}{5} 54的样本用于训练,剩余样本用于测试
如果数据集较大可以划分成60%的训练集、20%的验证集和20%的测试集,验证集用于调参

交叉验证 cross validation

将原数据集 D D D划分为 k k k个大小相似的互斥子集,用其中的 k − 1 k-1 k1个子集作为训练集,剩下一个作为验证集,反复操作,一共可以得到k次验证,返回平均值
常取的 k k k的值有5、10、20,当 k = m k=m k=m m m m为样本数)时,叫做留一法,评估准确但计算复杂

自助法 bootstrapping

原数据集 D D D m m m个样本,每次将随机抽取其中的样本拷贝放入空集合 D ′ D' D,执行 m m m次,得到新的数据集 D ′ D' D,其中缺失某些 D D D的样本,可以估计一下,始终不被采样到的概率是 ( 1 − 1 m ) m (1-\frac{1}{m})^m (1m1)m,取极限 lim ⁡ m → ∞ ( 1 − 1 m ) m = 1 e ≈ 0.368 \underset{m\to\infty}\lim(1-\frac{1}{m})^m=\frac{1}{e}\approx0.368 mlim(1m1)m=e10.368,因而可以将 D ′ D' D用于训练集,而在 D ′ D' D中未出现的用于测试集

2.调整参数

划分出独立于训练集之外的验证集优化模型,调整参数

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/549397
推荐阅读
相关标签
  

闽ICP备14008679号