《机器学习》 2.5 偏差与方差 - 周志华
- 偏差与方差分别是用于衡量一个模型泛化误差的两个方面
- 模型的偏差,指的是模型预测的期望值与真实值之间的差;
- 模型的方差,指的是模型预测的期望值与预测值之间的差平方和; - 在监督学习中,模型的泛化误差可分解为偏差、方差与噪声之和。
- 偏差用于描述模型的拟合能力;方差用于描述模型的稳定性。
1 原因
-
偏差通常是由于我们对学习算法做了错误的假设,或者模型的复杂度不够;
- 比如真实模型是一个二次函数,而我们假设模型为一次函数,这就会导致偏差的增大(欠拟合);
- 由偏差引起的误差通常在训练误差上就能体现,或者说训练误差主要是由偏差造成的
-
方差通常是由于模型的复杂度相对于训练集过高导致的;
- 比如真实模型是一个简单的二次函数,而我们假设模型是一个高次函数,这就会导致方差的增大(过拟合);
- 由方差引起的误差通常体现在测试误差相对训练误差的增量上。
2 深度学习
- 神经网络的拟合能力非常强,因此它的训练误差(偏差)通常较小;
- 但是过强的拟合能力会导致较大的方差,使模型的测试误差(泛化误差)增大;
- 因此深度学习的核心工作之一就是研究如何降低模型的泛化误差,这类方法统称为正则化方法。
3 偏差/方差 与 Boosting/Bagging
- 简单来说,Boosting 能提升弱分类器性能的原因是降低了偏差;Bagging 则是降低了方差;
- Boosting 方法:
- Boosting 的基本思路就是在不断减小模型的训练误差(拟合残差或者加大错类的权重),加强模型的学习能力,从而减小偏差;
- 但 Boosting 不会显著降低方差,因为其训练过程中各基学习器是强相关的,缺少独立性。
- Bagging 方法:
- 对 n 个独立不相关的模型预测结果取平均,方差是原来的 1/n;
- 假设所有基分类器出错的概率是独立的,超过半数基分类器出错的概率会随着基分类器的数量增加而下降。
- 泛化误差、偏差、方差、过拟合、欠拟合、模型复杂度(模型容量)的关系图:
4 计算公式
-
记在训练集 D 上学得的模型为
f ( x ; D ) f(x; D) f(x;D)
模型的期望预测为
f ^ ( x ) = E D [ f ( x ; D ) ] \hat{f}(\boldsymbol{x})=\mathbb{E}_D[f(\boldsymbol{x};D)] f^(x)=ED[f(x;D)] -
偏差(Bias)
b i a s 2 ( x ) = ( f ^ ( x ) − y ) 2 bias^2(\boldsymbol{x})=(\hat{f}(\boldsymbol{x})-y)^2 bias2(x)=(f^(x)−y)2
偏差度量了学习算法的期望预测与真实结果的偏离程度,即刻画了学习算法本身的拟合能力; -
噪声则表达了在当前任务上任何学习算法所能达到的期望泛化误差的下界,即刻画了学习问题本身的难度。
-
“偏差-方差分解”表明模型的泛化能力是由算法的能力、数据的充分性、任务本身的难度共同决定的。
5 偏差与方差的权衡(过拟合与模型复杂度的权衡)
- 给定学习任务,
- 当训练不足时,模型的拟合能力不够(数据的扰动不足以使模型产生显著的变化),此时偏差主导模型的泛化误差;
- 随着训练的进行,模型的拟合能力增强(模型能够学习数据发生的扰动),此时方差逐渐主导模型的泛化误差;
- 当训练充足后,模型的拟合能力过强(数据的轻微扰动都会导致模型产生显著的变化),此时即发生过拟合(训练数据自身的、非全局的特征也被模型学习了)
- 偏差和方差的关系和模型容量(模型复杂度)、欠拟合和过拟合的概念紧密相联
-
当模型的容量增大(x 轴)时, 偏差(用点表示)随之减小,而方差(虚线)随之增大
-
沿着 x轴存在最佳容量,小于最佳容量会呈现欠拟合,大于最佳容量会导致过拟
合。
-
Reference
Understanding the Bias-Variance Tradeoff