一、什么是时间序列预测?
对于时间序列预测不太了解的小伙伴,这里有必要让大家快速入个门。
就从一道简单的预测题开始吧,请听题:小明是一个小学生,最近3次考试的数学成绩依次是70分,80分,90分。
请你预测一下,他下一次数学考试的得分可能是多少?(满分100分)
为了简化问题:给大家ABCDE五个选项;当然,读者可以也给出其他答案,没有标准答案。
A: 100分 (理由:有规律,每次考试多10分)
B: 95分 (理由:进步趋势很明显,但是越到后面分数越难提升)
C: 90分 (理由: 上次就是这个分数,进步哪有那么容易)
D. 80分 (理由:均值回归,前三次平均分是80)
E. 0分 (理由:我觉得小明下次考试会忘记写名字,或者考试题目特别难一题都不会)
下面就来分析一下,ABCDE的不同其实对应着不同的哲学和人生态度。
选A(100分)的人:恭喜你,你解锁了时间序列预测经典算法之一的线性拟合法。
你会觉得:任何趋势都会按照线性的方式延续;任何事务都有规律可循;连涨3个月的股票第4个月还会涨;工资会无限地涨上去;房价也会永远涨......
选B(95分)的人:恭喜你,你解锁了时间序列预测经典算法之一的指数拟合法。
在你的价值观里:任何趋势都会慢慢变缓直到平稳;任何事务的发展都有个限度;工资涨一段时间就涨不动了;程序员的编程水平在刚入职时会快速提高然后慢慢趋于稳定......
选C(90分)的人:恭喜你,你解锁了时间序列预测经典算法之一的naive算法(下一个预测的值就等于最近的一个值),这个算法也是经典算法里面最强的算法。
在你的人生哲学里:明天和今天并没有什么不同;简单就是最好的;你信奉奥卡姆剃刀准则,如无必要,勿增实体;
选D(80分)的人:恭喜你,你解锁了时间序列预测经典算法之一的均值回归算法。
在你的认知里:任何疯狂终将回归平静;任何绝望总会慢慢过去;房价会回到它应有的位置,股票也会回归到它的价值所在;你是巴菲特和价值投资的坚实拥趸者;
选E(0分)的人:这我就不恭喜了,你选了一个理论上误差最大的答案。当然,这也并非不可能发生。
在你的价值体系里:黑天鹅是你的信条;股灾随时可能发生;你可能会对彩票很感兴趣;你会对农场主假说深信不疑(农场里的火鸡发现了一个规律,每天12点都会有人来送食物,直到感恩节那天,没有等来食物,等来的却是屠刀);你会怀着感恩的心过好每一天,因为你永远不知道明天和意外谁先来;
好了,看完上面那个例子,不太了解的读者应该对时间序列预测有一个大致的了解。通俗来说,就是根据历史数据点,预测未来的数据点。
二、时间序列预测基础
在进入预测之前,这无疑是时间序列中最有趣的部分,我们需要介绍一些概念以便更好地理解这个领域。
趋势
趋势是指时间序列数据中长期变化的方向或模式。
它反映了数据随着时间推移是否呈现出持续的增长、下降或保持不变的状态。
例如,一个电商网站的月度销售额可能逐年呈现上升趋势,反映了整体业务的扩展。

季节性
季节性指的是时间序列中呈现出固定周期内重复的模式或波动。
通常与年度周期有关,意味着某些现象在特定时间点(如季节、月份、季度)周期性地发生。这种模式是可以预测的。
例如,零售行业中的季节性效应,比如在春节期间的销售额通常会上升,而在其他月份则较为平淡。
固定周期,季节性变化具有固定的周期,例如一年中的四个季节,或者一周中的七天。数据在周期结束时会重复,形成相似的模式。
可预测性,由于季节性变化是固定周期的,因此可以用来预测未来某些时间段的变化。
周期性
周期性是指时间序列中呈现出不固定周期的波动。
周期性的变化可能比季节性变化持续更长时间,通常与经济或商业周期等长周期因素有关。
周期性波动不像季节性那样固定,它的持续时间和频率可能因外部因素的变化而不同。
例如,股票市场中的牛市和熊市循环,或者经济中的繁荣与衰退周期。这些波动通常没有固定的周期。
变化周期,周期性变化的周期长度是可变的,可能持续数年。
与外部因素相关,周期性波动通常与经济或其他宏观因素有关,比如经济衰退、繁荣周期等。
噪声
噪声是指时间序列数据中的随机波动或误差,它不属于趋势、季节性或周期性成分,通常是不可预测的。
噪声是数据中的随机扰动,可能来自测量误差、数据采集的不准确性或系统内部的随机因素。
例如,一个城市每日气温记录中的微小波动可能就是噪声,通常是由于测量误差或大气中不可预测的因素引起的。
随机性,噪声没有特定的模式或规律,通常是不可预测的。
不可避免性,在实际时间序列中,噪声不可避免,但可以通过平滑、去噪等技术进行处理。
在时间序列分析中,通常将时间序列分解为趋势、季节性、周期性和噪声这四个部分。

