🎓 总站 🏠 本课目录 01 图像基础 02 空间滤波 03 频率滤波 04 彩色处理 05 神经网络 06 表征学习 07 Transformer 08 CNN
视觉计算 · 第6章

表征学习

从数据到嵌入(embedding)的编码学习:基于压缩(自编码器、对比学习、聚类、信息瓶颈)与基于预测(自监督、缺失填补)两大原则,以及 KL 散度、交叉熵、互信息等信息论工具。

📚 学习进度
0%

🎯学习目标

  • 理解表征学习问题:编码 f:𝒳→𝒵 与向量嵌入(embedding);
  • 掌握"好表征"应具备的性质,以及压缩原则与奥卡姆剃刀;
  • 熟悉自编码器、对比学习、聚类(k-means)等压缩方法;
  • 理解自监督学习、代理任务(pretext task)与缺失填补;
  • 掌握 KL 散度、交叉熵、信息熵、互信息与信息瓶颈原则;
  • 了解迁移学习与预训练(如 CLIP)。

1什么是表征学习

深度网络逐层变换数据点,每一层都是数据的一种不同表示。两个方向:

➡️

表征学习

前向:从观测数据 → 潜在嵌入(latent embedding)。学习编码器 f:𝒳→𝒵。

⬅️

生成式建模

反向:从潜在嵌入 → 观测数据。即解码 / 生成。

表示学习的目标是学习如何把数据点 x∈𝒳 映射到抽象表示 z∈𝒵,这种映射称为"编码",学得函数 f:𝒳→𝒵。通常 x、z 都是高维向量,z 被称为 x 的向量嵌入(embedding)

数据 x𝒳 (高维/复杂) f 编码器 嵌入 z𝒵 (低维/简单) 表征学习 → ← 生成建模
图1 · 表征学习:编码器把复杂数据空间映射到简单嵌入空间

2好表征应具备的性质

训练映射 f 的目的是让 z 具备某些理想属性,使 𝒵 成为比 𝒳 更简单、更抽象、组织更好的表示空间:

  • z 的维度低于 x(压缩);
  • z 的分布 p(z) 具有简单结构(如单位正态分布);
  • z 各维度是解耦的(disentangled)
  • z 是可解释的
💡 神经嵌入把数据表示为神经嵌入——神经激活的向量/张量(可能代表检测到的纹理模式或物体部件,如 car / road / building)。

3基于压缩的学习原则 ⭐

好的表示是简约的(parsimonious),只捕捉数据中对任务必需的本质特征。压缩的必要性体现在三层面:

层面含义
存储压缩表示占用更少内存
不变性压缩是对无关干扰因素(nuisance factors)保持不变性的方式
奥卡姆剃刀同等解释数据的假设中,最简单的往往最可能真实
⭐ 压缩的本质压缩 = "剥离伪相关"。在两种同样能拟合数据的表示中,优先选择压缩程度更高的那个。

表征学习器的类型

学习方法学习原则摘要
自编码 Autoencoding压缩移除冗余信息
对比学习 Contrastive压缩实现对观察变换的不变性
聚类 Clustering压缩把连续数据量化为离散类别
未来预测 Future prediction预测预测未来
缺失填补 Imputation预测预测缺失数据
代理任务 Pretext tasks预测预测数据的抽象属性

4自编码器(Autoencoders)

自编码器是一个把数据映射回其自身的函数,但中间必须经过一个低维表示瓶颈。它强制网络学到数据的紧凑编码(移除冗余)。

x Encoder z Decoder x̂≈x 低维瓶颈 重建损失
图2 · 自编码器:Encoder→瓶颈 z→Decoder,重建输入
💡 去噪自编码器给输入加噪声,要求网络重建出干净原图,迫使其学到更鲁棒的表示。

5对比学习(Contrastive Learning)

对比学习让表征被监督对特定观察变换保持不变性,产生只捕获不同数据"视图"之间共有属性的压缩表示。监督信号以正样本对负样本对的形式提供。

🔄

基于变换

同一图像的两个增强视图(裁剪/旋转/颜色抖动)应有相近嵌入(正对)。

🔗

基于共现

常一起出现的内容(如配对的图文)应有相近嵌入。

⭐ 正负样本对拉近正样本对的嵌入、推远负样本对的嵌入——以此学到对无关变换不变的本质特征。

6聚类与 k-means

聚类同样源于压缩原则:若能仅用一个离散类别标签很好地概括一个信号,这个概括就成为后续推理更轻量、更抽象的基础。

k-means:把数据点映射到整数(即聚类),映射方式使每个数据点尽可能接近其所属聚类的均值。可看作 Encoder(数据→聚类)+ Decoder(聚类→均值)的离散版自编码。

k-means:把数据点归到最近的聚类中心(均值)
图3 · 聚类:连续数据被量化为离散类别

7基于预测的原则与自监督学习

拥有视觉系统的意义在于能采取行动实现理想未来。预测泛指在给定观测下推断世界的任意属性(未来、过去、因果等)。视觉中大多数表征学习算法都在学习世界的压缩编码,同时这些编码要对未来有预测能力。

