偏差、方差对比
机器学习中,有两个很重要的工具,用于评价算法,并且可以反映出算法是泛化能力。这就是偏差和方法。
1.偏差:期望输出与真实标记的区别
计算上,就是 偏差^2 =(均值-正确值)^2
2.方差:输出对于均值的偏离程度
计算上,就是 方差 = ((输出-均值)^2)的期望
3.噪声:期望值(预测值)与真实值的差距
计算上,就是 噪声^2 = ((预测值-真实值)^2)的期望
偏差是为了衡量学习算法对于我们使用的数据的拟合程度。也就是学习算法期望预测与真实结果的偏离程度,是学习算法本身的拟合能力。
方差是为了衡量算法对于其他数据的拟合程度,也就是同样大小的训练集的变动所导致学习性能的变化,即刻画了数据扰动所造成的影响。
噪声则变大了当前任务上任何学习算法所能达到的期望泛化误差的下界,刻画了学习问题本身的难度问题。
算法的泛化能力是由偏差方差共同决定的
泛化误差可以表示为:方差+偏差的平方+噪声
也就是给定了学习任务,为了取得更好的泛化性能,较小的偏差,能够更好的拟合训练数据,同时有较小的方差,使得数据扰动对于算法是影响变小。
一般情况,二者相互冲突。随着数据的训练,方差一般逐渐会变大,而偏差逐渐减小,算法拟合训练数据,偏差过小时,容易过拟合。如果我们控制数据的训练,不可避免的是偏差较大,数据拟合度差。所以在我们学习器学习时,可以计算偏差和方差的值,从而找到二者相对中间的值,此时,算法的泛化误差相对较小,即有较好的泛化能力。