当一个模型确定时,我们需要对其进行诊断,判断这个模型是否存在过拟合或者欠拟合。通过偏差与方差我们可以很快捷的评价当前的模型。


偏差与方差的直观理解

偏差:就是偏离的意思,与“标准”之间的差距。
方差:是离散程度,波动程度的意识。

机器学习中的偏差和方差

图1,2的偏差都比较小(都能在靶心的范围内),但是图1的方差更小(数据集中),而图2则方差更大(数据发散)。
图3,4的偏差都比较大(已经脱离了靶心位置)


从机器学习方面理解:

偏差:反映的是模型的拟合能力
方差:反映的是模型的泛化能力

在机器学习中评价模型通常用代价函数JJ,JtrainJ_{train}表示训练的误差,JvalJ_{val}表示验证时误差,通过JtrainJ_{train}JvalJ_{val}可以得出模型的偏差与方差情况。

高偏差对应着JtrainJ_{train}JvalJ_{val}都大,并且JtrainJ_{train}约等于JvalJ_{val},这意味着欠拟合。
高方差对应着JtrainJ_{train}较小,而JvalJ_{val}远大于JtrainJ_{train},这意味着过拟合。
机器学习中的偏差和方差

当模型属于高偏差(欠拟合)时,不断增大训练的数据规模,模型性能不会有什么改善,因为欠拟合一般是模型比较简单,不能准确描述数据的特征,因此盲目增大数据量是没什么用。
当模型数据高方差(过拟合),不断增大训练数据模型,过拟合误差会逐渐减少,因为过拟合是因为模型复杂,描述数据的特征过于精准,所以增大数据量能减少过拟合。

总结

改进策略:

  1. 高方差:采集更多样本数据
  2. 高方差:减少特征数量,去除非主要特征
  3. 高方差:增加正则化参数
  4. 高偏差:引入更多的相关特征
  5. 高偏差:采用更高阶多项式
  6. 高偏差:减少正则化参数

相关文章: