多元时间序列的 SVD 分解与模式
博客列表 主页

对于一个 $n\times T$ 的多元时间序列矩阵 $X$,其中 $n$ 是通道数(或变量数),$T$ 是时间节点(观测数)。对其进行 SVD 分解,可以得到 $X=U\Sigma V^T$。下面我们来详细解释分解后得到的各个矩阵的意义及其应用。

整体的含义

对于矩阵 $U$,它代表了数据中的空间模式,其每一列都是特征通道的某种线性组合。

对于矩阵 $V$,它代表了数据中的时间模式,其每一列对应于上述空间模式的时间演化波形。

对于奇异值矩阵 $\Sigma$,它代表了空间-时间模式对的重要性。奇异值越大,对应的模式在原始数据中占比越重,解释的方差越多。

物理意义的直观例子

对于空间模式 $U$ 的每一个列向量 $u_i$,我们考虑奇异值最大的那个列向量 $u_1$,也就是最重要的空间模式:

  • 对于多地区的气温序列研究,我们可能发现 $u_1$ 中所有表示北方地区的元素都较大,而南方地区的元素较小。这就意味着最重要的温度变化模式是全国空间上的差异(例如南北差异)。
  • 对于脑电数据(EEG),$u_1$ 可能意味着特定脑区的激活强度更高。

总而言之,空间模式 $U$ 度量了我们观测空间上的整体差异

然后我们讨论最重要的时间模式 $v_1$。它是一个时间序列:

  • 对于气温问题,$v_1$ 可能呈现季节性,代表了气温随时间的波动情况。
  • 对于脑电数据,$v_1$ 可能对应于特定脑区被激活的时刻。

至于奇异值矩阵 $\Sigma$,它负责度量这个(空间-时间)效应对整体数据的贡献程度

深入分析与应用

1. 研究通道间的差异与联系(侧重矩阵 $U$)

当我们侧重于研究各个时间序列通道之间的差异和联系的时候,我们应该着重研究矩阵 $U$

  • 社群发现:当在最重要的向量中,部分元素的绝对值都很大的通道,往往存在很强的关联,形成对应的社群。
  • 关键节点识别:那些在多个 $u_i$ 向量中都占据很大权重的通道,往往是系统的关键节点。
  • 异常检测:如果我们已知某些通道应紧密联系,但数据分析结果显示它们在 $U$ 中的表现不一致,那可能说明数据产生了异常。

2. 研究时间的动态特性(侧重矩阵 $V$)

当我们侧重研究时间的动态特性的时候,就应该侧重研究矩阵 $V$。

  • 频率分析:对最重要的时间模式向量 $v_i$ 进行 FFT(快速傅里叶变换),就可以找到最主要的震荡频率。
  • 事件监测:某个空间模式可能代表一个特定的事件。通过监测该事件对应的时间模式,可以确认事件的发生。
  • 趋势捕捉:最重要的时间模式一般会捕捉最缓慢且持久的全局趋势。随着奇异值的下降,对应的模式持久程度通常不断降低,重要性也随之下降(高频噪声通常在末尾)。

3. 数据压缩

SVD 分解也可以用于数据压缩,类似于其他的矩阵分解方式。我们可以选择降低矩阵 $U$ 或者矩阵 $V$ 的维数:

  • 降低 $U$ 的维数:侧重于降低特征(通道)的数量。
  • 降低 $V$ 的维数:侧重于降低时间序列的长度,用少数具有代表性的时刻来表示整个样本。

这在观测事件过长($T$ 很大)也就是样本空间过大的时候可以考虑。