MAD vs RMSE vs MAE vs MSLE vs R²:何时使用哪个?

数据挖掘 回归 公制
2021-10-08 05:41:06

在回归问题中,您可以使用各种不同的指标来检查模型的运行情况:

  • 平均绝对偏差 (MAD):在 [0,), 越小越好
  • 均方根误差 (RMSE):在 [0,), 越小越好
  • 中值绝对误差 (MAE):在 [0,), 越小越好
  • 均方对数误差 (MSLE):在 [0,), 越小越好
  • R²,决定系数:In (,1] 不一定越大越好

是否有充分的理由不使用其中一种?

2个回答

实际上,这些可以为您提供对模型错误的不同见解。如果y 是你的目标, p 你的预测和 e=py 错误:

  • 平均误差: ME=mean(e)

在 (-∞,∞) 中,越接近 0 越好。
测量误差中的附加偏差。无偏估计应该与您的目标具有相同的平均值,因此 ME 应该接近 0,如果它是肯定的,那么您的预测会高估目标,如果它是否定的,那么它们会低估。

  • 均方根误差: RMSE=mean(e2).

在[0,∞)中,越小越好。
测量误差的均方幅度。取平方根以使误差的单位与目标的单位相同。该度量对较大的偏差(例如异常值)给予了更大的权重,因为较大的差异平方变得更大,而较小(小于 1)的差异平方变得更小。

  • 平均绝对误差: MAE=mean(|e|).

在[0,∞)中,越小越好。
测量误差的绝对大小,其单位与目标单位相同。导致更容易解释的错误并减少异常值的权重。然而,一个很好的模型MAE 可以准时出现非常高的错误。

  • (根)均方对数误差: 小号大号=e一个n((lG(p+1)-lG(是的+1))2).

在[0,∞)中,越小越好。
这在处理右倾斜目标时很有用,因为进行对数变换会使目标更正态分布。在实践中,通常通过将目标更改为是的^=lG(是的+1)然后预测为是的=e是的^-1

  • 中值绝对偏差:一个D=ed一世一个n(e-ed一世一个n(e)).

在[0,∞)中,越小越好。
这是一种类似于标准偏差的散布度量,但对异常值更稳健。MAD 不采用平方平均值作为 sd,而是采用绝对值的中位数,使其更加稳健。

  • R²,决定系数:

在 (−∞,1] 中,越接近 1 越好 是衡量模型可以捕获的变异性与目标变量中的自然变异性的比率。

在实践中,我通常使用,R2和:R小号如果数据中没有异常值,一个 如果我有一个大数据集并且可能存在异常值, R大号小号 如果目标是正确倾斜的。

此链接对此事提供了很好的概述:http: //www.cawcr.gov.au/projects/verification/#Methods_for_foreasts_of_continuous_variables

我有一些非常粗略的想法:

  • 如果偏差为 2,则 MAD 是偏差为 1 的“两倍”。
  • 如果值恶化得更快,则 RMSE - 严厉惩罚异常值!(可以好也可以坏)
  • MAE,如果我对完整的异常值不感兴趣,但仅在“典型”情况下(因为我通常将输出限制在合理范围内,这与 MAD 几乎相同)

对于 MSLE 和 R²,我不知道什么时候它比其他更适合。