什么是MAPE指标?
MAPE是Mean Absolute Percentage Error的缩写,中文常称为平均绝对百分比误差。它是衡量预测准确性的一个常用指标,特别是在时间序列预测领域。
简单来说,MAPE计算的是预测值与实际值之间差异的百分比,然后将这些百分比误差取绝对值后求平均。这个指标能够反映预测结果相对于实际值的偏离程度,并且是以百分比形式呈现,这使得它在比较不同量纲或不同规模的数据集上的预测表现时尤其有用。
计算公式详解
MAPE的计算涉及以下几个步骤,最终公式如下:
MAPE = (1/n) * Σ [ |实际值i – 预测值i| / 实际值i ] * 100%
其中:
- n 表示数据点的总数(例如,预测的时间周期数量)。
- 实际值i 表示第 i 个数据点的实际观测值。
- 预测值i 表示对第 i 个数据点的预测值。
- |实际值i – 预测值i| 表示第 i 个数据点的绝对误差。
- |实际值i – 预测值i| / 实际值i 表示第 i 个数据点的百分比误差(的绝对值)。
- Σ 表示对所有数据点(从 i=1 到 n)的百分比误差求和。
- (1/n) 乘以求和结果,计算出平均值。
- 乘以 100% 是为了将结果表示为百分比。
例如,如果实际值是100,预测值是110,那么这个数据点的百分比误差(的绝对值)就是 |100 – 110| / 100 = 10 / 100 = 0.1,即10%。MAPE就是所有这些百分比误差的平均值。
为什么选择使用MAPE?
选择使用MAPE的主要原因在于它的相对性和可比性。
比较不同量级数据的利器
考虑一个场景:你同时预测高端汽车的销量(年销量可能只有几百辆)和普通袜子的销量(年销量可能有几十万双)。绝对误差指标(如平均绝对误差 MAE)对汽车预测的几辆误差可能比袜子预测的几百双误差看起来更严重,但实际上对于袜子而言,几百双的误差可能微不足道。
MAPE通过计算百分比误差,消除了数据量级的影响。预测汽车销量误差5%和预测袜子销量误差5%,在某种程度上反映了相似的预测能力水平,无论它们的实际销售量有多少。这使得你可以公平地比较和评估对不同产品、不同区域甚至不同业务线的预测模型表现。
直观易懂的百分比解读
误差以百分比形式表示,更容易被非技术人员理解和沟通。当你说“我们的预测平均误差是15%”时,大多数人都能直观地理解这意味着预测值平均偏离实际值15%,这比说“平均误差是5000”要清晰得多,因为“5000”这个数字本身没有上下文意义。
MAPE指标的应用场景
由于其独特的优点,MAPE广泛应用于需要对未来进行预测的各种领域,特别是对预测准确率有较高要求的场景。
-
库存管理与需求预测:
这是MAPE最经典的的应用领域之一。企业需要预测不同商品的未来销量,以便合理安排采购、生产和库存。MAPE可以帮助评估不同预测模型(如时间序列模型、机器学习模型)在预测各种商品需求时的准确性。较低的MAPE值意味着更准确的需求预测,从而可以优化库存水平,减少积压或缺货成本。
-
销售预测:
评估针对不同产品类别、销售区域或销售渠道的预测模型。MAPE可以帮助销售团队或管理层了解预测的可靠性,指导销售目标设定和资源分配。
-
财务预测:
在预算编制、收入预测、费用预测等财务活动中,MAPE可以用来评估预测模型的准确性。这对于企业的财务规划和决策至关重要。
-
供应链规划:
预测原材料需求、生产计划、运输量等。准确的预测(由较低的MAPE值反映)能够提高整个供应链的效率和响应速度。
MAPE的计算步骤与示例
详细计算步骤
为了计算MAPE,你需要一组实际观测值和对应的预测值。步骤如下:
- 收集数据: 获取一段时间周期内(或一组数据点)的实际值和对应的预测值。确保实际值和预测值是一一对应的。
-
计算绝对误差: 对于每个数据点 (i),计算其绝对误差:
|实际值i - 预测值i|。 -
计算百分比误差(绝对值): 对于每个数据点 (i),计算其百分比误差的绝对值:
(|实际值i - 预测值i| / 实际值i)。注意:这里需要特别处理实际值i为零的情况,因为除以零没有意义(将在下一节讨论)。 - 求和: 将所有数据点的百分比误差(绝对值)相加。
- 求平均: 将总和除以数据点的总数 n。
- 转换为百分比: 将结果乘以 100%。
简单示例
假设你有以下3个时间段的实际销售量和预测销售量:
- 时间段1: 实际值 = 100, 预测值 = 110
- 时间段2: 实际值 = 50, 预测值 = 48
- 时间段3: 实际值 = 200, 预测值 = 205
计算过程:
-
时间段1:
绝对误差 = |100 – 110| = 10
百分比误差 = (10 / 100) = 0.1 -
时间段2:
绝对误差 = |50 – 48| = 2
百分比误差 = (2 / 50) = 0.04 -
时间段3:
绝对误差 = |200 – 205| = 5
百分比误差 = (5 / 200) = 0.025
总百分比误差(绝对值)之和 = 0.1 + 0.04 + 0.025 = 0.165
数据点总数 n = 3
MAPE = (1 / 3) * 0.165 * 100% ≈ 0.055 * 100% = 5.5%
因此,在这个例子中,预测的平均绝对百分比误差约为 5.5%。
如何解读MAPE值?多少算“好”?
理解MAPE值是使用它的关键。
MAPE值越大,误差越大
这是一个基本原则。MAPE值越接近0%,说明预测越准确;MAPE值越大,说明预测的平均偏离程度越高,预测准确性越差。
“好”的标准取决于具体场景
MAPE值没有一个放之四海而皆准的“好”或“坏”的标准。一个可接受的MAPE值高度依赖于它所应用的具体领域、数据的特性、预测对象的波动性以及业务对预测精度的容忍度。
以下因素会影响对MAPE值的判断:
- 行业特性: 在一些快速变化或高度不确定的行业(如时尚、科技产品),即使是20%的MAPE也可能被认为是可接受的;而在需求相对稳定、数据历史悠久的行业(如某些基础消费品),期望的MAPE值可能会低得多,比如5%以内。
- 数据粒度: 预测单个SKU(最小库存单位)的需求通常比预测整个产品类别或仓库总需求有更高的MAPE,因为单个SKU的需求波动性更大。
- 数据波动性: 如果实际数据本身波动剧烈,那么即使是最好的模型也难以达到非常低的MAPE。
- 业务目标: 业务是为了减少库存积压还是防止缺货?不同的目标可能对预测误差有不同的容忍度。例如,防止缺货可能更关注预测不足的错误,而减少积压则更关注预测过高的错误,但MAPE本身并不能区分这两种错误的方向,它只关心绝对差异。
尽管如此,在一些领域存在一些经验性的指导,例如:
- 小于10%:通常被认为是高准确性。
- 10% – 20%:良好的准确性。
- 20% – 50%:合理的准确性,但有改进空间。
- 大于50%:可能需要对预测方法或数据进行重大审查。
再次强调,这些只是非常粗略的指导,必须结合实际业务背景进行评估。
MAPE的局限性及应对
尽管MAPE有很多优点,但它并非完美无缺,存在一些重要的局限性。了解这些局限性对于正确使用和解读MAPE至关重要。
实际值为零时的问题
MAPE公式的分母是实际值 (实际值i)。当某个数据点的实际值i为零时,就会出现除以零的情况,导致该点的百分比误差无法计算,进而使得整个MAPE值无法计算。
这在预测新产品(初期销量可能为零)、季节性产品(在淡季销量为零)或低销量产品时经常发生。
对低值数据的敏感性
当实际值非常接近零但不等于零时,即使预测值与实际值之间的绝对误差很小,计算出的百分比误差也可能非常大。
例如:
实际值 = 1, 预测值 = 5。绝对误差 = 4。百分比误差 = (4/1) * 100% = 400%。
实际值 = 1000, 预测值 = 1004。绝对误差 = 4。百分比误差 = (4/1000) * 100% = 0.4%。
尽管两个例子中的绝对误差都是4,但第一个例子的百分比误差却巨大。这意味着在数据集中存在大量低实际值的情况下,一个或几个对低值的较大预测偏差就可能显著抬高整个MAPE值,即使对高值的预测相当准确。这可能会误导对整体预测性能的评估。
存在零值或低值时的替代方案/应对
针对这些局限性,可以考虑以下几种方法:
- 排除零值项: 如果实际值为零的数据点占比较小且不影响整体评估,可以简单地在计算MAPE时忽略这些点。但这可能会导致样本偏差。
- 使用修正的MAPE版本: 有些变种的MAPE,如Symmetric MAPE (SMAPE),尝试解决零值问题(尽管SMAPE也有自己的问题)。SMAPE的分母通常是 (实际值 + 预测值) / 2 的绝对值。
-
使用其他误差指标: 如果数据中零值或低值非常普遍,或者百分比误差的相对性不是最重要的考量,可以转向使用其他不依赖于实际值作为分母的指标,如:
- MAE (Mean Absolute Error): 平均绝对误差,它计算的是绝对误差的平均值。它与MAPE一样直观,但它是规模依赖的。
- MSE (Mean Squared Error) / RMSE (Root Mean Squared Error): 平均平方误差或均方根误差。它们对大误差更敏感,但结果不如MAE或MAPE直观。
- 分组计算: 将数据点按实际值的大小分组(例如,高销量、中销量、低销量、零销量),然后对每个组单独计算MAPE或其他指标。这可以更清晰地看到模型在不同类型数据上的表现。
MAPE与其他误差指标的比较(简述)
MAPE与MAO、MSE等指标的核心区别在于其相对性。
MAPE vs MAE:
- MAE 计算的是预测值与实际值之间绝对差值的平均,其单位与原始数据相同。它直接衡量了平均偏差的大小。
- MAPE 计算的是预测值与实际值之间百分比差值的平均。它衡量了平均偏差占实际值的比例。
因此,MAE适用于评估在同一数据集上的模型性能,或者当绝对误差的大小本身具有业务意义时。而MAPE更适用于跨不同数据集或不同量级数据进行性能比较,或者当相对误差(百分比误差)更具业务解读性时。
总结
MAPE(平均绝对百分比误差)是一个强大且广泛应用的预测准确性评估指标。它通过计算平均百分比误差,使得对不同规模数据的预测性能进行比较成为可能,并且其结果以直观的百分比形式呈现,易于理解。
然而,使用MAPE时必须充分认识到它的局限性,特别是当实际值接近或等于零时可能导致计算问题或对低值数据过度敏感。在这些情况下,理解其背后的原理、谨慎解读结果或考虑使用其他合适的误差指标(如MAE、RMSE)或其变体是非常重要的。正确理解和应用MAPE,结合业务场景进行解读,才能更有效地评估和改进预测模型。