理解偏差和方差(Bias-Variance)的Tradeoff

本文作者:合肥工业大学 电商所 钱洋
内容可能有不到之处,欢迎交流

未经本人允许禁止转载

简介

当在讨论预测模型时,预测的误差可以分解成两个子部分,即由偏差(Bias)引起的误差和由方差引起的误差。那么,模型相当于是在最小化偏差和方差之间权衡。理解Bias-Variance Tradeoff将有助于建模,进而避免过拟合和欠拟合。

偏差(Bias)与方差(Variance)的概念

偏差指的是模型预测值的期望与真实值之间的差距。偏差越大,预测的值越偏离真实值。

  • 引起的原因:没有充分利用训练数据,模型过于简单(欠拟合)。

方差:给定数据点的情况下,模型预测的可变性,可以理解成模型预测的范围。

  • 高方差模型对训练数据的重视程度过高,但对测试数据集表示很差。

通过,下图可以很容易理解偏差和方差。
理解偏差和方差(Bias-Variance)的Tradeoff

理解偏差和方差(Bias-Variance)的Tradeoff

过拟合和欠拟合

过拟合:即在训练集上表现良好,但在测试集上表现很差。
欠拟合:在训练集上和测试集上表现都很差。

  • 原因:模型过于复杂容易引起过拟合(参数过多);模型过于简单容易引起欠拟合(模型参数过少)。

下面两个图很好的展示了过拟合和欠拟合:
理解偏差和方差(Bias-Variance)的Tradeoff
理解偏差和方差(Bias-Variance)的Tradeoff
例如,在于训练集,采用递归算法生成决策树时,直到不能向下计算为止。如果数据量过大或者决策条件过多,则生成的决策树就会过于复杂,并且容易产生过拟合。因此,需要对决策树进行剪枝(预剪枝或后剪枝)。
理解偏差和方差(Bias-Variance)的Tradeoff

Bias-Variance Decomposition

假设需要预测的值YY,可以表示为:
Y=f(x)+eY=f(x) + e
其中,f(x)f(x)为true function。
我们假设f^(x)\hat{f}\left ( x \right )为通过训练集要训练的模型,则在数据点xx处的误差可以表示为:
理解偏差和方差(Bias-Variance)的Tradeoff
将该误差可以进一步分解为:
理解偏差和方差(Bias-Variance)的Tradeoff
其中,第一项为偏差的平方,第二项为方差,即有:
理解偏差和方差(Bias-Variance)的Tradeoff
下面为完整的推导公式,来源于:https://www.cs.cmu.edu/~wcohen/10-601/bias-variance.pdf

理解偏差和方差(Bias-Variance)的Tradeoff
进一步简化为:
理解偏差和方差(Bias-Variance)的Tradeoff
接着,将真实的function,即ff进行拆开:
理解偏差和方差(Bias-Variance)的Tradeoff
在化简的时候,最后一项中的第一个和第二个期望是相当的,第三个和第四个期望是相当的,所以结果为0。进而有:
理解偏差和方差(Bias-Variance)的Tradeoff

GBDT 和 RF

GBDT,即Gradient Boosting Decision Tree,是Boosting(提升)的一种方法。 GBDT是将弱学习算法提升为强学习算法的一种统计方法,非常常用。其采用的是CART回归树作为其基本回归算法。其算法流程如下图所示:
理解偏差和方差(Bias-Variance)的Tradeoff
RF,即Random Forest Algorithm,随机深林算法,其是bagging方法(并行)的一种,其不仅对数据进行Sampling,也对特征(或属性)进行Sampling。Sampling的方法为bootstrapping。如下为Bagging方法的示意图:
理解偏差和方差(Bias-Variance)的Tradeoff
如下为RF的流程,即对特征和数据都进行采样:
理解偏差和方差(Bias-Variance)的Tradeoff
差异:

  • GBDT,采用弱分类器(高偏差,低方差)。GBDT综合了这些弱分类器,在迭代的过程中,降低了偏差,但保持低方差。
  • 随机深林采用完全的子决策树(低偏差,高方差)。随机深林要求这些子树尽可能无关,从而综合之后能降低方差,同时保持低偏差。

参考

https://towardsdatascience.com/understanding-the-bias-variance-tradeoff-165e6942b229

http://scott.fortmann-roe.com/docs/BiasVariance.html

https://www.cs.cmu.edu/~wcohen/10-601/bias-variance.pdf

https://zhuanlan.zhihu.com/p/57814935

https://medium.com/open-machine-learning-course/open-machine-learning-course-topic-5-ensembles-of-algorithms-and-random-forest-8e05246cbba7