1.2 偏差与方差

从数学的角度来看,任何模型出现的误差可以分为三个部分。以下是这三个部分:

$$ Err(x)=(E(\hat f(x))-f(x))^2+E[\hat f(x)-E[\hat f(x)]]^2+ \sigma_e^2=Bias^2+Variance+noise $$

  • 在机器学习算法中,偏差是由先验假设的不合理带来的模型误差,高偏差会导致欠拟合: 所谓欠拟合是指对特征和标注之间的因果关系学习不到位,导致模型本身没有较好的学到历史经验的现象;
  • 方差表征的是模型误差对样本发生一定变化时的敏感度,高方差会导致过拟合:模型对训练样本中的随机噪声也做了拟合学习,导致在未知样本上应用时出现效果较差的现象;方差通常用来衡量样本分散程度的。如果样本全部相等,那么方差为0。方差越小,表示样本越集中,反之则样本越分散。 方差的计算公式:$$ var(x) = \dfrac {\sum_{i=1}^n (x_i - \bar x)^2} {n-1} $$
  • 机器学习模型的核心之一在于其推广能力,即在未知样本上的表现。

偏差和方差就像飞镖射到靶子上。每个飞镖就是从不同数据集得出的预测结果。高偏差、低误差的模型就是把飞镖扔到了离靶心很远的地方,但是都集中在一个位置。而高偏差、高误差的模型就是把飞镖扔到了靶子上,但是飞镖离靶心也很远,而且彼此间很分散。低偏差、高误差的模型就是把飞镖扔到了离靶心很近的地方,但是聚类效果不好。最后就是低偏差、低误差的模型,把飞镖扔到了离靶心很近的地方,聚类效果也很好。如下图所示:

在理想情况下,模型具有低偏差和低误差,但是二者具有背反特征,即要降低一个指标的时候,另一个指标就会增加。这就是著名的偏差-方差均衡(Bias-Variance Trade-off)。

可以看到,模型学习过程其实就是对偏差和方差的折中过程。

联想到后面的Boosting主要关注降低偏差,因此Boosting能基于泛化性能相当弱的学习器构建出很强的集成,如GBDT;Bagging主要关注降低方差,因此它在不剪枝的决策树、神经网络等学习器上效用更为明显,如RF-随机森林。

results matching ""

    No results matching ""