当前位置:网站首页>机器学习强基计划0-5:为什么学习的本质是泛化能力?
机器学习强基计划0-5:为什么学习的本质是泛化能力?
2022-07-28 10:45:00 【Mr.Winter`】
0 写在前面
机器学习强基计划聚焦深度和广度,加深对机器学习模型的理解与应用。“深”在详细推导算法模型背后的数学原理;“广”在分析多个机器学习模型:决策树、支持向量机、贝叶斯与马尔科夫决策、强化学习等。
详情:机器学习强基计划
在数据集核心知识串讲,构造方法解析中我们提到模型适用于样本空间中新样本的能力称为泛化(generalization),本节我们重点讨论一下机器学习模型中的泛化为什么这么重要。
1 拟合问题
机器学习算法的目标是在已知训练误差和测试误差的前提下,尽可能拟合真实规律以减小泛化误差。在拟合过程中主要有两种现象:
- 欠拟合(underfitting):指学习算法缺乏对采样数据规律的认识导致训练误差和泛化误差都较大的现象,欠拟合容易通过增加学习强度克服;
- 过拟合(overfitting):指学习算法对采样数据规律过度拟合导致将数据集个性化特征当做一般性特征,从而造成训练误差小但泛化误差大的现象。
过拟合是机器学习领域的“一生之敌”,简单来说,过拟合相当于学习器学魔怔了,只会死读书,做课本上的题(我们给定的训练集),到考场上遇到新的题目(测试集或新样本)就懵逼了。这样的学习器有用吗?那自然是没用的,我们需要的是用有限样本预测尽可能多未知样本的学习器。
那过拟合能解决吗?答案是:过拟合无法克服只能缓解
原因是机器学习算法面对的通常是NP类问题——在多项式时间内无法求解的问题。若能够克服过拟合,则通过对训练误差的最小化就可在多项式时间内计算NP类问题的最优解,换句话说机器学习就解决了世纪难题,证明了P=NP,而学界趋向于P≠NP的论断,因此认为过拟合无法克服。

2 泛化能力
过拟合的反面就是泛化——模型适用于样本空间中新样本的能力。
不管是人的学习还是机器的学习,其最高境界是什么?透过现象看本质,把握规律。
举例:物体的运动各式各样,纷繁复杂,我们总结出了牛顿三大定律,这就是我们从物体运动中学到的模型,它拥有非常强大的预测能力,在低速领域任何物体的运动预测都可以利用牛顿定律。
这个就是泛化,牛顿定律很好适应了新样本。在这个例子中,如果没有总结出牛顿定律,而是针对每个物体的每种运动都做一套特异性的模型,那就是过拟合,因为再来一个从未见过的模型,或者从未见过的运动,我们必须为它再重新总结模型。
所以,学习的本质是在总结规律,而不是复制数据,这就是泛化思想的重要所在,没有泛化性的指导,任凭模型过拟合,将导致无数学术垃圾的产生。
3 偏差-方差窘境
衡量泛化性能的指标称为泛化误差,泛化误差可视为偏差、方差和噪声的组合,证明如下。
对一个给定训练集 X X X会产生一个模型 f X f_X fX,而机器学习模型需要多次使用相同规模的不同训练集进行训练,并取平均性能:
f ˉ ( x ) = E X [ f X ( x ) ] \bar{f}\left( \boldsymbol{x} \right) =\mathbb{E} _X\left[ f_X\left( \boldsymbol{x} \right) \right] fˉ(x)=EX[fX(x)]
由于泛化误差无法直接求取,通常将测试误差近似视为泛化误差(这里采用均方误差):
e r r g = E X [ ( f X ( x ) − y X ) 2 ] err_g=\mathbb{E} _X\left[ \left( f_X\left( \boldsymbol{x} \right) -y_X \right) ^2 \right] errg=EX[(fX(x)−yX)2]
其中 y X y_X yX是测试样本 x x x在测试集中的标签。进一步:
e r r g = E X [ ( f X ( x ) − f ˉ ( x ) + f ˉ ( x ) − y X ) 2 ] = E X [ ( f X ( x ) − f ˉ ( x ) ) 2 ] + E X [ ( f ˉ ( x ) − y X ) 2 ] + 2 E X [ ( f ˉ ( x ) − y X ) ( f X ( x ) − f ˉ ( x ) ) ] \begin{aligned} err_g=\mathbb{E} _X\left[ \left( f_X\left( \boldsymbol{x} \right) -\bar{f}\left( \boldsymbol{x} \right) +\bar{f}\left( \boldsymbol{x} \right) -y_X \right) ^2 \right] \\ =\mathbb{E} _X\left[ \left( f_X\left( \boldsymbol{x} \right) -\bar{f}\left( \boldsymbol{x} \right) \right) ^2 \right] +\mathbb{E} _X\left[ \left( \bar{f}\left( \boldsymbol{x} \right) -y_X \right) ^2 \right] +2\mathbb{E} _X\left[ \left( \bar{f}\left( \boldsymbol{x} \right) -y_X \right) \left( f_X\left( \boldsymbol{x} \right) -\bar{f}\left( \boldsymbol{x} \right) \right) \right] \end{aligned} errg=EX[(fX(x)−fˉ(x)+fˉ(x)−yX)2]=EX[(fX(x)−fˉ(x))2]+EX[(fˉ(x)−yX)2]+2EX[(fˉ(x)−yX)(fX(x)−fˉ(x))]
其中交叉项
E X [ ( f ˉ ( x ) − y X ) ( f X ( x ) − f ˉ ( x ) ) ] = E X [ f ˉ ( x ) f X ( x ) − f ˉ 2 ( x ) − f X ( x ) y X + f ˉ ( x ) y X ] = f ˉ ( x ) E X [ f X ( x ) ] − f ˉ 2 ( x ) − E X [ f X ( x ) y X ] + f ˉ ( x ) E X [ y X ] = 独立于训练模型 f 测试样本标签 y X f ˉ 2 ( x ) − f ˉ 2 ( x ) − E X [ f X ( x ) ] E X [ y X ] + f ˉ ( x ) E X [ y X ] = 0 \begin{aligned} \mathbb{E} _X\left[ \left( \bar{f}\left( \boldsymbol{x} \right) -y_X \right) \left( f_X\left( \boldsymbol{x} \right) -\bar{f}\left( \boldsymbol{x} \right) \right) \right] =\mathbb{E} _X\left[ \bar{f}\left( \boldsymbol{x} \right) f_X\left( \boldsymbol{x} \right) -\bar{f}^2\left( \boldsymbol{x} \right) -f_X\left( \boldsymbol{x} \right) y_X+\bar{f}\left( \boldsymbol{x} \right) y_X \right] \\=\bar{f}\left( \boldsymbol{x} \right) \mathbb{E} _X\left[ f_X\left( \boldsymbol{x} \right) \right] -\bar{f}^2\left( \boldsymbol{x} \right) -\mathbb{E} _X\left[ f_X\left( \boldsymbol{x} \right) y_X \right] +\bar{f}\left( \boldsymbol{x} \right) \mathbb{E} _X\left[ y_X \right] \\{\xlongequal[\text{独立于训练模型}f]{\text{测试样本标签}y_X}}\bar{f}^2\left( \boldsymbol{x} \right) -\bar{f}^2\left( \boldsymbol{x} \right) -\mathbb{E} _X\left[ f_X\left( \boldsymbol{x} \right) \right] \mathbb{E} _X\left[ y_X \right] +\bar{f}\left( \boldsymbol{x} \right) \mathbb{E} _X\left[ y_X \right] \\=0 \end{aligned} EX[(fˉ(x)−yX)(fX(x)−fˉ(x))]=EX[fˉ(x)fX(x)−fˉ2(x)−fX(x)yX+fˉ(x)yX]=fˉ(x)EX[fX(x)]−fˉ2(x)−EX[fX(x)yX]+fˉ(x)EX[yX]测试样本标签yX独立于训练模型ffˉ2(x)−fˉ2(x)−EX[fX(x)]EX[yX]+fˉ(x)EX[yX]=0
引入测试样本的真实标记 y y y,从而
e r r g = E X [ ( f X ( x ) − f ˉ ( x ) ) 2 ] + E X [ ( f ˉ ( x ) − y + y − y X ) 2 ] = E X [ ( f X ( x ) − f ˉ ( x ) ) 2 ] + E X [ ( f ˉ ( x ) − y ) 2 ] + E X [ ( y − y X ) 2 ] + 2 E X [ ( f ˉ ( x ) − y ) ( y − y X ) ] err_g=\mathbb{E} _X\left[ \left( f_X\left( \boldsymbol{x} \right) -\bar{f}\left( \boldsymbol{x} \right) \right) ^2 \right] +\mathbb{E} _X\left[ \left( \bar{f}\left( \boldsymbol{x} \right) -y+y-y_X \right) ^2 \right] \\=\mathbb{E} _X\left[ \left( f_X\left( \boldsymbol{x} \right) -\bar{f}\left( \boldsymbol{x} \right) \right) ^2 \right] +\mathbb{E} _X\left[ \left( \bar{f}\left( \boldsymbol{x} \right) -y \right) ^2 \right] +\mathbb{E} _X\left[ \left( y-y_X \right) ^2 \right] +2\mathbb{E} _X\left[ \left( \bar{f}\left( \boldsymbol{x} \right) -y \right) \left( y-y_X \right) \right] errg=EX[(fX(x)−fˉ(x))2]+EX[(fˉ(x)−y+y−yX)2]=EX[(fX(x)−fˉ(x))2]+EX[(fˉ(x)−y)2]+EX[(y−yX)2]+2EX[(fˉ(x)−y)(y−yX)]
其中交叉项
E X [ ( f ˉ ( x ) − y ) ( y − y X ) ] [ = 独立于训练模型 f 测试样本标签 y X E X [ f ˉ ( x ) − y ] E X [ y − y X ] = 假设噪声期望为 0 0 \mathbb{E} _X\left[ \left( \bar{f}\left( \boldsymbol{x} \right) -y \right) \left( y-y_X \right) \right] {[ \xlongequal[\text{独立于训练模型}f]{\text{测试样本标签}y_X}}\mathbb{E} _X\left[ \bar{f}\left( \boldsymbol{x} \right) -y \right] \mathbb{E} _X\left[ y-y_X \right] \\{ \xlongequal[]{\text{假设噪声期望为}0}}0 EX[(fˉ(x)−y)(y−yX)][测试样本标签yX独立于训练模型fEX[fˉ(x)−y]EX[y−yX]假设噪声期望为00
记模型在不同训练集下的方差 v a r ( x ) = E X [ ( f X ( x ) − f ˉ ( x ) ) 2 ] var\left( \boldsymbol{x} \right) =\mathbb{E} _X\left[ \left( f_X\left( \boldsymbol{x} \right) -\bar{f}\left( \boldsymbol{x} \right) \right) ^2 \right] var(x)=EX[(fX(x)−fˉ(x))2]、模型偏差期望 b i a s 2 ( x ) = E X [ ( f ˉ ( x ) − y ) 2 ] bias^2\left( \boldsymbol{x} \right) =\mathbb{E} _X\left[ \left( \bar{f}\left( \boldsymbol{x} \right) -y \right) ^2 \right] bias2(x)=EX[(fˉ(x)−y)2]、数据集噪声期望为 ε 2 = E X [ ( y − y X ) 2 ] \varepsilon ^2=\mathbb{E} _X\left[ \left( y-y_X \right) ^2 \right] ε2=EX[(y−yX)2]
e r r g = v a r ( x ) + b i a s 2 ( x ) + ε 2 { err_g=var\left( \boldsymbol{x} \right) +bias^2\left( \boldsymbol{x} \right) +\varepsilon ^2} errg=var(x)+bias2(x)+ε2

直观地,偏差和方差是一对矛盾的关系,称为偏差-方差窘境,我们要找的最优模型就是两个指标的折中。
边栏推荐
- platform驱动平台下,关于probe函数中,形参dev的“dev->dev.of_node;”的理解
- 几个数据库的相关概念
- Array related knowledge points
- 2021-03-24
- keil和IAR中lib库文件的生成和使用
- Related concepts of several databases
- Table data processing software, what else besides excel?
- The blogs of excellent programmers at home and abroad are all here, please check it
- 理解Oracle的几个概念
- Here is a super practical excel shortcut set (common + summary of eight categories)
猜你喜欢

低代码十问:一文讲透关于低代码的一切!

Blue Bridge Cup embedded Hal library ADC

Reading these six books makes learning MySQL easier

PHP发送移动MAS短信乱码的解决方法

读懂这6本书,学习MySQL更轻松

Installation points and precautions of split angle probe

Software designers ask 20 questions before the exam, pay attention!!

Blue Bridge Cup embedded Hal library USART_ RX

表格数据处理软件,除了Excel还有什么?

Configuring raspberry pie, process and problems encountered
随机推荐
Apb2 and apb1 in stm32
keil和IAR中lib库文件的生成和使用
蓝桥杯嵌入式-HAL库-ADC
低代码(aPaas)为什么最近又火了?
Learn how to do e-commerce data analysis (with operation analysis index framework)
Install GMP
21. Merge two ordered linked lists
Table data processing software, what else besides excel?
19. Delete the penultimate node of the linked list
leetcode:1300. 转变数组后最接近目标值的数组和【二分】
c语言实现float型数据转成BCD数据
一文学会如何做电商数据分析(附运营分析指标框架)
Build a quick development ide: visualsvn + sublime + Visual Studio 2013 + quickeasyftpserver
Blue Bridge Cup embedded Hal library USART_ TX
盘点:令人心动的数据可视化图表
I use the applet container to improve the efficiency of mobile R & D by 5 times!
Zero code | easily realize data warehouse modeling and build Bi Kanban
Installation points and precautions of split angle probe
Purchase, sale and inventory software suitable for small and medium-sized enterprises to solve five major problems
哈希表的相关知识点