平均绝对百分比误差 (MAPE) 已经完成了它的使命,现在应该退休了

博客

平均绝对百分比误差 (MAPE) 已经完成了它的使命,现在应该退休了

根据 Gartner(2018 年 Gartner 销售& 运营规划成功调查),销售和运营规划中最常用的预测评估指标是平均绝对百分比误差(MAPE)。这种情况必须改变。现代预测涉及产品-地点-日期等细分层面的小数量。对于如此精细的预测,MAPE 值极难判断,因此不符合有用的预测质量指标的要求。MAPE 还严重误导用户,既夸大了某些问题,又掩盖了另一些问题,诱导用户选择有系统性偏差的预测。适合 MAPE 的情况越来越少。这不是枯燥的理论:我们模拟了一家依靠 MAPE 优化预测值进行补货的超市。快销品和滞销品存货不足或过剩,很快就会使商店关门大吉。

当绝对误差和相对误差发生矛盾时,我们应该相信谁?

你预测需求量为 7.2 个苹果,最终售出 9 个。您预测的水量为 91.8 瓶,售出 108 瓶。你预测有 1.9 罐金枪鱼,结果卖出了一罐。如何判断这些预测误差?一种直接的方法是计算预测值与实际值的绝对偏差,然后除以实际值,即相对绝对误差,也可以是百分比值(绝对百分比误差,APE)。读起来比实际情况要复杂得多:把 APE 作为 "预测质量评估 "的第一炮是非常典型的。在这三个例子中,您可以得到看似适中的 20% (=|7.2-9|/7.2)、谦虚 15% (=|91.8-108|/108)和令人震惊的 90% (=|1.9-1|/1)、分别是MAPE 即平均绝对百分比误差,是这三个百分比的算术平均值,为 41.67% 。这些误差百分比表明,对金枪鱼的预测不如对苹果的预测,而对瓶子的预测则优于其他预测。但这是否真正反映了预报质量?再看看本节的开头--预测水瓶数与实际水瓶数之间的巨大绝对差异令人担忧,而其微小的相对误差也无法让人真正放心。另一方面,金枪鱼的 90% 误差可能是随机(坏)运气造成的--这只相当于一个项目。您是否应该对直觉保持沉默,盲目地依赖 APE?因此,您是否应该修改金枪鱼预报,而维持水域预报不变?如果发布的另一个预报的总体 MAPE 只有 30% ,新的预报是否一定更好?

当然,在任何情况下,我都不会严肃地要求你们忽视人类的判断力!这一令人不快的悖论将在下文中得到解决:MAPE 不适合用于粒度级的现代概率预测(即产品-地点-日,"小 "数字甚至 "0 "都有可能出现),原因是存在几个无法容忍和解决的问题。预测的 MAPE 并不能说明预测有多好,而只能说明 APE 的表现有多奇怪。

有意识地忽略比例:当百分比误差有意义时

在深入研究零售业的细粒度预测(产品-地点-日级别)之前,让我们假设预测一个大得多的数量:以美元计算的各国年度国内生产总值(GDP)。这种预测可用于确定整个国家的政策,而这些政策应同样适用于不同规模的国家。因此,在这种情况下,对每个国家的权重一视同仁是公平的:美国 GPD(约 25 万亿美元)的 5% 误差与图瓦卢 GPD(约 6600 万美元,是美国 GDP 的 38 万倍)的 5% 误差同样严重。在这里,绝对百分比误差 (APE) 是有意义的:实际 GDP 永远不会接近 0(除以 0 时会让人非常头疼,这一点我将在下文讨论),而预测的目的并不是要正确预测全球的总体 GDP,而是要尽可能接近每个国家的 GDP,误差范围从数百万到数万亿不等。最小化模型的总绝对误差(即误差以美元为单位,而不是百分比)使最大的经济体成为焦点,而忽略了小经济体。它不是对每个国家进行平均加权,而是根据其经济实力进行加权。按美元绝对值计算,一个美国国内生产总值误差为 3% 而图瓦卢国内生产总值误差为 200% 的模型,似乎比一个美国国内生产总值误差为 4% 而图瓦卢国内生产总值误差为 10% 的模型 "更好"。而 MAPE 则表明应采用后一种预测方法,即牺牲美国国内生产总值的绝对准确性(1% 25 万亿美元),换取图瓦卢国内生产总值准确性的小幅绝对提高(190% 6600 万美元)。美国的 GPD 比图瓦卢的大得多,但人们会有意识地、有充分理由地决定对它们一视同仁。美国和图瓦卢都可以被视为 "大 "地区,因为我们不能指望统计波动或 "坏运气 "会导致预报误差--也就是说,偏差通常在统计上是显著的,并指向模型改进的潜力。

总之,只要对不同数值的单个预测实例一视同仁,也就是说,只要我们可以将巨大的苹果与微不足道的桔子进行比较,MAPE 就有意义。但是,一视同仁就一定公平吗?

各种条件下的稳定导航

通过《供应链指南针通讯》做好一切准备。立即注册,获取每月发送的全球趋势和行业见解。

一视同仁--在一般情况下听起来不错,但在概率预测评估中并非如此

让我们回到之前的例子,谈谈苹果、金枪鱼罐头和瓶子。在这里,比较 APE 意义不大,原因有二。

顾名思义,慢销品的销售频率低于快销品。因此,与同样不可靠的快速销售预测相比,不可靠的慢速销售预测对业务的影响要小得多。一些边际滞销品因缺货而损失 5% 的销售额,对供应商来说只是不便,而畅销品损失 5% 的销售额则可能相当惊人。归根结底,绝对数字对您的业务至关重要。您高估了您的主要产品在美国的总需求量 20% ?您可能遇到了问题,需要处理大量未售出的存货,这甚至可能危及您的整个业务。您对图瓦卢同样产品的总需求预测过高了 20% ?我并不是针对图瓦卢(无意冒犯,真的!),但你也许可以放宽心,因为这个错误不会让你的生意破产。与您的面包& 黄油类别相比,您在小分类或市场中可以容忍更大的相对误差。为什么要将边缘项目或客户群体提升到与真正的大鱼同等重要的地位?

除了这种明显的差异(小就是小,大就是大)之外,还有一种看似微妙却很重要的统计效应:可实现预报准确率的规模依赖性。对于每天销售 10 次的产品来说,即使是完美预测(具有泊松不确定性),有时也难免会出现 10% 的偏差。每天销售 10000 次的产品打折 10% ,这显然说明了一个问题。慢销品不仅在业务上不如快销品重要,而且其相对误差自然也更大,这在之前的博文《 预测少有不同》第一部分 第二部分 中有更详细的论述 。

就上述食品杂货预报而言,你可能只是运气不好,碰上了当天的金枪鱼。多出的 16 瓶水似乎就不那么情有可原了。因此,绝对百分比误差 (APE) 不能很好地反映可实现的预测质量,无论是在业务方面(它对不平等的事情加权相同)还是在统计方面(其可实现值需要预测值本身的背景)都是如此。

以 MAPE 管理补货会导致灾难性的库存水平

换句话说,MAPE 本身并不是预测质量的良好指标:在三种不同情况下,是否达到 20% 、70% 、90% 并没有直接的解释意义。在 MAPE 值一定的情况下,我们不应该妄下结论。但是,即使 MAPE 值本身对模型的整体质量几乎没有任何影响,您仍然可以预期,在特定的预测情况下,MAPE 值获胜的预测应该是最好的预测。正如我现在要解决的问题,你也需要放弃这种较弱的期望。

考虑一家提供多种不同产品的超市--从每季度销售一次的慢销品到每天销售 100 次的快销品。物品的补给由一个系统完成,该系统会选择每日 MAPE 最佳预测,并根据预测进行预购。也就是说,它会选择 MAPE 最小的预测值。该超市的业绩如何?

为了简单起见,请关注 5 种典范产品:苹果、香蕉、腰果、火龙果和茄子:苹果、香蕉、腰果、火龙果和茄子的真实平均日销售率分别为 0.01、0.1、1、10 和 100:最慢的苹果大约每季度销售一次,最快的茄子每天销售 100 次(如果你怀疑这些数字不是为了现实世界的合理性而编造的,而是为了数学上的清晰和简单,那你是对的)。在这个思想实验中,我们知道这些销售率,它们是对每种产品的最佳预测。利用泊松分布,我们可以模拟发生的情况,以及具有最佳 MAPE 的预测值是多少。

下表列出了每种产品的真实销售率(即无偏差的最佳每日预测)、模拟 MAPE、优化 MAPE 优胜预测、模拟 MAPE 以及由此产生的偏差:

产品真实的每日销售率,无偏见的每日预测真实销售率的 MAPE获 MAPE 优胜的每日预报获胜预测的 MAPEMAPE 优胜预测的预测偏差
苹果0.0199%10.25%+9,900%
香蕉0.190%12.5%+900%
腰果123.3%123.3%0%
火龙果1031%929%-10%
茄子1008.11%998.05%-1%

请记住,真实的日销售率无疑是补货系统的最佳输入值,因为它是预期销售额的平均值。如果补货使用 MAPE 优胜预测,会发生什么情况?超市过度储存滞销品:每天补充一个苹果、一根香蕉和一个腰果,但苹果每 100 天才能卖出一个,香蕉每 10 天才能卖出一个!苹果和香蕉堆积如山,腰果也不错,但火龙果的需求却得不到满足:平均有一位顾客想买火龙果,但没买完就走了。对于快速流动的茄子来说,1% 的误差也许是可以原谅的--然而,令人吃惊的是,"最佳 "预测总是有偏差的,除非真正的销售率等于 1。

