评估时间序列的可预测性


11

假设我有从05年1月到11年12月的每月超过20.000个时间序列。每个代表不同产品的全球销售数据。如果我只想关注少数几个“实际上很重要”的产品,而不是计算每个产品的预测,该怎么办?

我可以按年收入总额对这些产品进行排名,并使用经典的Pareto来精简列表。在我看来,尽管它们对底线的贡献不大,但某些产品是如此容易预测,以至于将它们拒之门外是不好的判断。在过去的10年中,每月售出价值50美元的产品听起来似乎不算什么,但它几乎不需要花太多力气就可以得出有关未来销售额的预测,我也可以这样做。

所以说我将产品分为四类:高收入/易于预测-低收入/易于预测-高收入/难以预测-低收入/难以预测。

我认为只留下那些属于第四组的时间序列是合理的。但是,我究竟该如何评估“可预测性”呢?

变异系数似乎是一个很好的起点(我也记得前一段时间看过有关它的文章)。但是,如果我的时间序列表现出季节性/水平变化/日历效应/强烈趋势怎么办?

我想我应该仅根据随机成分的可变性而不是“原始”数据之一进行评估。还是我错过了什么?

以前有没有人偶然发现过类似的问题?你们会怎么做?

一如既往,我们将不胜感激!

Answers:


9

这是基于stl的第二个想法。

您可以将stl分解拟合到每个序列,然后将其余部分的标准误差与忽略任何部分年份的原始数据的平均值进行比较。易于预测的序列的se(余数)与mean(数据)的比率应较小。

我建议忽略部分年份的原因是,季节性会影响数据的平均值。在问题的示例中,所有系列都有七个完整的年份,因此这不是问题。但是,如果该系列在2012年之前有所扩展,我建议仅在2011年底之前计算均值,以避免均值的季节性污染。

这个想法假设均值(数据)是有意义的-也就是说,数据是均值平稳的(除了季节性)。对于具有强烈趋势或单位根源的数据,它可能效果不佳。

它还假设良好的stl拟合可以转化为良好的预测,但是我无法想到一个不正确的示例,因此这可能是一个不错的假设。


嗨,罗伯,谢谢您回到我身边。我喜欢您的想法,因此我将尝试一下,看看它是否提供所需的过滤级别。只是一件事,在均值(余数)上使用均值(数据)是否有任何特定原因?恐怕我的某些时间序列可能会有某种趋势。相反,STL不应分解序列。您还认为我们到目前为止概述的用于评估可预测性/发现异常值的方法是否足以在实际业务环境中实施?还是太“业余”了?您通常会做很多不同的事情吗?
Bruder 2012年

均值(余数)将接近零。您想将噪声与数据规模进行比较,因此mean(data)应该可以。不确定如何处理您的趋势。在相信结果之前,我会在一系列数据上仔细测试该方法。
罗伯·海德曼

8

这是预测中相当普遍的问题。传统的解决方案是计算每个项目的平均绝对百分比误差(MAPE)。MAPE越低,则该项目越容易预测。

一个问题是,许多序列包含零值,然后未定义MAPE。

yttT

Q=1T12t=13T|ytyt12|,
qt=(yty^t)/Qy^tyth

易于预测的序列的MASE值应较低。相对于季节性的天真预报,这里的“易于预测”被解释为。在某些情况下,使用替代的基本度量来缩放结果可能更有意义。


您好罗伯,谢谢您的友好答复。与往常一样,您的方法非常简洁,直接且合理。我已经根据季节性的天真模型评估了预测的增加值(FTV),因此您使用相同的“基本度量”评估可预测性的想法听起来很有吸引力。唯一的问题是,为了计算MASE,我需要选择一种预测方法并对每个20000时间序列进行仿真。我希望我可以事先发现易于预测的系列,以便节省计算时间。
Bruder 2012年

出于某种原因,我认为具有较低相对变异性(即CV)的时间序列必然会导致更轻松,更准确的预测。我认为,计算预测,然后再测量误差,是我的宗旨。我想我想说的是,我对MASE的理解更像是对预测准确性的一种度量,而不是对可预测性的度量。但是我可能错了... :)
Bruder

1
@Bruder:2个想法:1.您可以看一个简单的天真预报,而不是季节性预报。一个简单的天真的预测仅使用时间序列的先前值,并且会获得强趋势(具有1个周期的滞后)。2. STL分解是一个好主意。如果与季节和趋势成分相比残差很小,那么您可以轻松地预测该序列。
Zach 2012年

1
@Rob-STL分解怎么样?我可以用两只石头抓两只鸟(即发现异常值并评估可预测性,因此评估“真实”可预测性)吗?令我惊讶的是,仅凭STL和季节性的天真模型,我能完成多少工作。但是您知道,当事情太好了以至于无法实现时,会发生什么……
Bruder 2012年

1
ti

5

pn

Ω(xt)

但是也许您可以尝试使用Rob提出的MASE度量对几个子组中的20,000个网格进行粗略的网格分离,然后将ForeCA分别应用于每个子组。


0

这个答案很晚,但是对于那些仍在寻找产品需求时间序列的可预测性的合适方法的人,我强烈建议您看一下近似熵

与时间序列中不存在波动的重复性模式相比,时间序列中存在重复性的波动性模式使其更具可预测性。ApEn反映了相似的观察模式不会被其他相似的观察跟随的可能性。[7] 包含许多重复模式的时间序列的ApEn相对较小;难以预测的过程的ApEn较高。

产品需求往往具有非常强烈的季节性成分,因此变异系数(CV)不适当。ApEn(m,r)能够正确处理此问题。在我的情况下,由于我的数据倾向于每周都有很强的季节性,因此我按照此处的建议设置参数m = 7和r = 0.2 * std 。


u

uu
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.