表示学习(Representation Learning)总论
一、基本定义
表示学习(Representation Learning)本质上是学习一个从原始输入空间到潜在空间(Latent Space)的映射:
其中:
:原始输入( raw data),可以是像素、词符、语音信号 :表示函数,通常由深度神经网络实现 :表示向量(representation / embedding),是我们要学习的核心对象
这不是简单的维度压缩——它是一个语义结构化的过程。原始数据的几何结构通常由传感器物理特性决定(如像素排列),而我们希望学到的
手调特征(hand-crafting)是人类凭借直觉预设”哪些特征有用”;表示学习则是让优化目标自己发现”哪些特征对下游任务有价值”。
二、为什么表示学习比手调特征重要
2.1 降低下游任务复杂度
以分类为例。监督学习在原始输入上的分类器需要直接拟合
这意味着:
由于语义结构通常比原始信号的低维流形更简单,前者的优化难度远大于后者。
2.2 线性可分性(Linear Separability)
深度学习成功的核心论断之一是:深度网络层层构建,使得数据在深层表示中逐渐线性可分。
形式化地,设深度网络为
关键洞察:我们优化的不是”让
压缩原始信息”,而是”让 的几何结构对下游任务友好”。信息压缩是手段,任务相关结构的解缠(disentanglement) 才是目标。
2.3 可迁移性(Transferability)
在数据不足的领域(如医学影像),从大规模无标签数据预训练的表示比在小规模标注数据上端到端训练的效果更好。这是因为好的表示捕获的是跨任务通用的低层次结构(边缘、纹理、语法角色),而非任务特定的高层次语义。
三、数学推导:从监督学习损失到表示作为优化目标
3.1 从标准监督损失出发
设网络
对
这说明在监督信号驱动下,表示层
3.2 表示层的几何意义
“好的表示”在几何上意味着什么?
设数据的两类分布在潜在空间中。如果它们在
定义间隔(margin)为
3.3 维度、压缩与可分性之间的权衡
设原始维度
然而,
四、表示的类型:稠密、稀疏与离散
| 类型 | 形式 | 优点 | 缺点 | 典型应用 |
|---|---|---|---|---|
| 稠密表示(Dense) | 表达力强,梯度流畅,适合深度学习 | 可解释性差 | Word2Vec、BERT、CLIP | |
| 稀疏表示(Sparse) | 高可解释性,符合生物学原理 | 离散化导致梯度难传,常需要稀疏化技巧 | One-hot、LSI、稀疏自编码器 | |
| 离散表示(Discrete) | 便于符号运算,可组合,人可读 | 梯度断裂,需要 Gumbel-Softmax 等技巧 | VQ-VAE、文本符号嵌入 |
可解释性与表达力的 tradeoff:越接近人类可读符号的表达(如稀疏、离散),其表达能力往往越受限;越稠密、连续的表示,表达力越强,但人类越难直接解读。
五、表示学习 vs. 特征工程
| 维度 | 传统特征工程 | 表示学习 |
|---|---|---|
| 设计方式 | 人类专家凭直觉预设 | 优化目标自动发现 |
| 适应性 | 固定,不随数据分布变化 | 自适应,可迁移 |
| 表达能力 | 受限于人类先验知识 | 可学习任意复杂非线性结构 |
| 可解释性 | 通常较高(如 SIFT、HOG) | 通常较低 |
| 端到端 | 需要手动组合特征 | 与下游任务联合优化 |
| 对数据量的需求 | 较少(特征本身简单) | 较大(需要足够数据驱动表示) |
关键区别不在于”是否使用了特征”,而在于特征是由谁设计的:人类先验 vs. 数据驱动的优化。
六、工程工作流:如何评估一个表示
6.1 线性探针(Linear Probe)
Linear Probe 是评估表示质量的标准方法:将冻结的表示
- 若线性分类器能达到接近非线性分类器的性能 → 表示对任务已经线性可分,结构好
- 若需要非线性分类器才能发挥性能 → 表示中包含的任务相关信息尚未被充分结构化
Linear Probe 的意义在于:它给表示的”可分离性”提供了一个可量化的下界。我们不是在追求线性可分本身,而是在验证表示空间的几何结构是否对下游任务友好。
6.2 表示质量的评估维度
6.2.1 下游任务性能
- Linear probe 准确率 / F1
- 下游任务端到端微调后性能
6.2.2 表示空间几何结构
- 对齐性(Alignment):同类样本的表示是否相近(
-NN 分类精度) - 均匀性(Uniformity):表示是否均匀分布在潜在空间(避免表示崩溃 / collapse)
- 维度利用:各表示维度是否被平等利用(方差分析)
6.2.3 迁移性
- 在源任务上预训练,在目标任务上做 Linear Probe 或微调
- 跨模态迁移(如视觉→语言)
6.2.4 可解释性
- 稀疏度:表示中零值比例
- 表示维度与语义维度的对应关系是否可解释
6.3 常见训练方法一览
| 方法 | 监督信号 | 代表模型 | 核心思想 |
|---|---|---|---|
| 监督学习 | 标签 | CNN/ViT 分类 | 用任务标签直接监督表示 |
| 自编码器(AE) | 重构 | VAE, Denoising AE | 压缩-重构,保留重构所需信息 |
| 对比学习 | 样本间关系 | SimCLR, MoCo, CLIP | 拉近相似样本,推远不相似样本 |
| 掩码预测 | 上下文预测 | BERT, MAE | 从部分输入预测缺失部分 |
| 扩散模型 | 噪声预测 | Stable Diffusion | 在噪声空间中学习表示 |
6.4 表示可视化
- t-SNE / UMAP:将高维表示投影到 2D 平面,观察类别是否聚类
- PCA:观察表示中方差最大的方向对应什么语义
- 线性探针热图:可视化哪些表示维度对分类贡献最大
七、统一抽象:表示学习方法的认知地图
表示学习(Representation Learning)
│
├── 按任务类型分
│ ├── 监督表示学习(Supervised)
│ │ └── 端到端反向传播,学得的表示对当前任务最优
│ ├── 自监督表示学习(Self-Supervised)
│ │ ├── 对比式(Contrastive)→ SimCLR, MoCo, CLIP
│ │ │ └── 核心:样本级相似性感知
│ │ ├── 预测式(Predictive)→ BERT, MAE, WavLM
│ │ │ └── 核心:上下文结构感知
│ │ └── 聚类式(Clustering)→ Swav, DeepCluster
│ │ └── 核心:伪标签聚类结构
│ └── 多模态表示学习(Multi-modal)
│ └── 对齐不同模态的表示空间 → CLIP, ALIGN
│
├── 按几何性质分
│ ├── 稠密连续 → Word2Vec, BERT, 表示神经元
│ ├── 稀疏离散 → One-hot, VQ-VAE, Bag-of-Words
│ └── 结构化组合 → 蛋白质表示(ESM)、语法树表示
│
└── 按评估方式分
├── 直接评估(Direct)→ 下游任务 Accuracy
├── 线性探针(Linear Probe)→ Frozen表示 + 线性分类器
└── 迁移评估(Transfer)→ 跨域、跨任务迁移效果
八、表示质量评估清单
8.1 表示学习阶段
- 表示维度
是否合理(既不过小引发瓶颈,也不过大浪费计算) - 表示空间是否出现 collapse(所有样本映射到相同/相似点)
- 表示的分布是否过于不均匀(维度利用是否均衡)
- 重构损失是否在合理范围(若使用 AE)
8.2 质量验证阶段
- Linear Probe 性能:线性分类器是否能达到满意精度?
-
-NN 精度:最近邻是否来自同一类别? - 跨域迁移:在源域训练的表示,在目标域是否仍然有效?
- 表示可视化:t-SNE/UMAP 是否显示出预期的聚类结构?
- 对齐性与均匀性(适用于对比学习):正样本对是否足够接近?负样本对是否足够分散?
8.3 下游任务适配阶段
- 微调时是否只需要训练顶层(冻结底层表示仍有效)?
- 表示是否包含任务无关信息(若是,应考虑解缠)
- 多任务场景下,表示的共享与专用比例是否恰当
九、本系列后续内容预告
表示学习是自监督学习的理论基石。本系列后续将沿着以下脉络展开:
| 阶段 | 核心问题 | 代表方法 |
|---|---|---|
| 1. 表示学习总论(本文) | 什么是好表示,几何意义,如何评估 | Linear Probe, t-SNE |
| 2. 对比学习 | 如何从样本间关系学习表示 | SimCLR, MoCo, BYOL |
| 3. CLIP | 如何对齐视觉与语言两个模态 | Contrastive Language-Image Pretraining |
| 4. BERT 与掩码语言模型 | 如何从上下文预测学习表示 | BERT, RoBERTa, ALBERT |
| 5. 扩散模型表示 | 如何从生成过程提取表示 | Stable Diffusion, Score-based |
表示学习的本质是:将”什么是重要的”这个问题,从人类预设转化为数据驱动。后续我们讨论的所有方法——无论是对比学习、掩码预测还是多模态对齐——都是这一统一目标的不同实现路径。