1. PCA 的目标

  • 降维:减少数据集的列(特征数量),尽量保留原始信息。
  • 数据行(观测数量)不变 → 数据“同样高”但“更瘦”。
  • 主要动机:
    1. 数据特征太多,处理成本高(几百、几千列)。
    2. 便于可视化,尤其是二维/三维分析。

2. 直接删列的问题

  • 简单删除特征虽然降维了,但会丢掉很多有用信息。
  • PCA 的思路:用新的少量特征代替原来的多特征,尽量保留信息。

3. 降维的数学方法:投影(Projection)

  • 将数据点映射到低维空间(用更少的基向量表示)。
  • 举例:二维数据 投影到直线
    • 投影方向向量:
    • 投影步骤:
      1. 与方向向量做点积(Dot Product) → 得到投影长度(即在该方向上的坐标值,也可理解为该方向的“权重/重要性”)。
      2. 方向向量归一化(长度变 1):。减少数值计算负担(去掉方向向量自身的长度影响,让投影长度只反映数据在该方向上的真实分量)。
      3. 投影公式:
  • 投影后:原 2 列数据变成 1 列(沿该方向的坐标)。

4. 多方向投影

  • 若投影到两个方向(平面),取两个单位向量 组成矩阵:
  • 投影公式:
  • 投影后数据:行数不变,列数减少(例如从 列变为 2 列)。

5. 核心思想

  • PCA 的本质:
    • 选择“最佳的投影方向”降维(保留最大方差信息)。
    • 投影运算是 矩阵 × 单位向量(或向量组)
  • 关键问题:如何选最优投影向量 → PCA 后续主题。

PCA 投影与信息保留

1. 目标

  • 降维:把二维数据(平面上的点)变成一维数据(线上的点)。

  • 通过选择合适的投影方向,在减少特征数的同时保留尽可能多的信息


2. 步骤示例

  1. 数据中心化

    • 数据不一定以 为中心,所以先将数据平移,使均值在原点。
  2. 尝试不同投影方向

  3. 比较投影效果

    • 投影后点的分布范围(spread)分布越大 → 保留的信息越多。

3. 核心思想

  • PCA 会自动找到那个让投影后数据最分散的方向 → 即最大化方差的方向

  • 第一主成分:方差最大方向

  • 第二主成分:与第一主成分正交且方差次大的方向(依此类推)


4. 好处

  • 数据更易管理(维度更小)

  • 信息丢失最小化(最大化方差)

  • 更易可视化(低维数据方便绘图、观察模式)

  • 降低噪声影响(次要方向往往是噪声)

PCA 所需的统计基础

1. 均值(Mean)

  • 定义:所有观测值的平均数。
  • 对二维数据
  • 几何意义:数据中心点(质心)。

2. 方差(Variance)

  • 作用:衡量单个变量的“分散程度”。
  • 公式(单变量 ):
  • 几何意义:平均平方距离(越大 → 数据越分散)。
  • 例子
    • 沿 轴数据更分散 → 较大
    • 沿 轴数据较集中 → 较小

3. 方差的局限性

  • 方差只能描述单个变量的分散程度,不能反映两个变量之间的关系。
  • 两个不同数据集可能 一样,但模式完全不同。

4. 协方差(Covariance)

  • 作用:衡量两个变量之间的变化关系(趋势方向)。
  • 公式(变量 ):
  • 符号含义
    • 增大时 也增大(正相关趋势)
    • 增大时 减小(负相关趋势)
    • → 无明显线性关系
  • 几何解释
    • 数据中心化后,平面被分成四象限。
    • 坐标差值 的乘积:
      • 同号 → 对协方差贡献为正
      • 异号 → 对协方差贡献为负
    • 协方差本质上是平均正负象限的平衡结果

5. 在 PCA 中的作用

  • 方差:判断单个投影方向的数据分散程度(越大越好)。
  • 协方差:反映不同特征之间的关联性。
  • PCA 会用 Covariance Matrix 找出方差最大的方向(主成分方向),以最大限度保留信息。

PCA 从协方差矩阵到降维的全过程

1. 数据中心化

假设我们有 4 个二维点:

  1. 计算均值:
  1. 中心化:

2. 协方差矩阵

公式:

计算过程:

  1. 转置:
  1. 矩阵乘法:
  1. 除以

3. 特征值与特征向量

,得到:

对应特征向量:

几何意义:

  • → 方差最大的方向( 最大)。
  • → 正交的次优方向。

4. 投影到主成分

只保留主成分

  1. 投影系数(投影长度):
  1. 得到一个 向量,表示每个点在 上的坐标。

5. 几何意义总结

  • :平移数据到原点。
  • :记录各方向的“协同变化量”,本质是变量对之间的点积表
  • 特征分解:找到数据最大延展的方向(特征向量)。
  • 投影:在该方向上压缩数据维度,保留最大方差信息。

1. 从协方差矩阵到“拉伸变换”

  • 协方差矩阵 对称矩阵,可以看作一个线性变换:它会把空间的单位圆拉伸成一个椭圆。

  • 不同方向的向量会被拉伸成不同长度。

  • 方向 = 特征向量
    拉伸长度 = 特征值的平方根(严格来说是范数比例)

