统计学习模型理论(一) 偏差(bias)和方差(variance)

我们利用机器学习模型对测试数据或生产数据做预测,误差(也就是泛化误差)是无法避免的,而偏差和方差就是分析误差的一种有效的工具,另外,理解它们对于模型调参也起着指导性的作用。

在介绍机器学习模型的偏差和方差之前,我们首先要明确统计学上方差的意义。在统计学中,设有随机变量X,方差定义为:

                                                                          Var(X) = E[(X - E[X])^2]

也即衡量了随机变量X偏离其期望的程度。

偏差与方差分解

为了方便分析,我们把线性回归的误差分解为偏差与方差形式。按照线性回归的假设有Y = f(X) + ε,X为样本特征向量,Y观测值且对于ε我们有E(ε) = 0和Var(\varepsilon) = \sigma_\varepsilon^2。从训练数据中我们可以获取预测模型\hat{f}(X)。则对于X = x_0,预测的平方误差可以表达为:

                                             

从这里我们可以看出,测试误差 = 不可降误差 + 偏差平方 + 方差,其中不可降误差是无法消除的,偏差描述了模型预测均值与实际值差距有多大,而方差描述了模型预测值自身的稳定性。为了便于直观理解,我们利用打靶来类比偏差和方差不可降误差(这里我们暂不考虑不可降误差):Var = E[(\hat{f}(x_0) - E\hat{f}(x_0))^2]

                                                      

假设打靶者就是预测模型,百发百中的神枪手就是我们的真实模型,而点数是预测结果;神枪手枪枪都可以打得到红心,无一例外,所以红心是实际值,其它打靶者的点数就是模型预测值。偏差描述了模型预测均值与实际值差距有多大,可以理解为打靶者点数的质心与红点的距离,所以我们看到偏差低的时候,点数的质心总是在红心附近,反之则离红心较远;方差描述了模型预测值自身的稳定性,可以理解为打靶者点数与其自身质心的偏离程度,也就是点数是否发散。明显地,方差小的时候,点数非常集中,反之则发散。

分析

(1)什么会引起偏差或者方差较高

1. 模型复杂度

对于比较复杂的预测模型,其对输入变量x是很敏感的(参考多项式函数,高次模型实际上对于x的变化非常敏感),按照方差的解释(模型预测值自身的稳定性),这时方差会比较大。当然这不是一定的,如果复杂模型恰巧在X的分布密集的区域对输入不是那么敏感,方差一样会很低这里纯属个人见解)。对于增加模型复杂度,模型偏差会降低,这一点直觉上还不是很理解,以后查到相关资料的时候会补上。

2. 数据量的大小

学过数值分析的同学应该还记得,拟合函数的次数越高,我们需要的数据越多;或者换个说法,如果数据比较多,即使是复杂的预测模型,我们也可以得到一个比较确定的结果,且遇到类似的数据时,预测结果误差会比较小。反之,数据量比较小且模型比较复杂时,偏差和方差都可能很大。

(2)高偏差和高方差在现实中的表现形式

首先,无论偏差较高或者偏差较高,测试误差都会很大。

如果方差较高,模型对于测试数据比较敏感。当我们更换不同的测试数据时,误差的变化抖动应该是很大的,也就是时好时坏。偏差较高时,更换不同测试数据,误差一直都会很高。当然,如果方差较高,往往模型的复杂度较高,所以模型对于训练数据可能也是很敏感的,相同的测试数据,不同的训练数据,测试表现可能表现差异很大。

另外,当方差比较大时,模型对于不同数据的测试结果差距较大,因此训练数据误差和测试数据误差往往有比较大的差距。这种情况下,如果训练误差比较小,我们称其为过拟合

参考文献:

[1] The Elements of Statistical Learning    2nd Edition

[2] Understanding the Bias-Variance Tradeoff

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值