Skip to content

流形假设 Manifold Hypothesis

# 流形假设

什么是流形

流形(Manifold)是一个局部看起来像欧氏空间的拓扑空间。具体地: - 球面是一个2维流形:在球面上任意取一小块区域,都可以近似看作平面 - DNA双螺旋是一个1维流形:局部看就是一条曲线 - 更形式化地说,n维流形在每点的邻域都存在与\(\mathbb{R}^n\)的同胚映射

流形假设的基本理念

流形假设(Manifold Hypothesis)认为:高维数据虽然形式上位于高维空间\(\mathbb{R}^d\)中,但实际上存在于一个维数远小于d的流形\(M\)上或其近邻。形式化地说,存在一个低维流形\(M \subset \mathbb{R}^d\),使得实际观测到的数据点\(x \in \mathbb{R}^d\)要么位于\(M\)上,要么与\(M\)的距离很小。

数据的连续性

以手写数字为例: 1. 考虑写一个数字"2"的过程,我们可以: - 连续地改变笔画的粗细 - 平滑地调整倾斜角度 - 渐变地修改大小 2. 这种连续变化意味着: - 对于任意两种合理的"2"的写法\(x_1\)\(x_2\) - 存在一条连续路径\(\gamma(t), t \in [0,1]\) - 使得\(\gamma(0) = x_1\)\(\gamma(1) = x_2\) - 路径上的每一点都是一个合理的"2"

MNIST数据集中的流形结构

以MNIST手写数字识别为具体案例: 1. 每张28×28像素的图像形式上是\(\mathbb{R}^{784}\)空间中的一个点 2. 但任意784维向量并不都对应有意义的手写数字图像 3. 所有合理的手写数字"2"可以用少量参数\(\theta \in \mathbb{R}^k (k \ll 784)\)来描述: - 笔画的粗细 - 字体的倾斜度 - 整体大小 - 局部形变程度

这表明所有有效的手写数字"2"实际上位于一个低维流形\(M_2 \subset \mathbb{R}^{784}\)上,其维数可能仅为10-20维。正是这种内在的低维结构,使得神经网络能够通过逐层非线性变换有效地学习数据表示,而不是在784维空间中盲目搜索。

矩阵变换的几何本质

每个矩阵运算本质上都是一种空间变形。想象一个简单的例子:当我们用一个2×2矩阵去乘以平面上的点时,可能会: - 旋转这个空间 - 拉伸或压缩某些方向 - 将空间投影到特定方向

这就是为什么矩阵\(W\)能够将向量\(x\)从一个空间变换到另一个空间:\(y = Wx\)

Transformer中的空间变换链

基于这种理解,让我们重新审视Transformer的核心操作:

  1. 线性变换:QKV的几何视角
  2. 当我们计算\(Q = XW_q\)时,是将输入空间中的点投射到一个"提问"的视角
  3. \(K = XW_k\)则是从"回答"的角度看待同样的数据
  4. \(V = XW_v\)准备了实际要传递的信息

  5. 非线性组合:注意力机制

  6. \(QK^T\)首先在空间中测量距离
  7. softmax(\(QK^T/\sqrt{d}\))通过非线性变换将相似度转化为权重
  8. 这些权重与\(V\)进行非线性组合,产生新的表示

  9. 残差连接:构建空间捷径

  10. \(y = x + F(x)\)建立了原始空间和变换空间之间的直接通道
  11. 原始信息可以无损传递,变换后的信息作为"修正项"
  12. 这种设计让网络可以专注于学习有用的特征增量

  13. 激活函数:增强表达能力

  14. 激活函数(如ReLU)引入额外的非线性变换
  15. 通过选择性地"激活"某些维度
  16. 使得网络能够逐层构建更丰富的特征表示

何凯明的残差设计

何凯明提出残差网络时,发现了一个反直觉的现象:更深的网络在训练集上的表现反而更差。这说明问题不在于过拟合,而在于优化难度。残差连接的设计让网络学习\(H(x) = F(x) + x\),而不是直接学习目标映射\(H(x)\)

为什么残差连接有效?

从流形角度看,原始输入\(x\)到目标输出\(H(x)\)的变换路径可能很复杂。残差设计的妙处在于: 1. 如果某层不需要做任何改变,只要让\(F(x)=0\)即可 2. \(F(x)\)可以被看作对恒等映射的局部扰动 3. 每层网络只需关注如何对上一层的结果做必要的调整