只拉伸不旋转是因为协方差矩阵 是一个实对称矩阵,而实对称矩阵有两个关键性质:

  1. 特征向量正交

    • 实对称矩阵一定可以被正交对角化:

      C=QΛQ^⊤

      其中 是由单位长度且相互正交的特征向量组成的矩阵。

    • 这意味着 在不同特征向量方向上的作用是彼此独立的,不会把一个方向“扭”到另一个方向去。

  2. 只在特征向量方向缩放

    • 对任一特征向量

      C v_k=λ_k v_k

      结果还是沿着 的方向,只是长度变成了原来的 倍。

    • 这就是“拉伸”而非“旋转”:方向不变,只是变长或变短。

几何直观:

  • 一般的矩阵变换既可能旋转,也可能拉伸数据。

  • 但如果矩阵是实对称的(比如协方差矩阵),它的“作用方向”就是那组正交的特征向量——在这些方向上不会发生旋转,只会按特征值进行拉伸/压缩。协方差矩阵是 ,会有 条正交特征轴,这些特征轴就是高维“椭球”的主轴,PCA 会按照这些轴的方差大小(特征值)进行排序,然后选前 条轴作为降维后的坐标系。


2. 单位圆 → 椭圆

  • 把所有长度为 1 的向量(方向)都输入 ,输出向量的长度就是在这个方向上的“方差强度”。

  • 拉伸最长的方向就是椭圆的长轴方向,这个方向的单位向量就是最大特征值对应的特征向量

  • 拉伸最短的方向就是椭圆的短轴方向,对应最小特征值。


3. 几何意义

  • 特征向量:协方差矩阵作用下不改变方向的“固有方向”。

  • 特征值:在这个方向上的方差(散布程度),也是拉伸比例。

  • 最大特征值 → 最大散布方向 → 投影后保留信息最多。


4. 为什么不直接试遍所有方向?

  • 试遍所有方向等价于在单位圆上每隔一点就计算一次投影方差,效率低。

  • 特征分解直接告诉你椭圆的主轴方向,这就是方差最大的方向。


5. 例子(数值版)

假设

  • 最大特征值 ,特征向量

  • 最小特征值 ,特征向量

  • 解释:

    • 方向,数据被放大 倍(方差最大)

    • 方向,数据只被放大 1 倍(方差最小)

投影到 → 1D 数据方差最大,信息保留最多,这就是 PCA 选它的原因。


PCA 全流程公式化步骤(以 5→2 维为例)

1. 原始数据矩阵

数据集 矩阵):

  • :每个观测样本
  • :每个特征

2. 数据中心化

计算每列的均值:

中心化矩阵:


3. 协方差矩阵

公式:

  • 矩阵
  • 表示特征 的协方差

4. 特征分解

解:

得到:

  • 特征值 (方差大小)
  • 特征向量 (主成分方向)

5. 特征值排序与选取

从大到小排序,取前 个:

取对应的两个特征向量:

这里的 要归一化:


6. 数据投影

投影公式:

结果:

  • 矩阵
  • 每一行是原始数据在两个主成分上的坐标

7. 几何意义

  1. 中心化:平移数据到原点。
  2. 协方差矩阵:记录各特征之间的线性关系。
  3. 特征分解:找出数据最大方差的方向。
  4. 选取前 m 个主成分:保留最多的信息(最大方差)。
  5. 投影:将高维数据压缩到 m 维,同时最小化信息损失。

t-SNE (t-distributed Stochastic Neighbor Embedding)的区别

1. 方法原理

  • PCA (Principal Component Analysis)

    • 线性降维方法。

    • 通过特征值分解/奇异值分解,寻找数据方差最大的正交方向。

    • 投影后保留全局方差信息。

  • t-SNE (t-distributed Stochastic Neighbor Embedding)

    • 非线性降维方法。

    • 将高维相似度分布映射到低维相似度分布,最小化 KL 散度。

    • 用学生 t 分布(t-distribution)来建模低维邻居概率,避免“拥挤问题”(crowding problem)。


2. 保留的信息

  • PCA:保留 全局结构(大方向的方差、线性关系)。

  • t-SNE:保留 局部结构(相似点邻居关系、局部簇)。


3. 可解释性

  • PCA:主成分是原始变量的线性组合,可解释、可复用(比如用于特征压缩)。

  • t-SNE:结果是嵌入坐标,不可解释、不可复用(仅用于可视化)。


4. 计算复杂度

  • PCA:快速(矩阵分解即可),适合大规模数据。

  • t-SNE:较慢(O(n²)),大样本时需近似算法(如 Barnes-Hut t-SNE、UMAP)。


5. 适用场景

  • PCA

    • 特征降维 → 后续机器学习模型输入

    • 数据压缩、噪声去除

    • 可解释性分析(主成分分析)

  • t-SNE

    • 高维数据可视化(图像特征、文本嵌入、基因表达数据)

    • 发现潜在簇结构