MAE实际上告诉我什么?

时间:2016-10-29 20:31:51

标签: machine-learning data-science

我创建了一个简单的线性回归模型来预测S& P 500收盘价。然后计算出平均绝对误差(MAE)并获得了1290的MAE分数。现在,我不想知道这是对还是错,但我想知道1290的MAE告诉我的模型。

2 个答案:

答案 0 :(得分:6)

说实话"一般而言#34;它几乎什么都没告诉你。该值非常随意,只有您完全了解数据才能得出任何结论。

MAE代表平均绝对误差,因此,如果您的平均值为1290,则表示如果您从数据中随机选择一个数据点,那么您预计您的预测距离真实值为1290。好吗?坏?取决于您的输出规模。如果它是数百万,那么这个大的错误就是什么,模型是好的。如果您的输出值在数千的范围内,这太可怕了。

如果我理解正确,S& P 500的收盘价是0到2500之间的数字(过去36年),因此1290的错误看起来像你的模型一无所知。这就像一个不变的模型,总是回答" 1200"或者这个值附近的东西。

答案 1 :(得分:1)

使用模型获得的MAE应该始终对照基准模型进行验证。

一个常用的基线是中值分配。计算所有预测均始终等于目标变量向量的中位数的情况下的MAE,然后亲自查看模型的MAE是否大大低于该值。如果是的话,恭喜。

请注意,在这种情况下,基线MAE将取决于目标分布。如果您的测试样本包含许多确实接近中值的实例,那么几乎不可能获得MAE优于基线的模型。因此,仅当您的测试样本足够多样化时才应使用MAE。在测试样本中只有1个实例的极端情况下,您将获得基准MAE = 0,这将始终不比您可能想到的任何模型差。

当您获得总样本的MAE,然后要检查它在不同子样本之间的变化时,MAE的问题尤为明显。假设您有一个模型,该模型根据教育程度,年龄,婚姻状况等预测年收入。您得到的MAE为$ 1.2k,基线MAE为$ 5k,因此您可以得出结论,您的模型很不错。然后,您要检查模型如何处理低收入人群,并获得$ 1.7k的MAE和$ 0.5k的基线。如果您检查18-22岁人口统计数据中的错误,则可能会发生同样的情况。