在主成分分析 (PCA) 中,我们选择右奇异向量 () 而不是左奇异向量 () 作为主成分方向,主要是因为 PCA 的目标和数据的几何结构决定了这个选择。以下是详细解释:


1. PCA 的目标

PCA 的目标是找到一个低维空间,使得:

  1. 数据在投影方向上的方差最大化;
  2. 投影后的数据尽可能保留原始数据的主要信息。

数据的方差直接与协方差矩阵 的特征值相关,而 的特征向量正是右奇异向量 。因此,选择右奇异向量是直接与 PCA 的目标相匹配的。


2. 左奇异向量和右奇异向量的几何意义

(1) 右奇异向量 :定义列空间的主要方向

  • 是数据矩阵 列空间的正交基(即主成分方向)。
  • PCA 的目标是找到列空间的主成分方向,这些方向是 的特征向量,而这些正是右奇异向量。

(2) 左奇异向量 :定义行空间的主要方向

  • 是数据矩阵 行空间的正交基。
  • 的列向量是 的特征向量,反映的是样本之间的关系,而不是特征之间的关系。

为什么选择 而不是

PCA 的重点是找到一个能够表示特征之间主要变化模式的方向(即列空间的变化模式),而不是关注样本之间的变化。因此,我们选择了右奇异向量


3. 方差的计算

  • 方差的大小是主成分的重要指标,它衡量了数据在某个方向上的分散程度。
  • 投影到主成分方向后的方差公式为: 这里的 是投影方向的单位向量。

右奇异向量 的列向量恰好是协方差矩阵 的特征向量,它最大化了这个方差。而左奇异向量 仅与 的特征值有关,并不能直接反映列空间的变化信息。


4. 数据降维的过程

降维的过程可以通过奇异值分解 (SVD) 来描述:

  1. 右奇异向量

    • 列向量是协方差矩阵 的特征向量。
    • 它表示数据列空间的主要变化方向,决定了降维后的低维子空间。
  2. 左奇异向量

    • 列向量是 的特征向量。
    • 它描述了数据样本之间的主要变化方向,与 PCA 的核心目标不一致。

5. 直观理解

  • 右奇异向量 () 是列空间的“主方向”

    • 如果你把数据矩阵 看作一个集合,每一列是一个特征,那么 PCA 是从这些特征中提取主要方向。
    • 定义了这些“主方向”。
  • 左奇异向量 () 是行空间的“主方向”

    • 它定义了样本在行空间中的分布,但这不是 PCA 的主要目标。

6. 总结:为什么选择右奇异向量?

  • 目标对齐:PCA 的目标是找到列空间的主方向,右奇异向量正是描述列空间的主方向。
  • 方差最大化:右奇异向量与协方差矩阵 的特征值、特征向量直接相关。
  • 几何意义:右奇异向量反映的是特征之间的关系,而左奇异向量反映的是样本之间的关系。

因此,在 PCA 中,我们选择右奇异向量来表示主成分方向,而不是左奇异向量。

t-SVD

t-SVD

理解该部分涉及到 t-SVD(tensor singular value decomposition,张量奇异值分解) 的知识及傅里叶变换在其中的应用。下面我们详细介绍其中的内容。

t-SVD 基础知识

t-SVD 是一种将矩阵奇异值分解(SVD)推广到三阶张量的分解方法。假设我们有一个三阶张量 (例如 矩阵的集合),t-SVD 的目的是将这个张量分解为类似 SVD 的结构,以便于解决特定优化问题,如核范数(nuclear norm)最小化等。

t-SVD 的分解公式如下:

其中:

  • 是张量的正交因子(相当于矩阵 SVD 的左、右奇异向量矩阵的推广),
  • 是对角张量,包含奇异值。

在这种分解形式中, * 操作符表示 张量卷积

t-SVD 的步骤和傅里叶变换的应用

为了高效地进行 t-SVD,我们通常将 傅里叶变换 应用于张量的第三维度(即“深度”或“通道”维度),将问题转换到频域处理。具体步骤如下:

  1. 傅里叶变换:我们首先对张量 的第三维应用离散傅里叶变换(DFT),得到 ,即在频域下的表示:

    变换后的张量 仍然是一个三阶张量,但其第三维表示的是不同的频率分量。

  2. 分解每个频率切片:在频域下, 的每个“切片”(对应于每个频率)都是一个 的矩阵,可以对每个频率切片进行普通矩阵的奇异值分解(SVD)。这样,每个切片可以分解为:

    其中 是频率索引, 分别是该频率切片的左、右奇异矩阵, 是奇异值对角矩阵。

  3. 组合 t-SVD 分解结果:将所有频率切片的分解结果重新组合得到整个频域下的张量分解,即

  4. 逆傅里叶变换:将 在频域下的表示逆变换回时域,得到最终的分解

核范数最小化及软阈值函数

在步骤 (13) 的公式中,张量核范数最小化问题的解决方案涉及一个软阈值(shrinkage)操作,这个操作在频域下进行。

在这里, 是通过对 张量进行软阈值操作得到的。这个操作定义了 张量,该张量的对角元素通过 进行缩放,从而对奇异值施加收缩操作,使得较小的奇异值趋于零,以达到核范数最小化的目的。

软阈值操作的解释

式 (13) 的软阈值函数 定义为 ,其中 是一个三阶对角张量,在傅里叶域下,它的元素表示为:

这意味着在频域下,对奇异值张量 中的每个对角元素进行缩放,如果 的值小于 ,则它会被设置为 0。这种方法类似于传统矩阵核范数最小化中的软阈值操作,将较小的奇异值衰减或直接变为零,从而达到张量的低秩逼近。

总结

  1. t-SVD 利用傅里叶变换将三阶张量的分解问题简化为各频率切片上的矩阵 SVD 分解。
  2. 核范数最小化 是通过对奇异值进行软阈值操作实现的,在频域中使用缩放张量 来实现张量的低秩逼近。
  3. 软阈值函数作用于张量的奇异值,从而达到去除噪声或约束低秩结构的效果。
Link to original