奇异谱分析
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
奇异谱分析
奇异谱分析是近年来兴起的一种研究非线性时间序列数据的强大的方法。它根据所观测到的时间序列构造出轨迹矩阵,并对轨迹矩阵进行分解、重构,从而提取出代表原时间序列不同成分的信号。如长期趋势信号、周期信号、噪声信号等,从而对时间序列的结构进行分析,并可进一步预测。
奇异谱分析(SSA)方法最早由colebrook于1978年首先在海洋学研究中提出并使用。Fracrich用一维时间序列在延迟相空间中做EOF展开,再通过显著性检验研究确定有意义的特征成分的个数,据此估计气候吸引子的维数。这个工作被认为是SSA在气象学中的最早应用。Hassani将这种方法引人到社会问题研究中来,并用其预测了美国交通事故的月时间序列数据。N.Golyandina给出了奇异谱分析的扩展形式一多通道奇异谱分析的算法,并由Hossein Hassani用来对英镑/美元汇率进行了分析预测,取得了较好的效果。
奇异谱分析的基本思想是,将所观测到的一维时间序列数据:Y(T)=(y(1),⋯,y(T))转化为其轨迹矩阵:
其中,m为选取的窗口长度,n=T-m+1,计算X.T*X并对其进行奇异值分解(SVD),从而得到其m个特征值:λ1≥λ2≥⋯≥λm≥0,及其相应的特征向量将每一个特征值所代表的信号进行分析组合,重构出新的时间序列。奇异谱分析过程可分成嵌人、SVD分解、分组、重构
四个步骤,接下来我们详细地介绍具体算法。
1)嵌入
选择适当的窗口长度:m(2≤m≤T),将所观测到的一维金融时间序列数据转化为多维序列:X1,...Xn,(Xi=(yi,...,yi+m−1),n=T−m+1),得到轨迹矩阵:X=[X1,...,Xn]=(xij)n,mi,j=1。
这里m的选取不宜超过整个数据长度的1/3,如可根据事先经验大致确定数据的周期特征,则m的选取最好为周期的整数倍。
2) svd分解(奇异值分解)
V是n*n的正交阵,U是m*m的正交阵,Σ是m*n的对角阵。
首先,我们将一个矩阵A的转置* A,将会得到一个方阵,我们用这个方阵求特征值可以得到:
这里得到的v,就是我们上面的右奇异向量。此外我们还可以得到:
σ就是奇异值,u就是左奇异向量。奇异值σ跟特征值类似,在矩阵Σ中也是从大到小排列,而且σ的减少特别的快。在很多情况下,前10%甚至1%的奇异值的和就占了全部的奇异值之和的99%以上了。也就是说,我们也可以用前r大的奇异值来近似描述矩阵:
r是一个远小于m、n的数,右边的三个矩阵相乘的结果将会是一个接近于A的矩阵,在这儿,r越接近于n,则相乘的结果越接近于A。
3) 分组
假设有N个奇异值a1,a2...aN。定义第i个奇异之的贡献率为:ai/∑Ni=1ai
我们选择前(从大到小排)r个奇异值,使他们的贡献率之和大于一定阈值(例如80%) 4) 重构
按照上面的公式完成对矩阵的重构,再对原序列重构。
对角平均法重构原序列:
假设经过svd分解重构后的矩阵为:
则重构序列,
写成公式: