人工智能程序员面试笔试宝典
上QQ阅读APP看书,第一时间看更新

2.5 偏差与方差

偏差度量了学习算法的期望预测与真实结果的偏离程度,即刻画了学习算法本身的拟合能力,方差度量了同样大小的训练集的变动所导致的学习性能的变化,即刻画了数据扰动所造成的影响。偏差与方差可以结合图2-2来理解。

图2-2 偏差与方差

偏差用于描述模型的拟合能力;方差用于描述模型的稳定性。给定学习任务后,当训练不足时,模型的拟合能力不够(数据的扰动不足以使模型产生显著的变化),此时偏差主导模型的泛化误差;随着训练的进行,模型的拟合能力增强(模型能够学习数据发生的扰动),此时方差逐渐主导模型的泛化误差;当训练充足后,模型的拟合能力过强(数据的轻微扰动都会导致模型产生显著的变化),此时即发生过拟合(训练数据自身的、非全局的特征也被模型学习了)。

2.5.1 试推导泛化误差、偏差、方差与噪声之间的关系

为了推导泛化误差、偏差、方差与噪声之间的关系,首先需要做一些定义,如表2-2所示。

表2-2 各种符号的定义

学习器在训练集上的误差被称为“训练误差”或“经验误差”。在新样本上的误差被称为“泛化误差”。对于泛化误差,以回归任务为例,期望泛化误差为:

Err(x)=E[(yD- f(x;D))2]

方差公式:

噪声即为真实标记与数据集中的实际标记间的偏差,公式为:

ε=E[(yD-y)2]

假定噪声期望为0,即E(yD-y)=0

偏差即为期望预测与真实标记的误差称为偏差,偏差平方的公式为:

下面为推导公式:

由此可知泛化误差可分解为偏差、方差和噪声之和。

2.5.2 导致偏差和方差的原因是什么

偏差是由于模型的复杂度不够或者对学习算法做了错误的假设。比如真实模型是一个三次函数,而假设模型为二次函数,这会导致欠拟合,即偏差的增大;所以训练误差主要是由偏差造成的。

而方差通常是由于模型的复杂度过高导致的;比如真实模型是一个简单的二次函数,而假设模型是一个五次函数,这就会导致过拟合,即方差的增大;由方差引起的误差通常体现在测试误差相对训练误差的变化上。