自监督学习(Self-Supervised Learning)

  • 无监督问题转化为有监督的经验风险最小化问题;
  • 代理任务(pretext task):直接从原始数据本身"炮制/构造"出标签(预测目标)。
💡 缺失填补:统一的代理任务把一部分数据 mask 掉(observed vs masked),让网络预测被遮挡的内容。这是一种通用的自监督代理任务(图像上色、补全等都属此类)。

有趣的发现:在场景分类等任务上训练的深层 CNN,会自发涌现出物体检测器(Object Detectors Emerge in Deep Scene CNNs)。

8信息论与信息瓶颈 ⭐

KL 散度(相对熵 / 信息增益)

衡量从认知 q(x) 到 p(x) 我们的认知"更新了多少"。具有非负性、非对称性等性质:

D_KL(p‖q) = Σ p(x)·log[ p(x)/q(x) ]     (离散)
性质:D_KL(p‖q) ≥ 0,  D_KL(p‖q) ≠ D_KL(q‖p)(非对称)
⭐ KL 与最大似然/交叉熵最小化 D_KL(p_数据‖p_θ) 等价于极大似然。判别式模型只对条件概率 p(y|x) 建模,最小化 KL 等价于最小化交叉熵(真实熵为常量)。

信息熵与交叉熵编码

H(X) = −Σ p(X)·log p(X)         熵:描述不确定性
理想码长 = −log₂ p_j(对真实概率 p)
实际码长(按模型 q 编码) → 交叉熵 H_ce(p,q) = −Σ p_j·log q_j
H_ce(p,q) − H(p) = D_KL(p‖q)    实际比理想多用的比特数

压缩编码核心:对出现概率大的符号用短码,概率小的用长码;平均码长下界即熵 H(X)。

互信息与信息瓶颈

互信息 I(X;Y):衡量两变量依赖性,即从 p(X)p(Y) 到 p(X,Y) 的信息增益。

X 表征学习 Z 分类器 Y min I(z;x) max I(z;y)
图4 · 信息瓶颈:从 X 学表征 Z 用于预测 Y
⭐ 信息瓶颈原则优化目标 min β·I(z;x) − I(z;y):让 Z 对 Y 的信息 I(z;y) 最大(充分),同时对 X 的信息 I(z;x) 最小(最小充分统计)。若 y⊥x|z,则称 Z 对预测 Y 是充分的

9迁移学习与预训练

表征学习的重要价值在于得到的嵌入可迁移:先在大规模数据上预训练一个通用表征,再迁移到下游小数据任务上微调。

CLIP(多模态预训练)用图文对比学习,把复杂的图像数据空间和文本映射到同一个简单嵌入空间,学到跨模态、强可迁移的表征(Radford*, Kim* et al., ICML 2021)。
概念说明
预训练 (Pre-training)在大规模数据上学通用表征
迁移学习 (Transfer)把预训练表征迁移到下游任务
微调 (Fine-tuning)在下游小数据上调整参数
嵌入 (Embedding)数据的低维向量表示,可复用

重点例题

例题1:为什么"压缩"能带来好的表征? 答:① 压缩剥离了与任务无关的伪相关/干扰因素,得到对 nuisance factors 不变的本质特征;② 体现奥卡姆剃刀——同等解释数据时最简单者最可能真实;③ 更省存储。因此在同样拟合数据的两种表示中应选压缩程度更高者。
例题2:信息瓶颈的优化目标是什么? 目标 min β·I(z;x) − I(z;y)。直观:让表征 Z 保留对标签 Y 有用的信息(I(z;y) 大),同时尽量丢弃 X 中无关信息(I(z;x) 小),从而得到最小充分统计。
例题3:KL 散度、交叉熵、熵三者关系? H_ce(p,q) = H(p) + D_KL(p‖q)。其中 H(p) 是真实分布的熵(常量),D_KL≥0 是用模型 q 编码相对最优编码多花的比特。最小化交叉熵 = 最小化 KL = 极大似然。

🎯自测(点击展开)

表征学习和生成式建模分别是哪个方向?
表征学习:观测数据→潜在嵌入(前向编码);生成式建模:潜在嵌入→观测数据(反向解码)。
自编码器为什么要设一个低维瓶颈?
瓶颈迫使网络丢弃冗余、只保留重建所需的本质信息,从而学到压缩表征。
对比学习的监督信号以什么形式提供?
以正样本对(应相近)和负样本对(应推远)的形式提供。
自监督学习如何获得标签?
通过代理任务(pretext task)直接从原始数据自身构造标签,无需人工标注。
KL 散度为什么是非对称的?
D_KL(p‖q)≠D_KL(q‖p),因为它衡量"用 q 近似 p"的代价,与方向有关。
信息瓶颈中"Z 对 Y 充分"是什么意思?
若 y⊥x|z,即 Z 已包含 X 中关于 Y 的全部信息,则称 Z 对预测 Y 充分。

📝强化题库

选择题点选即时判分;填空题输入后"检查"或"显示答案"。

已答 0/0答对 0正确率
已答 0/0答对 0