上表中计算的数字假定了一个完美的世界,在这个世界中,预测人员喜欢使用泊松不确定性最小的模型。对于一个更现实的模型来说,如果存在一些适度的额外不确定性(技术上说:过度分散),情况马上就会变得更糟:

产品真实的每日销售率,无偏见的每日预测真实销售率的 MAPE获 MAPE 优胜的每日预报获胜预测的 MAPEMAPE 优胜预测的预测偏差
苹果0.0199%10.3%+9,900%
香蕉0.190%13%+900%
腰果125%125%0%
火龙果1073%653%-40%
茄子10049%7240%-28%

按真实销售率计算的 MAPE 值与 MAPE-获胜预测的 MAPE 值之间的差距大幅拉大。换句话说,用户可能会认为 MAPE 优胜预测的 "证据 "比上面的还要充分。然而,与理想情况相比,MAPE 最佳预测偏差更大:目前,火龙果和茄子的预测不足率分别为 40% 和 28%--这将导致大量缺货。下面,我们将了解为什么更多的不确定性意味着 "我们需要稳妥行事",以及为什么这意味着 "我们需要低调行事"。

显然,采用这种策略的超市不会长久生存下去!因此,MAPE 的问题不仅仅是业务可解释性(它不适合回答 "预测有多好?)但有可能导致严重的运行问题(选择无可争议的较差预报而不是较好的预报)。让我们来探究一下原因!

MAPE 普查零计数事件,带来灾难性后果

在计算 APE 时,当实际值为零时,我们会遇到很大的麻烦,因为我们需要除以实际值。这样,APE 就没有定义,也就无法计算 MAPE(记住,它是所有 APE 的平均值)。也就是说,零销售事件会直接从数据中删除。这些数据的移除效果和感觉一样糟糕:在 MAPE 最佳预测中,它会导致对超级慢动作(每个时间段销售一次或更少)的公然过度预测偏差:由于 0 事件被忽略,因此对任何产品、地点和日期的最低合理预测值都是 1,即使是每年销售一次的产品也是如此!由于经过 MAPE 优化的预测可以安全地忽略结果 "0",为了安全起见,建议将 "1 "作为最低预测值。清除的替代方法(如% 而不是删除)并不能解决这个问题:结果为 0 的 1.7 预测显然比结果为 0 的 17,000 预测问题要小;给这两个事件分配相同的人工 APE 是没有意义的。也就是说,只要你的数据可能包含 "0 "作为任何事件的实际值,MAPE 就会出现极大的问题。优化它将导致对超慢移动项目的预测过高,正如我们在表格前两行看到的那样。

MAPE 对预测不足和预测过高的惩罚不同,导致估算偏差

预测 1,观察 7:APE 约为 6/7。86%.你觉得太多了吗?如果是这样,交换数字,预测 7,观察 1:您的 APE 变成 6/1,600% !APE 对高估某一系数的惩罚要比对低估同一系数的惩罚重得多。对于预测不足的情况,最坏的 APE 可能是 100% ;对于预测过高的情况,APE 是无限制的。因此,只要你对结果不确定(你永远都不应该不确定,每个好的模型都知道自己在某种程度上的不确定性),安全的做法就是低估:不惜(几乎)任何代价避免强烈的过高预测,而大量的过低预测也不会让你的脖子断掉。因此,即使在预测不确定性最小的情况下(我们在第一张表中假设了这一点),MAPE 最佳预测对销售率超过 1 的预测也是偏低的(最后两行)。此外,训练数据的变异性越大,模型的不确定性就越大,MAPE 最佳预测的低估程度也就越大:请记住,安全就是低估,不确定性越大,就越要安全,MAPE-最优预测也就越低。这种对冲过高预测的做法导致了第二张表格最后两行的强烈偏差。修正的 MAPE 可以解决这种不对称问题:例如,可以根据预测值和实际值的平均值计算误差百分比,而不是仅根据实际值计算误差百分比--但这些修正并不能完全解决不对称问题,还会引发其他问题和悖论。

MAPE 表现出特别复杂的缩放行为,让我们不知道预测到底有多好

诚然,缺乏可解释性(50% MAPE 是好是坏?)并不是 MAPE 的独有特征:每个指标都与规模有关,对慢速和快速移动者而言,其值也不同。然而,由于上述两种效应的共同作用,MAPE 的缩放尤其错综复杂:一方面,MAPE 最佳预测永远不会输出小于 1 的数字,我们只需去除 0 的销售结果。另一方面,销售率越高,相对误差越小。在这幅图中,我们显示了 "安装 MAPE",即作为销售率函数的最佳可实现 MAPE。

mean-absolute-percentage-error-body-01

深吸一口气,让我来解释一下你所看到的:x 标度是对数,因此我们可以很好地观察到小额销售率--标度从 0.1 到 100,从超慢到超快。对于低于 2 左右的小卖出率,预测值为 1 是最好的,它产生的 MAPE 值由橙色线给出,橙色线从左下方(由黑色虚线覆盖)一直延伸到右上方。预测 2 将导致慢动作(绿线)的 MAPE 偏大,接近 95% ,卖出率为 0.1。预测结果为 0 时,MAPE 始终为 100% (蓝线):对于任何不为 0 的结果(这些结果已从评估中剔除),我们有 APE=|actual-0|/actual=100% 。在销售率约为 2.3 时,预测 2 成为最佳预测,因此黑色虚线(最佳 MAPE)从橙色跳到了绿色。每当最佳预测值从一个值跳到下一个值时,它就会进一步轮换(预测 3 和预测 4 分别用红色和紫色表示)。

当我们研究移动速度非常慢的项目时(向左),最佳 MAPE 会降低:由于 0 次销售事件已从数据中删除,"幸存 "的事件大多是 1 次销售事件,而且商品销售速度越慢,"幸存 "的事件就越多。对于 0.1 的销售率来说,单日售出 2 件商品的可能性已经很低,因此,在大多数非 0 的情况下,预测 "1 "是完美的,实现的 MAPE 也相当低。换句话说,当你知道数据中的 "0 "会被删除,而项目的速度又很慢,那么 "1 "就是一个非常安全的销售数量赌注。对于 1 到 5 左右的中等大小数值,我们可以看到最佳 MAPE 的 "转折"。对于 10 或更高的大预测值(图中右侧),可实现的 MAPE 再次下降:在大比率的限制下,泊松分布变得相对狭窄(参见我们之前的博文《预测少有不同》1&2)。

我真的尽力解释了 "安装 MAPE "的形状!我用了两段 300 多字,但恐怕并不完全成功:你的理解是否使你今后能够在预测销售率的背景下直观地判断 MAPE?如果您觉得不会--不用担心:这种复杂性是另一个微不足道的论据,说明即使在专业人士中,也不太可能广泛传播对 MAPE 值的直观正确判断。

MAPE 最佳预测与业务无关,危及潜在预测价值

在许多应用中,在 MAPE 上获胜的预测并不是您所希望的无偏预测。那么,"优化 MAPE "又是什么意思呢?在数学上,最小化 MAPE 的值是最小化一个看起来很麻烦的表达式,我甚至不敢在一篇不是针对统计学家的博文中写下这个表达式。你需要知道的是这一表述没有任何有意义的商业解释。无论您想通过预测达到什么目的--确保供应、减少浪费、计划促销和降价、补充物品、计划劳动力......--在您的应用中,错误预测的商业成本肯定无法通过 MAPE 反映出来!理想情况下,选择一个能够反映 "预测失误 "实际财务成本的评估指标。你要优化的不是抽象的数学函数,而是最大化业务价值。

另一种选择:让指标直接反映业务

除了按国家和强假设预测 GDP 等情况外,MAPE 既不适合用来表示预测模型的好坏(由于缩放),也不适合作为在两个相互竞争的模型中进行选择的决策驱动因素(MAPE 获胜的预测是有偏差的)。还有什么选择?最理想的情况是,所使用的指标能直接反映业务价值。平均绝对误差(MAE)量化了库存过量的成本与缺货的成本相同的情况,这是一个很强的假设,但肯定比 MAPE 更接近现实。MAE 与预测本身具有相同的维度("项目数"),因此在很大程度上取决于规模。将 MAE 除以平均销售额,我们就得到了相对平均绝对误差 (RMAE),由于泊松分布的比例特性,RMAE 也不是与比例无关的。因此,规模依赖性总是需要明确解决的。

然而,仅仅忽视最佳 MAPE 估计值存在偏差是不行的:重要的战略决策取决于可靠、有意义、与业务相关的预测评估!是选择软件供应商 A,还是选择软件供应商 B,抑或是我们的内部解决方案?我们应该把改进模型的重点放在哪些品种上?这一新类别中的预测 "足够好 "吗?预测评估应提供清晰、高水平、可解释、反映业务的证据,以回答这些问题和许多其他问题。MAPE 对此无能为力。

了解如何修复平均绝对误差

您的平均绝对误差 (MAE) 是否给您带来了不完整的性能指标?了解 MAE 需要改进的原因,以及改进模型评估的基本步骤。