MSE、RMSE、MAE、R方等指标整理

本文详细介绍了机器学习中常用的误差评估指标,包括SSE、MSE、RMSE、MAE、R²、MAPE等,并对比了它们的特点及适用场景。
SSE

SSE(sum squared error,和方差),其公式为:sse=∑i=1m(yi−y^i)2sse=\sum_{i=1}^m(y_i-\hat y_i)^2sse=i=1m(yiy^i)2其中,yiy_iyi是真实值,y^i\hat y_iy^i表示预测值。

MSE

MSE(mean squared error,均方误差),其公式为:mse=1m∑i=1m(yi−y^i)2mse=\frac{1}{m}\sum_{i=1}^m(y_i-\hat y_i)^2mse=m1i=1m(yiy^i)2其中,yiy_iyi是真实值,y^i\hat y_iy^i表示预测值。

作为模型评估时,MSE简单直白表达了预测误差,但是加了平方扩大了误差值,同时在量纲很大的情况下评估结果不明了,因为这个原因,作为损失函数训练模型时,模型受异常值的影响很大。

MSE通常作为线性回归模型的损失函数(L2 loss),J(θ)=−1m∑i=1m(yi−hθ(xi))2J(\theta)=-\frac{1}{m}\sum\limits_{i=1}^m(y_i-h_\theta(x_i))^2J(θ)=m1i=1m(yihθ(xi))2

MAE

MAE(mean absolute error,平均绝对误差),其公式为:mae=1m∑i−1m∣yi−y^i∣mae=\frac{1}{m}\sum_{i-1}^m|y_i-\hat y_i|mae=m1i1myiy^i其中,yiy_iyi是真实值,y^i\hat y_iy^i表示预测值。

量纲和原值保持一致,且没有因为加了平方扩大了误差的问题,因此作为损失函数,其对于异常值的鲁棒性要高于MSE。

也被用作回归模型的损失函数(L1 loss)。

对于MSE和MAE:
如果数据的异常值对于业务是有用的,我们希望考虑到这些异常值,那么就用MSE;如果我们相应异常值只是一些无用的数据噪音,那就用MAE。

MAE是L1范数正则化的一个代表,MSE是L2范数正则化的一个代表。总体来说,L1可以克服异值点代来的不利影响。但是它的方程不可导,增大了用L1寻求最优解的困难度。L2对于异常点很敏感,但是通过求导很容易找到最优解。

这一点也可以联想到正则化模型进行特征选择时,虽然L1可以迅速把特征压缩到0,直接选择特征子集,但是如果特征之间存在共线性,L1可以带来不稳定的结果,即随意分配特征的权重。当数据发生细微变化时就会导致很大的模型差异。L2正则化就在系数权重上表现得更稳定,从而让特征更具解释性。

RMSE

RMSE(root mean squared error,均方根误差),其公式为:rmse=mse=1m∑i=1m(yi−y^i)2rmse=\sqrt {mse}=\sqrt{\frac{1}{m}\sum_{i=1}^m(y_i-\hat y_i)^2}rmse=mse=m1i=1m(yiy^i)2

RMSE本质是在MSE上作了一个开根号。这样将评估值的量纲和原值的量纲保持一致。

R2\textbf{R}^2R2

R2R^2R2(R squared,R方),其公式为:R2=1−SSresidualSStotalR^2=1-\frac{SS_{residual}}{SS_{total}}R2=1SStotalSSresidual其中SSresidualSS_{residual}SSresidual为residual sum of squares,SStotalSS_{total}SStotal为total sum of squares。R2=1−∑i(y^(i)−y(i))2∑i(yˉ−y(i))2R^2=1-\frac{\sum\limits_{i}(\hat y^{(i)}-y^{(i)})^2}{\sum\limits_{i}(\bar y-y^{(i)})^2}R2=1i(yˉy(i))2i(y^(i)y(i))2其中,y(i)y^{(i)}y(i)是真实值,y^(i)\hat y^{(i)}y^(i)表示预测值,yˉ\bar yyˉ表示样本均值,∑i(y^(i)−y(i))2\sum\limits_{i}(\hat y^{(i)}-y^{(i)})^2i(y^(i)y(i))2为预测产生的误差,∑i(yˉ−y(i))2\sum\limits_{i}(\bar y-y^{(i)})^2i(yˉy(i))2为均值产生的误差。

  • R2⩽1R^2 \leqslant1R21
  • R2R^2R2越大越好。当预测模型不犯任何错误时,R2R^2R2得到最大值1
  • 当预测模型等于基准模型时,R2=0R^2=0R2=0
  • R2<0R^2 \lt 0R2<0,说明预测模型还不如基准模型。
MAPE

MAPE(mean absolute percentage error,平均绝对百分比误差),其公式为:mape=100%n∑i=1n∣y^i−yiyi∣mape=\frac{100\%}{n}\sum_{i=1}^n|\frac{\hat y_i - y_i}{y_i}|mape=n100%i=1nyiy^iyiyiy_iyi是真实值,y^i\hat y_iy^i表示预测值。
范围[0,+∞),MAPE 为0%表示完美模型,MAPE 大于 100 %则表示劣质模型。可以看到,MAPE跟MAE很像,就是多了个分母。

注意:当真实值有数据等于0时,存在分母0除问题,该公式不可用!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值