问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

机器学习中的平均绝对误差(MAE)详解

创作时间:
作者:
@小白创作中心

机器学习中的平均绝对误差(MAE)详解

引用
CSDN
1.
https://blog.csdn.net/IT_ORACLE/article/details/143623931

平均绝对误差(Mean Absolute Error,MAE)是机器学习和统计学中常用的评估指标,用于衡量预测值与实际值之间的平均差异。与均方误差(MSE)或均方根误差(RMSE)相比,MAE通过使用误差的绝对值,展现出对异常值更高的稳定性。本文将详细介绍MAE的定义、计算方法、性质、应用场景及其与RMSE的对比。

1. MAE 的定义和公式

给定预测值 (\hat{y}_i) 和真实值 (y_i),MAE的公式为:

$$
MAE = \frac{1}{n} \sum_{i=1}^{n} |y_i - \hat{y}_i|
$$

其中:

  • (n) 是样本总数。
  • (\hat{y}_i) 是模型的预测值。
  • (y_i) 是对应的真实值。

MAE表示了预测值与真实值之间的平均绝对差异。由于取了绝对值,每个误差的正负号被忽略,保证了所有差异的非负性。

2. MAE 的计算步骤

计算MAE的步骤如下:

  1. 求出误差:计算预测值 (\hat{y}_i) 与真实值 (y_i) 之间的差异。
  2. 取绝对值:计算每个误差的绝对值,以确保所有差异都是正值。
  3. 求均值:将所有误差的绝对值加总,并除以样本数量 (n),得到MAE。

3. MAE 的性质和意义

  • 易于解释:MAE具有与原始数据相同的单位,直接表示预测值与真实值的平均差距,因而易于理解和解释。
  • 对异常值更稳定:相比MSE和RMSE,MAE对异常值不敏感,不会因为少数大误差的平方而放大结果,适用于具有较多异常值的数据集。
  • 偏好绝对误差:由于MAE忽略了误差的正负号,它无法提供误差的方向性信息。

4. MAE 的优缺点

优点

  • 简单直观:MAE仅计算绝对误差的平均值,简单明了。
  • 对异常值稳定:由于没有误差平方的放大效应,MAE不易受异常值的影响,更能反映数据的整体趋势。

缺点

  • 缺乏方向性:由于计算绝对误差,MAE无法反映出误差是正偏还是负偏,可能不适用于需要区分偏差方向的应用场景。
  • 较低的区分度:MAE没有放大误差的功能,因此在评估较复杂模型的表现时,可能没有RMSE那样敏感。

5. MAE 的应用

MAE是回归问题中常用的评估指标,广泛应用于以下场景:

  • 时间序列预测:在金融、气象等时间序列预测问题中,MAE可以用来评估预测精度。
  • 经济预测:在经济领域,MAE用于衡量经济指标的预测偏差,帮助判断模型的可靠性。
  • 机器学习模型的比较:MAE在回归模型的评估中用于衡量不同模型的预测效果,是算法调优时的重要参考指标。

6. Python 实现代码

import numpy as np

def mae(y_true, y_pred):
    return np.mean(np.abs(y_pred - y_true))

# 示例
y_true = np.array([3, -0.5, 2, 7])
y_pred = np.array([2.5, 0.0, 2, 8])
result = mae(y_true, y_pred)
print("MAE:", result)

说明

  1. y_true 为真实值数组,y_pred 为预测值数组。
  2. np.abs(y_pred - y_true) 计算每个误差的绝对值。
  3. np.mean(...) 求所有误差的绝对值的平均,得到MAE。

7. MAE 的图解说明

下图展示了MAE的计算过程,其中:

  • 蓝色圆点连线代表真实值 (y)。
  • 红色叉点连线代表预测值 (\hat{y})。
  • 每条灰色虚线表示预测值和真实值之间的绝对误差。

可以用垂直线表示预测值与实际值之间的绝对误差,每条线段的长度对应于预测值和真实值的差异。以下是一个MAE的计算图解步骤:

  1. 绘制真实值和预测值的散点图:将实际值和预测值分别绘制在坐标图上。
  2. 计算误差:每个预测点到真实点的垂直线段代表误差的绝对值。
  3. 平均误差长度:将这些垂直线段的长度平均,即得到MAE。

通过这样的图示,MAE能帮助直观展示预测结果与实际情况的整体差异。

8. MAE 与 RMSE 的对比

指标
MAE
RMSE
计算方式
绝对误差的均值
平方误差的均值开平方根
对异常值敏感性
是否反映方向性
应用场景
数据含有较多异常值的数据集
对精度要求高的数据分析场景

9. 结论

MAE是一种简单、直观且对异常值较为稳定的误差度量方法。它适合用于需要估计预测与真实值间差距的应用场景。对于希望避免极端值过度影响的情况,MAE是一个有效的选择。而在需要更精细的模型评价时,通常会与RMSE一起使用,从而更全面地评估模型的预测表现。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号