三、11 种不同的经典时间序列预测方法
1.自回归 (AR)
自回归 (AR) 方法使用先前观测值的线性组合来预测序列中的后续值。
模型的符号涉及将模型 p 的顺序指定为 AR 函数的参数,例如 AR(p)。例如,AR(1) 是一个一阶自回归模型。
该方法最适合缺乏趋势和季节性分量的单变量时间序列。
2.移动平均线 (MA)
移动平均 (MA) 方法模型将序列中的下一步预测为先前时间步长中平均过程残余误差的线性函数。
需要注意的是,移动平均线模型不同于计算时间序列的移动平均线。
模型的符号涉及将模型 q 的顺序指定为 MA 函数的参数,例如 MA(q)。例如,MA(1) 是一个一阶移动平均模型。
该方法适用于没有趋势和季节分量的单变量时间序列。
我们可以使用 ARIMA 类来创建 MA 模型并设置零阶 AR 模型。我们必须在 order 参数中指定 MA 模型的顺序。
3.自回归移动平均线 (ARMA)
自回归移动平均 (ARMA) 方法模型基于过去观测值和过去残差的线性组合来预测序列中的下一步。
该方法结合了自回归 (AR) 和移动平均 (MA) 模型。
为了表示模型,符号涉及将 AR(p) 和 MA(q) 模型的顺序指定为 ARMA 函数的参数,例如 ARMA(p, q)。ARIMA 模型可用于开发 AR 或 MA 模型。
该方法适用于没有趋势和季节分量的单变量时间序列。
4.自回归综合移动平均线 (ARIMA)
自回归综合移动平均 (ARIMA) 方法模型将序列中的下一步预测为先前时间步长的差分观测值和残差误差的线性函数。
该方法集成了自回归 (AR) 和移动平均 (MA) 模型的原理以及序列的差分预处理步骤,使序列静止,称为积分 (I)。
模型的符号涉及将 AR(p)、I(d) 和 MA(q) 模型的顺序指定为 ARIMA 函数的参数,例如 ARIMA(p, d, q)。ARIMA 模型还可用于开发 AR、MA 和 ARMA 模型。
ARIMA 方法最适合表现出趋势但缺乏季节性变化的单变量时间序列。

5.季节性自回归综合移动平均线 (SARIMA)
季节性自回归综合移动平均 (SARIMA) 方法基于差异观测值、误差、差异季节性观测值和先前时间步长的季节性误差的线性混合,对序列中的下一步进行建模。
SARIMA 增强了 ARIMA 模型,使其能够在季节性水平上执行相同的自回归、差分和移动平均建模。
该模型的符号涉及指定 AR(p)、I(d) 和 MA(q) 模型的顺序作为 ARIMA 函数的参数,以及季节性水平的 AR(P)、I(D)、MA(Q) 和 m 参数。
例如 SARIMA(p, d, q)(P, D, Q)m,其中"m"是每个季节(季节周期)的时间步长数。SARIMA 模型可用于开发 AR、MA、ARMA 和 ARIMA 模型。
该方法适用于具有趋势和/或季节性分量的单变量时间序列。
6.具有外生回归的季节性自回归积分移动平均值 (SARIMAX)
具有外生回归的季节性自回归综合移动平均值 (SARIMAX) 是 SARIMA 模型的扩展,其中还包括外生变量的建模。
外生变量也称为协变量,可以将其视为具有与原始序列相同的时间步长的观测值的并行输入序列。
初级序列可以称为内源性数据,以将其与外源序列进行对比。
外生变量的观测值在每个时间步直接包含在模型中,并且以与主要内生序列相同的方式建模(例如,作为 AR、MA 等过程)。
SARIMAX 方法还可用于对具有外生变量(如 ARX、MAX、ARMAX 和 ARIMAX)的归入模型进行建模。
该方法适用于具有趋势和/或季节成分以及外生变量的单变量时间序列。
7.向量自回归 (VAR)
向量自回归 (VAR) 方法使用 AR 模型方法对每个时间序列中的下一步进行建模。从本质上讲,它扩展了 AR 模型以迎合多个并行时间序列,例如多变量时间序列。
模型的符号涉及将 AR(p) 模型的顺序指定为 VAR 函数的参数,例如 VAR(p)。
该方法适用于没有趋势和季节分量的多变量时间序列。
8.向量自回归移动平均 (VARMA)
向量自回归移动平均 (VARMA) 方法利用 ARMA 模型方法对多个时间序列中即将到来的值进行建模。它是ARMA对多个并行时间序列的推广,例如多变量时间序列。
模型的符号涉及将 AR(p) 和 MA(q) 模型的顺序指定为 VARMA 函数的参数,例如 VARMA(p, q)。VARMA 模型还可用于开发 VAR 或 VMA 模型。
该方法适用于没有趋势和季节分量的多变量时间序列。

9.具有外生回归的向量自回归移动平均值 (VARMAX)
具有外生回归的向量自回归移动平均值 (VARMAX) 扩展了 VARMA 模型的功能,其中还包括外生变量的建模。它是 ARMAX 方法的多变量版本。
外生变量,也称为协变量,可以认为是与原始序列的时间步长对齐的并行输入序列。
主要系列被称为内源性数据,以将其与外源序列进行对比。外生变量的观测值在每个时间步直接包含在模型中,并且以与主要内生序列相同的方式建模(例如,作为 AR、MA 等过程)。
VARMAX 方法还可用于对具有外生变量(如 VARX 和 VMAX)的归和模型进行建模。
该方法适用于无趋势的多变量时间序列和具有外生变量的季节分量。
10.简单指数平滑 (SES)
简单指数平滑 (SES) 方法将下一个时间步长建模为先前时间步长观测值的指数加权线性函数。
该方法适用于没有趋势和季节分量的单变量时间序列。
11.Holt Winter 指数平滑 (HWES)
Holt Winter's Exponential Smoothing (HWES) 也称为三重指数平滑方法,将下一个时间步长建模为先前时间步长观测值的指数加权线性函数,同时考虑趋势和季节性。
该方法适用于具有趋势和/或季节性分量的单变量时间序列。
更多AI大模型学习视频及资源,都在智泊AI。