一个房价预测的任务,老板说你看看这个模型咋样?
我们先绘制一个坐标轴: Y 轴为房价,X 轴为年份。将过去房价数据绘制为绿色,回归模型绘制为蓝色。
关键问题是,怎么知道这个模型的好坏呢?
图解机器学习之回归模型性能评估指标_数据集
为了评估该模型的效果,一般会有几个指标:

一、平均绝对误差 Mean Absolute Error,MAE

平均绝对误差 MAE,也叫平均绝对离差。
这个指标在计算时,先对真实值与预测值的距离(橙色线段长度)求和,再取平均值。
图解机器学习之回归模型性能评估指标_机器学习_02
用公式表示:
图解机器学习之回归模型性能评估指标_数据集_03
其中,

  • 图解机器学习之回归模型性能评估指标_数据_04:预测值
  • 图解机器学习之回归模型性能评估指标_回归_05:真实值
  • 图解机器学习之回归模型性能评估指标_回归_06:数据量

平均绝对误差可以准确地反映实际预测误差的大小,但是,MAE 有个致命的缺点。
我们现在把左边的 Y 轴缩小 1000 倍,也就是 从 1000 -> 1。
接下来,计算 MAE:

  • 数据集范围大会计算获得较大的 MAE。
  • 数据集范围小会计算获得较小的 MAE。

图解机器学习之回归模型性能评估指标_数据集_07
可以看到,回归模型拟合没有变化,但是MAE 会随着数据的范围有较大的变化,也就说 MAE 指标不能显示回归模型拟合是优还是劣。

二、平均绝对百分误差 Mean Absolute Percentage Error,MAPE

为了解决以上问题,**平均绝对百分误差 **对 MAE 改进后,通过计算真实值与预测的误差百分比避免了数据范围大小的影响:
图解机器学习之回归模型性能评估指标_人工智能_08
该指标可以用于评估回归模型的性能优劣,常用于衡量预测准确性指标,一般 MAPE < 10 认为是较好的模型。
但是,如果真实值有 0,那么 MAPE 无法正确计算。

三、均方误差 MSE

现在对平均绝对误差求平方根,就能得到均方误差Mean Square Error,MSE)。
这个指标在计算时,先对真实值与预测值的距离平方(橙色面积)后求和,再取平均值。
图解机器学习之回归模型性能评估指标_回归_09
公式表示:
图解机器学习之回归模型性能评估指标_人工智能_10

该指标避免了 MAE 的绝对值导致函数不能求导的问题,因此均方误差常用于线性回归的损失函数。
另一方面,均方误差可以通过平方来放大预测偏差较大的值,提高了检测灵敏度。

四、均方根误差 Root-Mean-Square Error,RMSE

均方根误差,也称标准误差,是在均方误差的基础上进行开方运算,常用于衡量观测值与真实值间的偏差。
图解机器学习之回归模型性能评估指标_机器学习_11

以上提到的 MAE、MSE、MAPE,RMSE 都会计算均值,它可以消除样本数量对评价指标的影响,使得评估指标的大小不会太依赖于样本数量,而是更多地反映模型的误差。

五、决定系数图解机器学习之回归模型性能评估指标_人工智能_12

该指标需要了解另外三个指标:

Sum of Squares of the Regression,SSR

计算预测数据与真实数据均值之差的平方和,反映的是模型数据相对真实数据均值的离散程度
图解机器学习之回归模型性能评估指标_机器学习_13

Total Sum of Squares,SST

计算真实数据和其均值之差的平方和,反映的是真实数据相对均值的离散程度

图解机器学习之回归模型性能评估指标_数据_14

Sum of Squares for Error,SSE

真实数据和预测数据之差的平方和
图解机器学习之回归模型性能评估指标_回归_15
细心的小伙伴可能注意到,SST = SSR + SSE
图解机器学习之回归模型性能评估指标_回归_16

决定系数图解机器学习之回归模型性能评估指标_人工智能_17

决定系数图解机器学习之回归模型性能评估指标_人工智能_17通过计算SSR 与 SST的比值,反应因变量 y 的全部变异能通过回归模型被自变量 x 解释的比例。比如,图解机器学习之回归模型性能评估指标_人工智能_17为0.9,则表示回归关系可以解释因变量 90% 的变异。
图解机器学习之回归模型性能评估指标_数据_20

  • 决定系数R2越高,越接近于1,模型的拟合效果就越好
  • 决定系数R2越接近于0,回归直线拟合效果越差。

图解机器学习之回归模型性能评估指标_人工智能_17虽然可以评价回归模型效果,但会随着自变量数量的不断增加而改变。

六、校正决定系数

校正决定系数在决定系数R平方的基础上考虑了样本数量和特征数量的影响。自变量越多,校正决定系数就会对自变量进行处罚,所以一般校正决定系数小于决定系数。

图解机器学习之回归模型性能评估指标_人工智能_22
其中,

  • m 表示样本量
  • n 表示解释变量总数

需要注意的是,决定系数和矫正决定系数都是基于均值进行计算,如果数据集中有异常点存在,会对该指标有较大的影响。也就是说,这两个指标对异常点较敏感,因此它们更适用于噪声较少的数据集。
对于噪声较多的数据集可以考虑 MAE,MAPE 来作为评估指标。