机器学习方差和偏差权衡(Understanding the Bias-Variance Tradeoff)

当我们讨论预测模型时,预测误差可以分解成我们关心的两个主要的子部分:由于“偏差”导致的误差和由于“偏差”导致的误差。 在模型将偏差和方差最小化的能力之间进行权衡。 了解这两种类型的错误可以帮助我们诊断模型结果,避免过度或不合适的错误。
1. Bias and Variance
理解不同的误差来源如何导致偏差和方差有助于我们改进数据拟合过程,从而产生更准确的模型。我们用三种方式来定义偏差和方差:概念上,图形上和数学上。

概念的定义
由于偏差(bias)引起的误差:由偏差引起的误差被认为是我们模型的预期(或平均)预测和我们试图预测的正确值之间的差异。当然,你只有一个模型,所以谈论预期或平均预测值可能有点奇怪。但是,想象一下,您可以不止一次重复整个模型构建过程:每次收集新数据并运行新分析以创建新模型。由于基础数据集的随机性,最终的模型将会有一系列的预测。偏差一般衡量这些模型的预测是否来自正确的值。
由于方差(variance)导致的误差:方差导致的误差被视为给定数据点的模型预测的可变性。再次想象,您可以多次重复整个模型构建过程。方差是对于给定点的预测在模型的不同实现之间有多少变化。

图形定义
我们可以使用牛眼图创建偏差(bias)和方差(variance)的图形化可视化。想象一下,目标的中心是一个完美预测正确值的模型。随着我们离开牛眼,我们的预测越来越糟。想象一下,我们可以重复我们的整个模型构建过程,以获得目标上的一些单独的点击。考虑到我们收集的训练数据的机会可变性,每个命中代表了我们模型的个体实现。有时候我们会得到一个很好的训练数据分布,所以我们预测的很好,而且我们接近了靶心,而有时候我们的训练数据可能会充满异常值或者非标准值,从而导致较差的预测。这些不同的实现导致目标上的命中分散。

我们可以绘制代表高,低偏差和方差组合的四种不同情况。
机器学习方差和偏差权衡(Understanding the Bias-Variance Tradeoff)

数学定义
如果我们把我们试图预测的变量表示为Y,我们的协变量表示为X,那么我们可以假设存在一个关于另一个的关系,例如Y= f(X)+ε,误差项ε正态分布的平均值为零,如ε〜ε(0,σε)。

我们可以使用线性回归或其他建模技术来估计f(X)的模型f (X)_hat。在这种情况下,点x处的预期平方预测误差为:
Err(x)= E [(Y-f_hat(x))^2]
这个错误然后可以被分解成偏差和方差分量:

Err(x)=(E [f(x)_hat] - f(x))^2 + E [(f_hat(x)-E [f_hat(x)])^2] +σ^2e

Err(x)= Bias^2 +vanriance+Irreducible Error

第三个术语,Irreducible Error是真实关系中的噪音项,不能从根本上减少任何模型。给定真正的模型和无限的数据来校准它,我们应该能够减少偏差和方差项为0。然而,在一个模型不完善和有限的数据的世界里,在最小化偏差和最小化方差。

  • Error反映的是整个模型的准确度
  • Bias反映的是模型在样本上的输出与真实值之间的误差,即模型本身的精准度
  • Variance反映的是模型每一次输出结果与模型输出期望之间的误差,即模型的稳定性。

参考文献:http://scott.fortmann-roe.com/docs/BiasVariance.html