机器学习与数据挖掘 第八讲:Bias-Variance Tradeoff

偏差与方差是解释学习算法泛化性能的重要工具。

定义

在机器学习利用训练数据集学习模型时,通过最小化损失函数(Loss function)来提高模型性能。但训练数据集error最小并不能保证在测试集或外推时性能最优,则训练数据集的Loss与预测数据集的Loss之间的差异为Generalization error。
Err ⁡ ( X ) = E [ ( y − f ^ ( X ) ) 2 ] = E [ ( f ( X ) + ϵ − f ^ ( X ) ) 2 ] = ( E [ f ^ ( X ) ] − f ( X ) ) 2 + E [ ( f ^ ( X ) − E [ f ^ ( X ) ] ) 2 ] + σ ϵ 2 = Bias ⁡ +  Variance  +  Random Error.  \begin{aligned} \operatorname{Err}(X) &=E\left[(y-\hat{f}(X))^{2}\right] \\ &=E\left[(f(X)+\epsilon-\hat{f}(X))^{2}\right] \\ &=(E[\hat{f}(X)]-f(X))^{2}+E\left[(\hat{f}(X)-E[\hat{f}(X)])^{2}\right]+\sigma_{\epsilon}^{2} \\ &=\operatorname{Bias}+\text { Variance }+\text { Random Error. } \end{aligned} Err(X)=E[(yf^(X))2]=E[(f(X)+ϵf^(X))2]=(E[f^(X)]f(X))2+E[(f^(X)E[f^(X)])2]+σϵ2=Bias+ Variance + Random Error. 

Generalization error 可细分为Random error、Bias、Variance。由于随机误差不可消除,偏差和方差从两个方面描述学习到的模型与真实规律之间的差距,其与欠拟合及过拟合紧密相连,主要讨论偏差和方差之间的权衡(Bias-Variance Tradeoff)。

随机误差(Random Error)

随机误差为数据本身噪音所致,一般认为随机误差服从高斯分布,即 ϵ ∼ N ( 0 , σ ϵ ) \epsilon \sim \mathcal{N}\left(0, \sigma_{\epsilon}\right) ϵN(0,σϵ),若 y y y为预测值, X X X为自变量,数据背后真实规律为 f f f,则
y = f ( X ) + ϵ y=f(X)+\epsilon y=f(X)+ϵ
真实规律客观存在,但基于有限的样本和随机误差干扰无法获得,我们的最终目标为学习到更加接近真实规律的模型。

偏差(Bias)

偏差对于固定大小的训练数据集,描述"通过学习得到到所有模型的输出预测结果的期望"与"真实规律"之间的差距,即
Bias ⁡ ( X ) = E [ f ^ ( X ) ] − f ( X ) \operatorname{Bias}(X)=E[\hat{f}(X)]-f(X) Bias(X)=E[f^(X)]f(X)
关于模型拟合程度的衡量,增加模型参数,降低偏差可提高训练集拟合效果,但容易出现过拟合(overfitting)。

方差(Variance)

方差对测试集,描述通过学习拟合出来的结果自身的不稳定性,即 Var ⁡ ( X ) = E [ ( f ^ ( X ) − E [ f ^ ( X ) ] ) 2 ] \operatorname{Var}(X)=E\left[(\hat{f}(X)-E[\hat{f}(X)])^{2}\right] Var(X)=E[(f^(X)E[f^(X)])2]

偏差与方差的权衡

在VC维中,已推得 E o u t &lt; E i n + Ω E_{out}&lt;E_{in}+\Omega Eout<Ein+Ω,其决定了 E o u t E_{out} Eout的边界,可用VC维解读偏差和方差:
E o u t E_{out} Eout分解为两个部分:

  1. 假设空间 H \mathcal{H} H近似 f f f的能力(即 H \mathcal{H} H中与 f f f距离最近的集合 G G G f f f的误差大小–偏差
  2. 在假设空间 H \mathcal{H} H中找到该 G G G的能力 (即 H \mathcal{H} H中找到的 g g g G G G的误差大小–方差)

在实践中,Bias与Variance往往不能兼得的。若要 H \mathcal{H} H更好近似 f f f,则要求 H \mathcal{H} H更复杂,包含更多假设,降低模型的Bias,但相应在更大范围内寻找 G G G,找到的 g g g越可能远离 G G G,就一定程度上会提高模型的Variance。偏差与方差就是为了描述这两种情况且找到一个平衡点,使得 E o u t E_{out} Eout E i n E_{in} Ein足够接近且 E o u t E_{out} Eout 足够小。

模型复杂度的影响

当固定训练样本,改变模型复杂度(模型描述能力),随着模型复杂度的增加,其对训练数据集的描述能力增加(可能发生过拟合),该模型在验证集上偏差减小、方差增大。相反,随模型复杂度降低,其对训练集描述能力降低(可能发生欠拟合),模型在验证集上偏差增大、方差减少。

样本量的影响

在样本量较少时,应选择简单的模型,否则方差可能很大。样本量充分大时,应选择较为复杂的模型,因为大量数据可减少方差,复杂模型可减少偏差。

在试图用有限训练样本去估计无限的真实数据时,这些数据的真实性>模型的先验知识,就会尽量保证模型在训练样本上的准确度,这样可以减少模型的Bias,但学习到的模型很可能会失去一定的泛化能力,从而造成过拟合,降低模型在真实数据上的表现,增加模型的不确定性。相反,对于模型的先验知识更重要时,在学习模型的过程中对模型增加更多的限制,就可以降低模型的variance,提高模型的稳定性,但也会使模型的Bias增大。

学习曲线

当模型简单时,起初 E o u t E_{out} Eout E i n E_{in} Ein都很大,随着 N N N的增加, E o u t E_{out} Eout E i n E_{in} Ein将近。当模型很复杂时, N N N很小时, E i n E_{in} Ein起初可小至0; E o u t E_{out} Eout非常大;随着 N N N的增加, E o u t E_{out} Eout E i n E_{in} Ein靠拢,其靠拢值要小于简单模型,但 E o u t E_{out} Eout E i n E_{in} Ein距离程度要大于简单模型。由于目的为得到小的 E o u t E_{out} Eout,所以大量数据时,应优先选择复杂模型。

VC维与方差偏差比较:

在Bias-Variance图中,蓝色点表示方差,其未随 N N N而改变。原因:偏差是相同大小的不同数据集下拟合效果最好的。虽然可能 更大的数据集能够得到更好的近似,但不同大小非常多的数据集拟合时,它们的数学期望应该是相近的而且接近 f f f,所以在上图中就表现为一条平行于 x 轴的水平线。

Reference

谈谈 Bias-Variance Tradeoff
加州理工学院公开课:机器学习与数据挖掘_偏差与方差权衡(第八课

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值