Bias与Variance的理解

一、概念介绍

    Error=(Bias)^2 + Variance+Noise

Error(误差):整个模型的准确度,即模型预测结果与实际结果之间的差距

Bias(偏差):度量了估计期望(模型对数据集预测结果的平均值与实际值之间的差距)

Variance(方差):反映的是模型每一次输出结果与模型输出期望之间的误差,即模型的稳定性。(模型预测的结果与与模型对样本集预测的平均值之间的差距)

举一个例子,一次打靶实验,目标是为了打到10环,但是实际上只打到了7环,那么这里面的Error就是3。具体分析打到7环的原因,可能有两方面:

一、是瞄准出了问题(即模型中的bias,精确度不足),比如实际上射击瞄准的是9环而不是10环;在上面一次射击实验中,Bias就是1,反应的是模型期望与真实目标的差距

二、是枪本身的稳定性有问题(即模型中的variance,稳定性不足),虽然瞄准的是9环,但是只打到了7环。那么,而在这次试验中,由于Variance所带来的误差就是2,即虽然瞄准的是9环,但由于本身模型缺乏稳定性,造成了实际结果与模型期望之间的差距。

二、推导过程

这里采用平方误差函数来计算模型的误差,依据该误差选择模型。

       

所以误差均值公式如下:

     

此处我们p(x,t)表示样本与参数t的联合分布概率。我们的目标是选择一个模型y(x)使得该模型的误差最小化,即E[L]最小。可以对E[L]求导,并让导数为0可计算得到目标模型。具体如下:

将平方误差项按下面方式进行改写:

那么我们得到的误差期望可以写成以下形式:

h(x)=Et[t|x] 即是我们希望得到的最终模型。将h(x)带入上式可得误差期望值(即我们说的Error):

        

对于这项可以改成如下形式:

Bias与Variance的理解_第1张图片

该项的期望值为:

Bias与Variance的理解_第2张图片

表示在数据集D中模型y(x)对所有数据预测结果的一个平均值,h(x)即是上面所求的目标模型,y(x)是指当前数据集上得到的模型(实际模型)。

所以 Error=(Bias)^2 + Variance+Noise

Bias与Variance的理解_第3张图片

三、图解关系  

在误差计算公式中经常加入正则项来控制模型复杂度,λ是控制复杂度系数。 

 

(1)λ 越大,更加注重模型复杂度(目的是E最小,r越大要使E变小的唯一方式就是||w||变小),λ趋于无穷是模型是一条直线,出现欠拟合(underfit)。如图下图第一张图片,实际模型为 y(x)=w0; 期望模型为h(x) 为图中黑色线部分。

bias为(y(x)-h(x))^2,所以bias随着λ 的增大而增大

variance 是 y(x)与预测均值之间的差距,因为此时y(x)=w0, E[y(x,D)]=w0,所以为0。所以variance随λ 增大变小。

Bias与Variance的理解_第4张图片

(2)λ 减小时注重模型拟合程度,所以w越大,模型越复杂越容易过度拟合(overfit

与(1)类似的计算,此时bias值会减小,所以bias随着λ 的减小而减小。variance 会随vλ 的减小而增大。

最终这三者可以通过以下一张图片进行解释:

Bias与Variance的理解_第5张图片

测试数据的准确率与整体误差之间成正比关系,所以会出现上图测试误差与整体误差曲线极其相似。

四、总结

在一个实际系统中,Bias与Variance往往是不能兼得的。如果要降低模型的Bias,就一定程度上会提高模型的Variance,反之亦然。造成这种现象的根本原因是,我们总是希望试图用有限训练样本去估计无限的真实数据。当我们更加相信这些数据的真实性,而忽视对模型的先验知识,就会尽量保证模型在训练样本上的准确度,这样可以减少模型的Bias。但是,这样学习到的模型,很可能会失去一定的泛化能力,从而造成过拟合,降低模型在真实数据上的表现,增加模型的不确定性。相反,如果更加相信我们对于模型的先验知识,在学习模型的过程中对模型增加更多的限制,就可以降低模型的variance,提高模型的稳定性,但也会使模型的Bias增大。Bias与Variance两者之间的trade-off是机器学习的基本主题之一,机会可以在各种机器模型中发现它的影子。

五、参考文献

[1] 《Pettern Recognition and Machine Learning》

[2]   http://www.zhihu.com/question/27068705/answer/35151681 (知乎)

[3]   http://blog.csdn.net/abcjennifer/article/details/7797502

你可能感兴趣的:(机器学习)