线性回归中的误差通常有两个来源:

  1. 来自方差Variance的误差
  2. 来自偏置Bias的误差

java计算线性回归误差 线性回归误差项_数据集)情况,分别是:高方差高偏置,高方差低偏置,低方差高偏置,低方差低偏置。

  最理想的情况当然是所有点(无论是训练集还是测试集)正中靶心,此时处于低方差低偏置的情况。

java计算线性回归误差 线性回归误差项_拟合_02


而现实中对数据进行拟合时,经常出现两种情况:

  1. 简单模型,简单的模型更趋于平滑,这意味着样本数据对模型输出的影响较小,也就是说这些投掷点靠拢更密集,更注重趋势而非精度,因此虽然它们之间的方差较小,但距离靶心更远,导致偏置较大。
  2. 复杂模型,复杂模型跳动更大,这意味着投掷点离散程度较大,因此方差较大。但对一些数据能够很好的适配,因此偏置较小。

java计算线性回归误差 线性回归误差项_数据集_03


下面是模型出问题的两种可能的情况:

java计算线性回归误差 线性回归误差项_方差_04


对于大方差模型的两种结局措施:

  1. 增大数据集
  2. 正则化来使拟合的曲线更加平滑

java计算线性回归误差 线性回归误差项_java计算线性回归误差_05


  交叉检验可以衡量一个模型的优劣,其做法是将训练集分成两部分,一部分用于训练,另一部分起测试的作用,用于检验模型的优劣。

java计算线性回归误差 线性回归误差项_方差_06

  n折交叉检验是另一个检验模型的方法,这是将训练集分为java计算线性回归误差 线性回归误差项_java计算线性回归误差_07 部分,其中java计算线性回归误差 线性回归误差项_java计算线性回归误差_08部分作为训练集分别训练模型,剩下一部分作为测试集进行测试。选择模型时,取同一个模型不同训练与测试的误差的平均值,在不同模型间比较平均值来进行模型的选择。

java计算线性回归误差 线性回归误差项_方差_09