时间序列模型

混沌时间序列

混沌时间序列是一种确定系统中出现的无规则的运动。混沌的离散情况常常表现为混沌时间序列,混沌时间序列是由混沌模型生成的具有混沌特性的时间序列,混沌时间序列中蕴涵着系统丰富的动力学信息,混沌时间序列是混沌理论通向现实世界的一个桥梁,是混沌的一个重要应用领域。

混沌理论目的是要揭示貌似随机的现象背后可能隐藏的简单规律,以求发现一大类复杂问题普遍遵循的共同规律。

人们对时间序列的分析研究已有数十年的历史了,但主要集中在线性方法的研究上。近年来,对非线性系统尤其是混沌背景下产生的时间序列的分析越来越受到人们的重视。从时间序列研究混沌,Packard等(1980)提出了重构相空间理论,==该理论认为:对于决定系统长期演化的任一变量的时间演化,均包含了系统所有变量长期演化的信息.因此,可通过利用系统长期演化的任一变量时间序列来研究系统的混沌行为。==

时间序列重构相空间有两种方法:导数重构法坐标延迟重构法。假设时间序列是${x(i):i=1,\cdots,n}$,而后者的本质则是通过一维的时间序列${x(i)}$的不同延迟时间$\tau$来构建$d$维的相空间矢量:

y(i)=(x(i),,x(i+(d1)τ)),where 1in(d1)τy(i) = (x(i),\cdots,x(i+(d-1)\tau)),where\ 1\le i\ge n-(d-1)\tau

1981年Takens提出嵌入定理:对于无限长,无噪声的$d'$维混沌吸引子的一维标量时间序列${x(i):1\le i\le n}$都可以拓扑不变的意义下找到一个$d$维的嵌入相空间,只要维数$d\ge 2d'+1$。根据Takens嵌入定理,可以从一维混沌时间序列中重构一个原动力系统在拓扑意义下一样的相空间,混沌时间序列的判定,分析和预测都是这个重构的相空间中进行的,因此相空间的重构就是混沌序列研究的关键。

相空间重构

概念

相空间重构技术有两个关键的参数:嵌入的维数 $d$和延迟时间$\tau$在 Takens 嵌入定理中,嵌入维数和延迟时间都只是理论上证明了其存在性,并没有给出具体的表达式,而且实际应用中时间序列都是有噪声的有限序列,嵌入维数和时间延迟必须要根据实际的情况来选取合适的值。

关于嵌入维数$d$和延迟时间 $\tau$的取值,通常有两种观点:第一种观点认为$d$和$\tau$是互不相关的,先求出延迟时间之后再根据它求出合适的嵌入维数。求出延迟时间$\tau$比较常用的方法主要有自相关法平均位移法复自相关法互信息法等,关键的地方就是使得原时间序列经过时间延迟之后可以作为独立的坐标来使用。同时寻找嵌入维数的方法主要是几何不变量方法虚假最临近法(False Nearest Neighbors)和它改进之后的 Cao 方法等。第二种观点则是认为延迟时间和嵌入维数是相关的。1996 年 Kugiumtzis 提出的时间窗长度则是综合考虑两者的重要参数。1999年,Kim 等人提出了 C-C 方法,该方法使用关联积分同时估计出延迟时间和时间窗

延迟时间$\tau$的确定

如果延迟时间$\tau$太小,则相空间向量:

y(i)=(x(i),,x(i+(d1)τ),where 1in(d1)τy(i) = (x(i),\cdots,x(i+(d-1)\tau),where\ 1\le i\le n-(d-1)\tau

中的两个坐标分量$x(i+j\tau)$与$x(i+(j+1)\tau)$在数值上非常接近,以至于无法相互区分,从而无法提供两个独立的坐标分量;但是如果延迟时间$\tau$太大的话,则两个坐标分量又会出现一种完全独立的情况,混沌吸引子的轨迹在两个方向上的投影就毫无相关性可言。因此需要合适的方法来确定一个合适的延迟时间$\tau$从而在独立和相关两者之间达到一种平衡。

自相关系数法

自相关函数是求延迟时间$\tau$比较简单的一种方法,它的主要理念就是提取序列之间的线性相关性。对于混沌序列$x(1),x(2),\cdots,x(n)$可以写出其自相关函数如下:

R(τ)=1ni=1nτx(i)x(i+τ)R(\tau) = \frac{1}{n}\sum\limits_{i=1}^{n-\tau}x(i)\cdot x(i+\tau)

此时就可以使用已知的数据$x(1),\cdots,x(n)$来做出自相关函数$R(\tau)$随着延迟时间$\tau$变化的图像,当自相关函数下降到初始值$R(0)$的$1-e^{-1}$时,i.e. $R(\tau)=(1-e^{-1})R(0)$所得到的时间$\tau$也就是重构相空间的延迟时间。虽然自相关函数法是一种简便有效的计算延迟时间的方法,但是它仅仅能够提取时间序列的线性相关性。根据自相关函数法可以让$x(i),x(i+\tau)$以及$x(i+\tau),x(i+2\tau)$之间不相关,但是$x(i),x(i+2\tau)$之间的相关性可能会很强。这一点意味着这种方法并不能够有效的推广到高维的研究。而且选择下降系数$1-e^{-1}$时,这一点可能有点主观性,需要根据具体的情况做适当的调整。因此再总结了自相关法的不足之后,下面介绍一种判断系统非线性关系性的一种方法:交互信息法。

交互信息法

在考虑了以上方法的局限性之后,Fraser 和 Swinney 提出了交互信息法(Mutual Information Method)。假设两个离散信息系统${s_1,\cdots,s_m}$,${q_1,\cdots,q_n}$,所构成的系统$S$和$Q$,由相对熵可知:

H(S)=i=1mPS(si)log2PS(si),H(Q)=j=1nPQ(qj)log2PQ(qj)H(S) = -\sum\limits_{i=1}^m P_S(s_i)\log_2P_S(s_i), H(Q) = -\sum\limits_{j=1}^n P_Q(q_j)\log_2P_Q(q_j)

其中$P_S(s_i)$,$P_Q(q_j)$分别是$S$和$Q$中事件$s_i$和$q_j$的概率。交互信息的计算公式是:

I(S,Q)=H(S)+H(Q)H(S,Q)I(S,Q) = H(S) + H(Q) - H(S,Q)

其中,

H(S,Q)=i=1mj=1nPS,Q(si,qj)log2PS,Q(si,qj)H(S,Q) = -\sum\limits_{i=1}^m\sum\limits_{j=1}^nP_{S,Q}(s_i,q_j)\log_2P_{S,Q}(s_i,q_j)

这里的$P_{S,Q}(s_i,q_j)$称为事件$s_i$和事件$q_j$的联合分布概率。交互信息标准化就是$I(S,Q)=I(S,Q) / \sqrt{H(S)\times H(Q)}$。

现在,通过信息论的方法来计算延迟时间$\tau$:

定义$(S,Q)=(x(i),x(i+\tau)),where\ 1\le i\le n-\tau$,也就是$S$代表时间$x(i)$,$Q$代表时间$x(i+\tau)$。

那么$I(S,Q)$则是关于延迟时间$\tau$的函数,可以写成$I(\tau)$,它的大小表示在已知系统$S$,也就是$x(i)$的情况下,系统$Q$也就是$x(i+\tau)$的确定性的大小。$I(\tau)=0$表示$x(i)$和$x(i+\tau)$是完全不可预测的,也就是说两者完全不相关。而$I(\tau)$的第一个极小值,则表示了$x(i)$和$x(i+\tau)$是最大可能的不相关,重构时使用$I(\tau)$的第一个极小值最为最优的延迟时间$\tau$。

交互信息法的关键在于怎么计算联合概率分布$P_{S,Q}(s_i,q_j)$以及$S$和$Q$系统的概率分布$P_S(s_i)$和$P_Q(q_j)$。这里采用的方法是等间距格子法:

令$(S,Q)$=$(x(i),x(i+\tau)),where\ 1\le i\le n-\tau$,在$(S,Q)$平面用一个矩形包含上面所有的点。将矩形$S$方向上等分成$M_1$份, $Q$方向等分成$M_2$份(注: $M_1,M_2$取值100~200之间即可)。那么在$S$方向上格子的长度就是$\epsilon_1$,$Q$方向上格子的长度就是$\epsilon_2$,假设$(a,b)$是$(S,Q)$平面矩形左下角的顶点坐标:

如果$(i-1)\epsilon_1 \le s-a \lt i\epsilon_1$,那么$s$在第$i$个格子中,对$Row[i]$做一次记录;

如果$(j-1)\epsilon_2 \le q-b\lt j\epsilon_2$,那么$q$在第$j$个格子中,对$Col[j]$做一次记录。

由上可知,$x(i)$和$x(i+\tau)$序列的总数都是$n-\tau$,那么:

PS(i)=Row[i]/(nτ),where 1iM1PQ(j)=Col[j]/(nτ),where 1jM2P_S(i) = Row[i] / (n-\tau),where\ 1\le i\le M_1\\ P_Q(j) = Col[j] / (n-\tau),where\ 1\le j \le M_2

如果$(i-1)\epsilon_1 \le s-a \lt i\epsilon_1$且$(j-1)\epsilon_2 \le q-b \lt j\epsilon_2 $,则$(s,q)$在标号为$(i,j)$的格子中,对$T[i][j]$做一次记录,那么:

PS,Q(i,j)=T[i][j]/(nτ)2,where 1iM1,1jM2P_{S,Q}(i,j) = T[i][j] / (n-\tau)^2 ,where\ 1\le i \le M_1,1\le j\le M_2

根据以上信息论的公式,可以得到:

H(S)=i=1M1PS(i)log2PS(i)H(Q)=j=1M2PQ(j)log2PQ(j)H(S,Q)=i=1M1j=1M2PS,Q(i,j)log2PS,Q(i,j)I(S,Q)=H(S)+H(Q)H(S,Q)I(S,Q)=I(S,Q)/H(S)×H(Q)\begin{align} H(S) &= -\sum\limits_{i=1}^{M_1}P_S(i)\log_2P_S(i) \\ H(Q) &= -\sum\limits_{j=1}^{M_2}P_Q(j)\log_2P_Q(j) \\ H(S,Q) &= -\sum\limits_{i=1}^{M_1}\sum\limits_{j=1}^{M_2}P_{S,Q}(i,j)\log_2P_{S,Q}(i,j) \\ I(S,Q) &= H(S) + H(Q) - H(S,Q) \\ I(S,Q) &= I(S,Q) / \sqrt{H(S)\times H(Q)} \end{align}

交互信息曲线$I(\tau)$第一次下降到极小值所对应的延迟时间$I(S,Q)$则是最佳延时时间。

嵌入维数$d$的确定

几何不变量法

为了确定嵌入维数$d$实际应用中通常的方法是计算吸引子的某些几何不变量(如关联维数,Lyapunov 指数等)。选择好延迟时间$\tau$之后逐渐增加维数$d$直到他们停止变化为止。从Takens 嵌入定理分析可知,这些几何不变量具有吸引子的几何性质,当维数$d$大于最小嵌入维数的时候,几何结构已经被完全打开,此时这些几何不变量与嵌入的维数无关。基于此理论,可以选择吸引子的几何不变量停止变化时的嵌入维数$d$作为重构的相空间维数。

虚假最临近点法

从几何的观点来看,混沌时间序列是高维相空间混沌运动的轨迹在一维空间的投影,在这个投影的过程中,混沌运动的轨迹就会被扭曲。高维相空间并不相邻的两个点投影到一维空间上有的时候就会成为相邻的两点,也就是虚假邻点。重构相空间,实际上就是从混沌时间序列中恢复混沌运动的轨迹,随着嵌入维数的增大,混沌运动的轨道就会被打开,虚假邻点就会被逐渐剔除,从而整个混沌运动的轨迹得到恢复,这个思想就是虚假最临近点法的关键。

在$d$维相空间中,每一个矢量

yi(d)=(x(i),,x(i+(d1)τ)),where 1in(d1)τy_i(d)=(x(i),\cdots,x(i+(d-1)\tau)),where\ 1\le i\le n-(d-1)\tau

都有一个欧几里得距离的最邻近点$y_{n(i,d)}(d),(n(i,d)\not=i,1\le n(i,d)\le n-(d-1)\tau)$其距离是:

Ri(d)=yi(d)yn(i,d)(d)2R_i(d) = ||y_i(d)-y_{n(i,d)}(d)||_2

当相空间的维数从$d$变成$d+1$时,这两个点的距离就会发生变化,新的距离是$R_i(d+1)$,并且

(Ri(d+1))2=(Ri(d))2+x(i+dτ)x(n(i,d)+dτ)22(R_i(d+1))^2 = (R_i(d))^2 + ||x(i+d\tau)-x(n(i,d)+d\tau)||^2_2

如果$R_i(d+1)$比$R_i(d)$大很多,那么就可以认为是高维混沌引子中两个不相邻得点投影到低维坐标上变成相邻的两点造成的,这样的临近点是虚假的,令:

a1(i,d)=x(i+dτ)x(n(i,d)+dτ)22/Rd(i)a_1(i,d) = ||x(i+d\tau)-x(n(i,d)+d\tau)||^2_2 / R_d(i)

如果$a_1(i,d)\gt R_{\tau} \in [10,50]$,$y_{n(i,d)}(d)$就是$y_i(d)$的虚假最临近点。这里的$R_{\tau}$是阀值。

对于实际的混沌时间序列,从嵌入维数的最小值$2$开始,计算虚假最临近点的比例,然后逐渐增加维数$d$直到虚假最临近点的比例小于 5% 或者虚假最临近点的不再随着$d$的增加而减少时,可以认为混沌吸引子已经完全打开,此时的$d$就是嵌入维数。在相空间重构方面,虚假最临近点法(FNN)被认为是计算嵌入维数很有效的方法之一。

虚假最临近点法的改进-Cao方法

虚假最临近点法对数据的噪声比较敏感,而且实际操作中需要选择阀值$R_{\tau}$具有很强的主观性。此时 Cao Liangyue 教授提出了改进的 FNN 方法,此方法计算时只需要延迟时间$\tau$一个参数,用较小的数据量就可以求的嵌入维数$d$。

扩展阅读

时间序列模型之相空间重构模型:https://zhuanlan.zhihu.com/p/32910931

最后更新于

这有帮助吗?