学习算法不仅需要通过实验来评估其泛化性能,人们还希望能够理解它为何具备这种性能。“偏向-方差权衡”是解释学习算法泛化能力的重要工具。
首先,我们需要了解一些关键术语:
在训练集上的误差被称为训练误差,而在新样本上的误差则称为泛化误差。泛化误差的定义如下:
偏向指的是期望输出与真实标记之间的差异,它衡量了学习算法的期望预测与真实结果之间的偏离程度,反映了算法本身的拟合能力。偏向的计算公式如下:
方差指的是不同训练集大小变化所导致的学习性能的波动,它描述了数据扰动造成的影响。方差的计算公式如下:
噪音是指在特定任务上任何学习算法所能达到的期望泛化误差的下限,即反映了学习任务本身固有的难度。噪音的计算公式如下:
期望预测的计算公式如下:
许多人对期望和均值这两个概念可能会感到困惑,认为它们是同一概念。实际上,它们并不相同。这里进行简要说明:
均值是对观测到的数据样本的统计描述,而期望则是针对随机变量的理论值,属于概率论范畴。
在概率论中,数学期望是随机变量每种可能结果的概率与其相应结果的乘积之和,是基本的数学特性之一。
例如,某班级10名学生的身高分别为:172, 173, 172, 173, 170, 175, 174, 172, 170, 172。其中4人身高为172厘米,2人为170厘米,2人为173厘米,1人为174厘米,1人为175厘米。相应的概率分别为:4/10,2/10,2/10,1/10,1/10。
计算均值:(4×172 + 2×170 + 2×173 + 1×174 + 1×175) / 10 = 172.3。计算期望:4/10×172 + 2/10×170 + 2/10×173 + 1/10×174 + 1/10×175 = 172.3。
尽管数值上相同,但两者的含义不同。概率是频率随样本数量趋近无穷时的极限,而期望是平均值随样本数量趋近无穷时的极限。均值是样本空间内所有数据的平均值。
大数定律表明,随着重复次数接近无穷大,数值的算术平均值几乎一定会收敛到期望值。
通过简单的多项式展开和合并,我们可以将算法的泛化误差分解为多个部分。具体推导过程如下:
第四排红色部分的第一行,由于期望预测是:
所以两者相减后为零,从而该项为零。倒数第二行假设噪音为零,即认为真实标记和数据集中标记相等,因此该项也为零。因此,泛化误差可以分解为偏向、方差和噪音之和。
泛化能力由学习算法的能力、数据的充足性和任务本身的难度共同决定。在给定学习任务的情况下,为了获得较好的泛化性能,偏向和方差应尽量小。这既保证了算法能够充分拟合数据,又减少了数据扰动带来的影响。若偏向过大,可能导致欠拟合;若方差过大,则可能导致过拟合。
关于偏向与方差的大小及其导致的过拟合和欠拟合现象,可以参考前一章节的内容。
泛化误差与偏向、方差之间的关系可以用图形表示:
参考文献:
1.《机器学习》,周志华著,清华大学出版社