机器学习中使用的“相对绝对误差”和“根相对平方误差”的公式(由 Weka 计算)

Posted

技术标签:

【中文标题】机器学习中使用的“相对绝对误差”和“根相对平方误差”的公式(由 Weka 计算)【英文标题】:Formula for "Relative absolute error" and "Root relative squared error" used in machine learning (as computed by Weka) 【发布时间】:2012-06-02 08:24:00 【问题描述】:

在开源数据挖掘软件 Weka(用 Java 编写)中,当我运行一些数据挖掘算法时,如线性回归 Weka 返回模型和一些模型评估测试数据的指标。

看起来像这样:

Correlation coefficient                  0.2978
Mean absolute error                     15.5995
Root mean squared error                 29.9002
Relative absolute error                 47.7508 %
Root relative squared error             72.2651 %

“相对绝对误差”和“根相对平方误差”的公式是什么?我无法弄清楚。我想用这个指标来评估我自己在 Matlab 中的算法。

【问题讨论】:

【参考方案1】:

来自this 演示文稿,在幻灯片 22 中,并引用了 witten,以下是公式:

相对绝对误差

根相对平方误差

实际目标值:a1 a2 … an 预测目标值:p1 p2 … pn

【讨论】:

您好,我输入公式的顺序有误,现在可以正常了。不客气。【参考方案2】:

根相对平方误差的公式实际上是相对平方误差的公式。你需要取这个公式的平方根才能得到 Weka 的输出。

【讨论】:

【参考方案3】:

在 Weka 书 Witten、Ian H.、Eibe Frank 和 Mark A. Hall 的第 177 页。 “实用的机器学习工具和技术。” Morgan Kaufmann (2005):578,相对平方误差定义如下:

“错误是相对于使用简单预测器时的错误。有问题的简单预测器只是 训练 数据的实际值的平均值。因此,相对平方误差采用总平方误差并通过除以默认预测器的总平方误差对其进行归一化。”

这与 Weka 的实现是一致的。因此,我们需要 train 集上目标的平均值来计算所有相对误差。

【讨论】:

以上是关于机器学习中使用的“相对绝对误差”和“根相对平方误差”的公式(由 Weka 计算)的主要内容,如果未能解决你的问题,请参考以下文章

评价分类与预测算法的指标

分类预测算法评价(初识)

使用Kafka在生产环境中构建和部署可扩展的机器学习

机器学习-Python中训练模型的保存和再使用

机器学习当前最流行的15个机器学习框架

如何在 Azure 机器学习服务管道中使用密钥