统计学习方法概论
统计学习的基本概念
学习的定义
如果一个系统能够通过执行某个过程改进它的性能,这就是学习。
监督学习的学习方法
从给定的、有限的、用于学习的训练数据集合出发,假设数据是独立同分布产生的;并且假设学习的模型属于某个函数集合,称为假设空间;应用某个评价准则,从假设空间中选取一个最优的模型,使它对已知训练数据及未知测试数据在给定的评价准则下有最优的预测;最优模型的选取由算法实现。
实现统计学习方法的步骤
- 得到一个有限的训练数据集合
- 确定包含所有可能模型的假设空间,即学习模型的集合
- 确定模型选择的准则,即学习的策略
- 实现求解最优模型的算法,取出学习的算法
- 通过学习方法选择最做强模型
- 利用学习的最优模型对新数据进行预测和分析
不同的预测任务名称
- 输入变量与输出变量均为连续变量的预测问题称为回归问题。
- 输出变量为有限个离散变量的预测问题称为分类问题。
- 输入变量与输出变量均为变量序列的预测问题称为标注问题。
联合概率分布
监督学习假设输入与输出的随机变量X和Y遵循联合概率分布P(X,Y),P(X,Y)表示分布函数,或分布密度函数。训练数据与测试数据被看作是依联合概率分布P(X,Y)独立同分布产生的。
统计学习的三要素
统计学习方法包括模型的假设空间、模型选择的准则以及模型的学习算法,称其为统计学习方法的三要素,简称为模型、策略、算法。
模型
在监督学习过程中,模型就是所要学习的条件概率分布或决策函数。模型的假设空间包含所有可能的条件概率分布或决策函数。
假设空间用F表示,假设空间可以定义为决策函数的集合
假设空间也可以定义为条件概率的集合
策略
首先引入损失函数与风险函数的概念。损失函数度量模型一次预测的好坏,风险函数度量平均意义下模型预测的好坏。
常用的损失函数
**0-1损失函数 **
**平方损失函数 **
**绝对损失函数 **
**对数损失函数或对数似然损失函数 **
风险函数
损失函数的期望为是
这是理论上模型f(X)关于联合分布P(X,Y)的平均意义下的损失,称为风险函数或期望损失。
学习的目标就是选择期望风险最小的模型。由于联合分布p(X,Y)是未知的,\(R_{exp}f(x)\)不能直接计算。实际上,如果知道联合分布P(X,Y),可以从联合分布直接求出条件概率分布P(X,Y),也就不需要学习了。正因为不知道联合概率分布,所以才需要学习。
一方面根据期望风险最小学习模型要用到联合分布,另一方面联合分布又是未知的,所以监督学习就成为一个病态问题。
经验风险
给定一个训练数据集
模型f(X)关于训练数据集的平均损失称为经验风险,或经验损失。记作\(R_{emp}\):
期望风险\(R_{exp}f(x)\)是模型关于联合分布的期望损失,经验风险\(R_{emp}(f)\)是模型关于样本集的平均损失。
根据大数定律,当样本容量N趋于无穷时,经验风险\(R_{emp}(f)\)趋于期望风险\(R_{exp}(f)\)。所以一个很自然的想法是用经验风险估计期望风险。但是,由于现实中训练样本数目有限,甚至很小,所以用经验风险估计期望风险常常并不理想,要对经验风险进行一定的矫正。这就关系到监督学习的两个基本策略:经验风险最小化和结构风险最小化。
经验风险最小化
经验风险最小化的策略认为经验风险最小的模型是最优模型。根据这一策略,按照经验风险最小化求最优模型就是求解最优化问题:
其中F是假设空间。
当样本容量足够大时,经验风险最小化能够保证有很好的学习效果,在现实中被广泛使用。比如,极大似然估计就是经验风险最小化的例子。当模型是条件概念分布,损失函数是对数缺失函数时,经验最小化就等价于极大似然估计。
当然,当样本容量很小时,经验风险最小化学习的效果就未必很好,会产生后面将叙述的“过拟合”现象。
结构风险最小化
结构风险最小化是为了防止过拟合面提出来的策略。结构风险最小化等价于正则化。结构风险在经验风险上加上表示模型复杂度的与此正则化项或罚项。结构风险的定义是:
其中J(f)为模型的复杂度,是定义在假设空间F的泛函。模型f越复杂,复杂度J(f)就越大;反之,模型越简单,复杂度J(f)就越小。\(\lambda \ge 0\)是系数,用以权衡经验风险和模型复杂度。
结构风险最小化的策略认为结构风险最小的模型是最优模型。所以求解最优模型就是求解最优化问题:
贝叶斯估计中的最大后验概率估计就是结构风险最小化的一个例子。当模型是条件概率分布、损失函数是对数损失函数、模型复杂度由模型的先验概率表示时,结构风险最小化就等价于最大后验概率估计。
算法
算法是指学习模型的具体计算方法。统计学习基于训练数据集,根据学习策略,从假设空间中选择最优模,最后考虑用什么样的计算方法来求解最优模型。这时统计学习问题归结为最优化问题,统计学习的算法成国求解最优化问题的算法。
模型评估与模型选择
模型评估
统计学习的目的是使学到的模型不仅对已知数据而且对未知数据都能有很好的预测能力。不同的学习方法会给出不同的模型。当损失函数给定时,基于缺失函数的模型的训练误差和模型的测试误差就自然成为学习方法评估的标准。注意,统计学习方法具体采用的损失函数未必是评估时使用的损失函数。
假设学习到的模型是\(Y=\hat f(X)\)
训练误差是模型\(Y=f^{\wedge}(X)\)关于训练数据集的平均损失:
其中N是训练样本容量。
测试误差是模型\(Y=\hat f(X)\)关于测试数据集的平均损失:
其中\(N^{'}\)是测试样本容量。
训练误差的大小,对判断给定的问题是不是一个容易学习的问题是有意义的,但本质上不重要。测试误差反映了学习方法对于未知的测试数据集的预测能力,是学习中的重要概念。显然,给定两种学习方法,测试误差小的方法具有更好的预测能力,是更有效的方法。通常学习方法对未知数据折预测能力称为泛化能力。
《统计学习方法》李航