目录
一、方法
(一)模型:
(二)策略:(最优化问题)
1.损失函数(指标)
2.期望与均值
3.最优化问题
(三)算法
二、误差与泛化能力
1.训练误差与测试误差
2.泛化能力与泛化误差
3.过拟合
一、方法
所有的统计学习(机器学习)的方法都是由:模型、策略和算法构成
其中,非监督学习、强化学习同样有三要素,但此处仅说监督学习
(一)模型:所需要进行学习(训练)的模型类别,也就是确定假设空间
在监督学习中,这一要素即为所需要学习的条件概率分布或决策函数
其中,
假设空间(斜体F)通常是由一个参数向量决定的函数簇
假设空间可能是有限集,但一般有无穷多个模型
所有参数向量取值组成的集合称为参数空间
(二)策略:(最优化问题)学习的过程就是从模型当中选择一个最优模型的过程,也就是解决一个最优化问题
1.损失函数(指标)为了将模型参数选择问题转化为数学中的最优化问题,就需要一个量度作为指标,即为损失函数:
L(Y,f(X))
其中,Y为真实值,对应样本数据的标签
f(X)为预测值,即为模型的输出
常见的损失函数:
对于分类问题:常见有0-1损失函数、对数损失函数(0-1损失上界)
对于回归问题:常见有平方损失函数(均值方差MSE)、绝对值损失函数(绝对值ALF)(绝对值相比均值方差收敛较快,但效果不如均值方差)
2.期望与均值(1)期望损失(风险函数):对于一个损失函数,它在样本空间中的平均意义下的损失,即为损失函数的期望=(定积分),代表着模型的预测和真实规律的误差
这个指标的最小化就是机器学习所追求的目标, 然而我们很难或者说几乎不可能得到所有的样本空间,我们只能够得到样本空间中的一部分样本来训练模型,所以就有了有限样本情况下的经验损失。
(2)经验损失:在样本有限的情况下,对训练数据集中的所有样本的损失函数求均值
度量训练数据的预测值和真值的误差。
综上,期望损失和经验损失就有了下图中的关系:
3.最优化问题最优化问题可以分为经验风险最小化和结构风险最小化
(1)经验风险最小化
对于训练数据集,有了可操作的评价指标经验风险,将问题转化为了最优化问题——经验风险最小化(ERM)
根据经验风险最小化的策略,经验风险最小的模型就是最优的模型
其中一个典型的例子就是极大似然估计(模型:条件概率分布,损失函数:对数损失函数)
当样本容量比较大的时候,经验风险最小化能够有很好的学习效果
但是,当样本容量不够多的时候,经验风险最小化很难有好的学习效果,会产生过拟合的现象。
(2)结构风险最小化(SRM):
为了防止过拟合而提出了结构风险最小化,具体操作方法是加入正则化项。
结构风险最小化表示:
Rsrm(f)=Remp+lamadaJ(f)
J(f)为模型复杂度,lamada是系数,用以权衡经验风险和模型复杂度。
结构风险最小化往往能够对训练数据和未知数据都有很好的预测
例如:最大后验概率估计
(三)算法学习模型的具体计算方法即求解最优化问题的计算方法
如果问题存在显式的解析解,则最优化问题较为简单
但通常解析解并不存在,需要找到最优解
可以利用已有的最优化方法,有时也需要开发独自的最优化方法
二、误差与泛化能力 1.训练误差与测试误差(1)训练误差:学习后的模型关于训练数据集的平均损失
训练误差的大小意义仅仅在于判断一个问题是不是一个容易学习的问题,即训练的难度,本质并不重要。
可以用来判断学习的难易度以及实现训练过程可视化
(2)测试误差:学习后模型关于测试数据集的平均损失
测试误差反映了学习方法对未知的测试数据集的预测能力,是学习中的重要概念
在多种学习方法中,测试误差小的方法具有更好的预测能力,是更有效的方法。
测试误差是泛化误差的估计,在下面会详述。
2.泛化能力与泛化误差(1)泛化能力:学习方法的泛化能力是指由该方法学习到的模型对未知数据的预测能力,是学习方法本质上重要的性质。
(2)泛化误差:一个方法在(所有)新样本或者说对未知数据预测的误差成为泛化误^
Rexp(^f)=Ep[L(Y,^f(X))] (期望)
泛化误差反映了学习方法的泛化能力,也就是学习后模型的期望风险。
泛化误差是泛化能力的量度
(3)泛化误差上界
学习方法的泛化能力往往是通过研究泛化误差的概率上界进行的,简称为泛化误差上界。
具体上,可以通过比较两种方法的泛化误差上界来比较优劣。
性质:
1.样本空间的函数:当样本容量不断增加时,泛化上界趋于0
2.假设空间的函数:假设空间容量越大,模型越难学,泛化误差上界越大
二分类问题的泛化误差上界(统计学习方法定理1.1)【在其他笔记中我会专门给出证明】
(4)泛化误差与测试误差
由于无法得到所有的样本,所以很难得到泛化误差。
但可以得到部分其他样本,用这些样本测试模型得到的是测试误差,因此测试误差、泛化误差就有了类似经验风险和期望风险的关系,即测试误差是泛化误差的估计:
3.过拟合实际上,影响方法的泛化能力的首要因素是过拟合,训练误差不适合作为泛化能力的标准正是因为过拟合的存在。
对于一个问题的学习方法来说,所期望学习到的是样本的普遍规律,然而,要学习样本的普遍规律就需要整个样本空间,和上文所遇到的困难一样,我们无法得到整个样本空间,只能得到一部分样本,所以就有了一个问题:
取到的这一部分样本不仅包含样本空间的普遍规律,还包含了此部分样本的独有规律,我们期望着能够学习到普遍规律,不希望学习到独有规律。然而机器是无法判断独有和普遍规律的,所以如果样本空间比较小,一味的追求训练误差(经验风险最小化),就会导致过拟合,所以训练误差不适合作为泛化能力的标准,更不能估计泛化误差。
过拟合是机器学习面临的关键障碍,各类机器学习算法都必然带有一些针对过拟合的措施;然而,过拟合是无法彻底避免的,只能做到缓解或者说减小其风险。
其中一种缓解过拟合的思路就是控制模型复杂度: