时间序列的主成分分析:意义?

机器算法验证 时间序列 主成分分析
2022-03-15 11:39:11

我了解 PCA 的工作原理,因为我练习它是为了了解某些对象相对于某些变量的排名。我的问题是关于 PCA 对相关变量时间序列分析的扩展。

看看PCA 可以应用于时间序列数据吗?,我对所谓的奇异谱分析 (SSA) 进行了一些研究,更具体地说,是多变量 - SSA (M-SSA)。

这基本上就是我从所有这些中理解的。以一组 P 变量为例,在 N 个不同的对象上观察到。经典的 PCA 允许您通过协方差矩阵的第一个特征向量提取其中一个 P 变量实际上与表示您的 N 个不同对象的集合有关。

对 P 变量的时间序列使用 SSA(或 M-SSA),将 N 个“对象”替换为 (N ?) 时间序列的滞后版本,以便通过 P 特征信号的第一个特征向量(长度为时间序列的)代表你们中的大多数可变时间序列。

我的问题是:如果我直接用时间序列替换“N 个对象”,我会提取什么样的信息?这意味着每个观察都将在“对象”上。在这种情况下,我可以直接应用“经典 PCA”,它会给我长度为 P 的特征向量。结果是什么?

例如,与第一个特征向量的 P 变量相关的系数是否告诉我这些变量与这些时间序列的研究有多大关系?

我希望我能说清楚...

1个回答

如果我理解正确,您的问题是关于将 MSSA 用于时间序列系统的原因,是否可以将 PCA(或 SVD)应用于该系统。

一般的答案是,PCA 的结果主要是非结构化的近似(我的意思是从时间结构的角度来看),而 SSA 考虑了时间结构。请注意,SSA 与所谓的 SLRA(结构化低秩近似)有关。

另一个(尽管这里有一点)答案是,如果你有 m 个长度为 N,m < N 的时间序列,那么 PCA 只提供 m 个分量。对于m=1,应用PCA是没有意义的;对于 m=2,即使尝试分解为趋势、振荡和噪声,两个分量也可能不够。

一个更聪明的例子与分解为信号和噪声有关,当信号由几个 SSA 分量描述时(如果时间序列很好地近似于多项式、指数和正弦曲线的乘积的有限和)。

例如,让系统中的时间序列由具有一些小信噪比 (SNR) 的噪声正弦曲线组成。PCA 无助于提取任何时间序列长度 N 的信号。SSA 将 SVD(没有中心化/标准化的 PCA)应用于轨迹矩阵,该矩阵由长度为 L 的滞后子序列组成。对于足够大的 L 和 N,SSA 能够近似提取信号;对于任何信噪比!

当时间序列由诸如趋势和振荡之类的时间分量组成时,同样的效果也是如此。PCA 的直接近似无助于提取其中一个分量。由于 SVD 的双正交性,SSA 能够做到这一点。有关“可分离性”概念的描述,请参见 SSA 文献。

因此,对于时间序列,PCA 通常不起作用。另一个重要的问题是,将 MSSA 应用于时间序列系统或将 SSA 分别应用于每个时间序列,哪个更好。