时间序列分析

1.时间序列与时间序列分析

时间序列数据是常见的一种数据类型,可以被定义为:

①按照时间的先后顺序,将某一变量或指标的相关数据或一组观察数据排列起来的一个数值序列。
②记录了在一段时期内——按周、按月、按季度或按年收集的一组数据。
③按照时间的顺序把随机事件变化的过程记录下来就构成了一个时间序列。
④时间序列是一个变量的观测值按时间顺序排列而成的序列。反映了现象动态变化的过程和特点,是研究事物发展趋势、规律以及进行预测的依据。

与时间序列相对应的数据称作截面数据,是指在相同或近似相同的时间点上收集的数据,这类数据通常是在不同的空间上获得的,用于描述现象在某一时刻的变化情况,比如2010年我国各地区的国内生产总值数据就是截面数据。

例如天气预报中的气温曲线就是一种时间序列数据,反映了气温按照时间顺序的变化趋势。时间序列分析方法可以大致分为描述性时序分析和统计时序分析。描述时序分析即通过直观的数据比较或绘图观测,寻找序列中蕴含的发展规律,这种分析方法就称为描述性时序分析。统计时序分析则包含频域分析方法和时域分析方法,是使用具体的统计方法对时间序列数据进行分析。

频域分析方法:频域分析法是研究控制系统的一种经典方法,是在频域范围内应用图解分析法评价系统性能的一种工程方法。频率特性可以由微分方程或传递函数求得,还可以用实验方法测定。频域分析法不必直接求解系统的微分方程,而是间接地揭示系统的时域性能,它能方便地显示出系统参数对系统性能的影响,并可以进一步指明如何设计校正。原理:假设任何一种无趋势的时间序列都可以分解成若干个不同频率的周期波动。

这个原理其实和傅里叶级数的思想是一致的,即任何周期函数都可以用正弦函数和余弦函数构成的无穷级数来表示。当然,和神经网络使用非线性激活函数去拟合任意函数的思想也是一致的。实际上,频域分析方法中也有使用傅里叶变换,将时域信号转换为频域信号进行分析,例如谱分析就是将时间序列用正弦和余弦的线性组合进行建模的思想,提供了非常容易地发现“隐藏”周期性的工具。

时域分析方法:事件的发展通常都具有一定的惯性,这种惯性用统计的语言来描述就是序列值之间存在着一定的相关关系,这种相关关系通常具有某种统计规律。寻找出序列值之间相关关系的统计规律,并拟合出适当的数学模型来描述这种规律,进而利用这个拟合模型预测序列未来的走势。包括AR模型、MA模型、ARMA模型、ARIMA模型、ARCH模型、co-integration理论等。

时间序列的种类大致包括以下几种:

绝对时间序列:构成时间序列的数据是总量指标的时间序列,反映的是研究对象的绝对水平和总体规模,以及与之相对应的变化趋势。
相对时间序列:构成时间序列的数据不是总量指标的时间序列,反映的是某种现象随时间变化的对比情况。
平均时间序列:数据是与研究对象相关的平均值,反映的是研究对象的平均发展水平。

白噪声序列:纯随机性序列,白噪声序列的特点表现在任何两个时点的随机变量都不相关,序列中没有任何可以利用的动态规律,因此不能用历史数据对未来进行预测和推断。

在进行时间序列数据建模时,需要先确定该序列数据是否为白噪声序列,如果是白噪声序列,则无进一步分析的必要,如果是平稳的非白噪声序列,则可以使用经典的时域分析方法如AR、MA等模型。如果是非平稳的时序数据,则可以通过差分变换使其平稳,例如ARIMA模型。

另外,需要注意,时序数据应保证:①指标的范围保持一致。②时间变量间隔应该保持相等。③同一个时间序列应采用同样的采集标准。(统计口径、计量标准、单位等保持一致)

时间序列分析是把一个原始数列分解为若干个分量,并用这些分量从不同的角度反映时间序列的性质。一般来说,时间序列受以下四种因素的影响。

T——长期趋势变量。长期趋势变量反映的是时间序列的总趋势,能反映研究对象在一定时间内的发展过程、方向和趋势,用来描述历史、预测未来。它是时间序列中最基本的构成要素,可分为上升趋势、下降趋势、水平趋势,也可分为线性趋势和非线性趋势。
C——周期变动变量。周期变动变量是以某一时间间隔为周期的周期性变动,如危机和复苏的交替。这种因素的影响使研究对象呈现出以若干年为一周期涨落相间、扩张与紧缩、波峰与波谷相交替的波动。与长期趋势变量表现为单一方向的持续的变动不同的是,周期变动变量表现为波浪式的涨落交替变动;又不同于季节变动变量,它们周期长度不同、模型识别的难易程度不同及形成原因不同。

S——季节变动变量。季节变动变量是一种以一定时间(如一年、一个月、一周等)为周期使研究对象呈现较有规律的上升、下降交替运动的影响因素。它通常表现为研究对象在一年内随着自然季节的更替发生较有规律的增减变化,有旺季和淡季之分,周期长度一般小于一年。如服装行业销售额的季节性波动。在经济社会活动中,诸如这类的波动常常描述为季节性的变化影响。
I——偶然变动变量。顾名思义,偶然变动变量是指那些研究人员无法事先预料由偶然因素所引起的波动。如意外事故、自然灾害、突发故障等都是偶然变动变量。

在统计学定义上,这些组成要素又被定义为:

长期趋势:一个时间序列的平稳的长期走向。
循环波动:时间序列中超过一年的上升和下降的波动。
季节波动:时间序列中在一年内的变化模式,该模式每年重复一次。
不规则波动:许多分析者将不规则波动细分为突发波动和残差波动。突发波动是难以预测的,但可以识别。残差波动通常也称作偶然性波动,既不可预测也不可识别。

很多纯数据的可视化图也可以通过转变为时序数据的可视化进而寻找趋势,例如在专利分析中,常常根据申请人数量与专利申请量判断该专利领域属于何种发展时期,这也可转换为时序数据,趋势会更加明显。

举个时序数据的案例,商品的历史价格就是一个典型的时间序列数据,可以在一些网站上找到各个电子商务平台上商品的历史价格,探寻其趋势。

以某品牌手机的历史价格为例,可以发现,双十一时的价格确实有大幅下降,但是其在十一月初已经抬高了一波价格,双十一后不久价格又降低了很多,通过商品的历史价格时序数据,可以发现商品价格的变化趋势与我们的常规认知存在一些差异。对于商品价格时序数据的组成要素来说,可以这样解释:

长期趋势:长期来看,商品的价格是一个平稳的趋势,考虑到商品的生产成本、流通费用、税金和利润,商品的价格长期稳定是合理的。
循环波动:某个单品的历史价格难以有超过一年的上升和下降波动,所以在这个特定场景下可暂时不讨论。
季节波动:商品与季节存在依赖性的话,季节波动就会很明显,例如凉席、羽绒服等商品。而各种消费活动及节日也具有明显的季节特征。
不规则波动:突发的一些事件所造成的商品被抢购,例如新冠爆发后的口罩、消毒水等医疗用品。

2.自回归模型AR

自回归模型(Autoregressive Model)是用自身做回归变量的过程,即利用前期若干时刻的随机变量的线性组合来描述以后某时刻随机变量的线性回归模型,它是时间序列中的一种常见形式。

例如上述式子就是典型的自回归的例子,有点类似于“递推公式”的感觉,大致思路就是利用过去一个或多个时刻的观测量来预测当前时刻的模型,最好带上残差项。

像上图就是一个自回归的例子,有纯的自回归原序列和增加了不同程度的残差的序列,自回归模型其实就是针对现实带残差的数据,找到一个拟合较好的数学模型,类似通常做回归的步骤。

上图是AR模型的通常定义,AR模型需要满足以下条件:①保证模型的最高阶数为p。②要求随机干扰序列为零均值的白噪声序列。③当期的随机干扰与过去的序列值无关。

阶数就是指该AR模型中当期时序数据与最多过去几项时序数据自相关,这个类似马尔科夫链中的阶数定义,举现实例子就是,今天的天气可能和过去1~3天有关,但和过去1个月~3个月的天气就关系不大了,如果以天为单位,那么天气的AR模型可以是1~3阶的,但不会是30阶~90阶的,阶数越长,依赖性越低。

对于AR模型的求解,使用差分方程即可。在数学上,递推关系,也就是差分方程,是一种递推地定义一个序列的方程式:序列的每一项目是定义为前一项的函数。某些简单定义的递推关系式可能会表现出非常复杂的性质,他们属于数学中的非线性分析领域。所谓解一个递推关系式,也就是求其解析解,即关于n的非递归函数。

3.移动平均模型MA

MA模型,移动平均模型/滑动平均模型,模型参量法谱分析方法之一,也是现代谱估中常用的模型。移动平均模型不是在回归中使用预测变量的过去值,而是在类似回归的模型中使用过去的预测误差。

移动平均是以过去的残差项也就是白噪声来做线性组合,而AR模型是以过去的观察值来做线性组合。MA的出发点是通过组合残差项来观察残差的振动。

移平跨度n的合理选择是使用MA的关键,若n的取值较大,平滑作用较强,容易落后于事物可能的发展趋势。若n的取值较小,平滑作用较差,容易对随机干扰反应过渡。移平跨度n的选择应根据实际时间序列数据的特征和经验来选择。

移动平均值可以通过递推计算。通过原时间序列观测值可进行移动平均计算得到新的一组新的时间序列数据。举例说明:

(1)选择移平跨度n,根据对时间序列的观察,取移平跨度n=5。
(2)计算一次移动平均值。

选择2008年的一次滑动平均值预测2009年的用电量,即84.8亿千瓦时。预测结果明显有较大偏差,试分析原因。

联系前面提到过的重点,即移动跨度n的选择会影响预测效果,我们将n=5更换成n=3重新计算。

可以发现更换后的预测结果与实际结果更加接近。

普通的MA模型默认每个过去时刻的时序观测值的重要性是一致的,但通常我们知道越靠近当期的数据越为重要,因此可以给不同时期赋值,即加权MA模型。

考虑二次移动平均模型,二次移动平均是在一次移动平均的基础上,对有线性趋势的数据再进行一次移动平均,其基本公式为:

显然,二次移动平均值同一次移动平均值一样,也存在滞后偏差,因此,需要利用滞后偏差的演变规律求出平滑系数,而不能直接用于预测。MA模型通常针对有线性趋势的时间序列,时间序列的移动平均模型的一般形式可以表示为:

使用二次移动平均进行预测:

可以发现重复使用MA模型后,时序数据会越来越平滑。

4.复合模型

将AR模型与MA模型结合在一起,即为ARMA模型。

ARMA模型,谱分析方法之一。比AR模型与MA模型有较优良的谱分辨率性能,但参数估算比较繁琐。可以使用最小二乘法估计其模型参数,在呈现线性趋势时模型参数能以足够的精度估计出来,但很多时候序列是非线性的,这使得难以对ARMA模型参数的准确估值进行计算。理论上提出了一些ARMA模型参数的最佳估计方法,但是存在计算量大和不能保证收敛的缺点。因此工程上提出次最优方法,即分别估计AR和MA参数,而不是同时估计AR和MA参数,从而使计算量大大减少。

自回归差分移动平均模型ARIMA模型是针对非平稳时序数据的一种模型,ARIMA模型,与AR、MA、ARMA模型不同的地方在于,ARIMA模型针对的是非平稳序列,针对非平稳序列,首先进行差分变换,差分常用于以时间为统计维度的分析中,可以理解为下一个数值减去上一个数值。

非平稳序列通过差分运算使其变得平稳后,使用ARMA方法进行参数估计,从而预测,预测后再使用差分逆运算,得到原始序列的预测值。

时间序列分析的步骤:

1.时间序列的获取:时间序列的获取可以通过实验分析获得,亦或是相关部门的统计数据。对于得到的数据,首先应该检查是否有突兀点的存在,分析这些点的存在是因为人为的疏忽错误还有有其它原因。保证所获得数据的准确性是建立合适模型,是进行正确分析的第一步保障。
2.时间序列的预处理:时间序列的预处理包括两个方面的检验,平稳性检验和白噪声检验。能够适用ARMA模型进行分析预测的时间序列必须满足的条件是平稳非白噪声序列。对数据的平稳性进行检验是时间序列分析的重要步骤,一般通过时序图和相关图来检验时间序列的平稳性。时序图的特点是直观简单但是误差较大,自相关图即自相关和偏自相关函数图相对复杂但是结果更加准确。对于非平稳时间序列中若存在增长或下降趋势,则需要进行差分处理然后进行平稳性检验直至平稳为止。其中,差分的次数就是模型ARIMA(p,d,q)的阶数,理论上说,差分的次数越多,对时序信息的非平稳确定性信息的提取越充分,但是从理论上说,差分的次数并非越多越好,每一次差分运算,都会造成信息的损失,所以应当避免过分的差分,一般在应用中,差分的阶数不超过2。

3.模型识别:模型识别即从已知的模型中选择一个与给出的时间序列过程相吻合的模型。

自相关系数ACF:描述的是时间序列观测值与其过去的观测值之间的线性相关性。
偏自相关系数PACF:描述的是在给定中间观测值的条件下,时间序列观测值预期过去的观测值之间的线性相关性。

拖尾指序列以指数率单调递减或震荡衰减,而截尾指序列从某个时点变得非常小。

4.模型定阶:在确定了模型的类型之后,还需要知道模型的阶数,可使用AIC、BIC准则法进行定阶。
5.参数估计:对模型的参数进行估计的方法通常有相关矩估计法、最小二乘估计以及极大似然估计等。
6.模型验证:型的验证主要是验证模型的拟合效果,如果模型完全或者基本解释了系统数掘的相关性,那么模型的噪声序列为白噪声序列,那么模型的验证也就是噪声序列的独立性检验。

5.指数平滑法

对原始数据进行加权平均,得到原始数据的平滑值,然后在平滑值的基础上构建预测模型,用以对未来进行预测的一种方法,是对移动平均法的改进和发展,能够利用加权平均消除时间序列的偶然性变动,提高近期数据在预测中的重要性。

实际上这种平滑处理就是yt与St-1的一个凸组合:

平滑指数α的取值决定了数据在平滑处理和预测的过程中,新旧数据所占的分布比率,对预测结果产生直接的影响。α越小,修匀效果越好,α越大,修匀效果越不明显。实际应用中,一般取α=2/(n+1)

同理,指数平滑法也可以重复使用多次,二次指数平滑和三次指数平滑如下:

时间序列分析的拟合类方法是假设时间序列服从一定的规律,通过一些函数曲线去拟合时间序列的观测值,实现用函数对其进行描述,某种层面上可以理解为一种回归分析,只不过自变量是时间变量。生长曲线法是以饱和指数曲线、逻辑曲线、龚珀兹曲线等指数函数完成拟合;多项式曲线法是以多项式幂函数的组合完成拟合。

6.其他

季节指数

一套典型的月度指数包含12个指数,代表12个月的数据。逻辑上按季度发布的数据有4个典型季节指数。关于时间序列典型季节波动的度量,已经提出了许多方法。最常用的计算典型季节特征的方法称为比率移动平均法。
①收集历年(通常至少有三年)各月或各季的统计资料(观察值)。
②求出各年同月或同季观察值的平均数(用A表示)。
③求历年间所有月份或季度的平均值(用B表示)。
④计算各月或各季度的季节指数,即C=A/B。
⑤根据未来年度的全年趋势预测值,求出各月或各季度的平均趋势预测值,然后乘以相应季节指数,就得未来年度内各月和各季度包括季节变动的预测值。

杜宾-瓦特森统计量

杜宾-瓦特森统计量可以用来检测回归分析中的残差项是否存在自我相关。回归分析的传统假设之一就是残差序列是独立的。这意味着,残差没有一个固定模型,残差不是高度相关的,并且不能在一段时期内连续出现正的残差或连续出现负的残差。在时间序列数据中,相继出现的残差之间彼此相关是因为一个时期的时间常常会影响到下一个时期的事件。
如果残差是相关的,当我们对回归系数进行检验时就会出现问题,因此,当我们利用估计的多元标准误差建立一个置信区间或预测区间时,可能不会产生正确的结果。需要利用杜宾-瓦特森统计量对相继出现的残差之间的相关强度的度量r进行假设检验。

以上是针对时序数据的一些传统信息分析方法,当然,时序数据也是典型的序列数据,因此也可以直接使用循环神经网络对其进行建模,以及一些随机过程方法。