多模态①:连接与对齐
⭐ 核心路径 — 现实世界的信息本质上是多模态的。理解不同模态之间的"连接"与"对齐"是实现通用人工智能的关键一步。
学习目标
完成本讲后,你应该能够:
- 解释 多模态学习的"异质性"问题——为什么不同模态的数据无法直接比较
- 列举 多模态机器学习的6大核心技术挑战
- 描述 对比学习(Contrastive Learning)的核心原理及其在多模态对齐中的应用
- 理解 CLIP 如何通过对比学习实现视觉-语言对齐
- 识别 跨模态注意力机制如何弥合模态间的语义鸿沟
一、多模态学习的起点:异质性
为什么多模态是困难的?
[[02-基础/02-01-数据与结构|数据与结构]] 告诉我们不同模态的数据具有本质不同的数学结构:
| 维度 | 文本 | 图像 | 音频 |
|---|---|---|---|
| 基本单元 | 离散符号(token) | 连续像素 | 连续采样点 |
| 数据结构 | 1D 序列 | 2D 网格 | 1D 波形 |
| 信息密度 | 高(每词承载语义) | 低(大量冗余像素) | 中 |
| 语义粒度 | 词→句→段 → 清晰层次 | 像素→边缘→物体→场景 → 模糊 | 帧→音素→词 → 层次交错 |
| 变换敏感度 | 排列破坏语义 | 平移/旋转不变 | 时序因果 |
这种**异质性(heterogeneity)**是多模态学习的根本挑战。不同模态的数据处于不同的向量空间中——文本的词嵌入和图像的像素值即使维度相同,其几何结构和统计性质也完全不可通约。
核心问题: 如何让来自不同模态的信息在同一个表示空间中"对话"?
模态间的连接方式
现实世界中不同模态并非独立存在,而是通过多种方式相互连接:
- 共生关系(Co-occurrence):同一场景/事件同时产生的多种模态信号。例如一张照片和它的文字描述、一段视频和它的字幕
- 互补关系(Complementarity):不同模态提供关于同一实体的不同侧面信息。例如语音识别中嘴唇动作(视觉)辅助音频信号
- 冗余关系(Redundancy):多种模态编码了相同的信息。例如"猫"这个词和一张猫的图像都指向"猫"这个概念
- 层次关系(Hierarchy):一种模态在语义上主导另一种。例如文本标签对图像的语义标注
多模态学习的核心任务就是发现和利用这些连接。
二、多模态机器学习的6大技术挑战
Liang et al. (2022) 在 Foundations and Trends in Multimodal Machine Learning 中系统提出了多模态学习的6大技术挑战,构成了整个领域的蓝图:
| 挑战 | 英文 | 核心问题 | 代表方法 |
|---|---|---|---|
| ① 表征 | Representation | 如何学习多种模态的共享表示,使其可比、可组合? | CLIP、ALIGN、联合嵌入 |
| ② 对齐 | Alignment | 如何识别不同模态间元素的对应关系? | 对比学习、跨模态注意力、DTW |
| ③ 推理 | Reasoning | 如何综合多模态信息进行逻辑推理和决策? | 多模态 Transformer、VL-T5 |
| ④ 生成 | Generation | 如何跨模态生成内容? | DALL·E、Stable Diffusion、Whisper |
| ⑤ 迁移 | Transference | 如何将一种模态学到的知识迁移到另一种? | Zero-shot 跨模态、LLaVA-Med |
| ⑥ 量化 | Quantification | 如何衡量多模态模型的性能和鲁棒性? | 模态重要性分析、信息分解 |
① 表征(Representation)
问题: 文本以离散符号表示,图像以连续像素表示。如何将它们映射到一个可比较的联合表示空间?
解决方案: 联合嵌入(Joint Embedding)——将不同模态的数据通过各自的编码器映射到同一向量空间,使得语义相似的跨模态数据在空间中的距离接近。
联合嵌入面临两个关键冲突:
- 对齐性(Alignment) vs. 完整性(Integrity):对齐不同模态时可能会丢失每个模态独有的信息
- 紧凑性(Compactness) vs. 表达力(Expressiveness):表示空间越小越容易对齐,但可能损失细节
② 对齐(Alignment)⭐ 本周核心
问题: 给定一张猫的图像和"一只橘猫坐在窗台上"的文字描述,如何建立"图像中的这只猫"和"文字中的'猫'"的对应关系?
对齐是多模态学习的核心纽带,也是本讲的主题。
对齐方法主要分为两类:
| 方法 | 粒度 | 典型算法 | 优点 | 局限 |
|---|---|---|---|---|
| 全局对齐 | 整体 | CLIP 对比学习 | 计算高效、可扩展 | 丢失细粒度对应关系 |
| 局部对齐 | 区域/词 | 跨模态注意力、OT | 细粒度语义匹配 | 计算成本高、需要监督 |
③ 推理(Reasoning)
问题: 模型不仅需要"看到"不同模态的信息,还需要组合推理。例如回答"图像中有什么东西可能会发出声音?"就需要理解视觉物体和它们的物理特性。
多模态推理远比单模态推理复杂,因为它需要在异质信息之间建立逻辑链条。
④ 生成(Generation)
问题: 给定一种模态的输入,生成另一种模态的输出。例如文本到图像(DALL·E)、图像到文本(图像描述)、语音到文本(Whisper)。
跨模态生成面临的核心挑战是模态鸿沟——生成器的输出空间和输入的表示空间在结构上完全不同。
⑤ 迁移(Transference)
问题: 如何在数据稀缺的场景下,利用一种模态的丰富标注来帮助另一种模态的学习?例如用一个大规模图文预训练模型来帮助医学影像分析。
迁移的核心在于共享的语义空间——如果我们成功构建了跨模态的联合表示,迁移就自然发生。
⑥ 量化(Quantification)
问题: 如何评估多模态模型的性能?简单地在每个模态上单独评测是不够的——我们需要理解模型到底在多大程度上利用了多模态信息。
Liang et al. (2023) 提出的多模态信息分解框架将模型的信息源分解为:
- 唯一信息(Uniqueness):只来自单一模态的独特贡献
- 冗余信息(Redundancy):多个模态共同提供的重叠信息
- 协同信息(Synergy):多模态组合后产生的新信息(1+1>2)
三、对齐方法①:对比学习与 CLIP
直觉
对比学习的核心直觉非常直观:
对比学习的黄金法则:拉近相似的、推远不相似的。
形式化地说,给定一个正样本对(语义相关的两个数据点,如同一张图像和它的文字描述)和一批负样本对(不相关的数据点),对比学习的目标是学习一个嵌入函数 $f$,使得正样本对在嵌入空间中距离近、负样本对距离远。
InfoNCE 损失
CLIP 使用的核心损失函数是 InfoNCE(Noise Contrastive Estimation)损失。以视觉-语言为例:
给定一个 batch 的 N 个图像-文本对 ${(I_i, T_i)}$,计算所有 N×N 对之间的余弦相似度矩阵 $S_{ij} = \text{sim}(f(I_i), g(T_j))$,其中 $f$ 是图像编码器(如 ViT),$g$ 是文本编码器(如 Transformer)。
对于每个图像 $I_i$,正样本是其对应的文本 $T_i$,其他 N-1 个文本是负样本:
$$\mathcal{L}I = -\frac{1}{N} \sum^N \log \frac{\exp(S_{ii}/\tau)}{\sum_{j=1}^N \exp(S_{ij}/\tau)}$$
对称地,对每个文本也计算类似的损失 $\mathcal{L}_T$,总损失为 $\mathcal{L} = (\mathcal{L}_I + \mathcal{L}_T) / 2$。
关键设计: 温度参数 $\tau$ 控制对比的"锐利程度"——$\tau$ 越小,模型越聚焦于最难的负样本。
CLIP 架构
CLIP(Contrastive Language-Image Pre-training)由 OpenAI 于 2021 年发布,是对比学习在多模态对齐中的里程碑式工作:
┌──────────┐ ┌──────────┐
│ 图像编码器 │ │ 文本编码器 │
│ (ViT) │ │ (Transformer) │
└────┬─────┘ └────┬─────┘
│ │
▼ ▼
图像嵌入向量 文本嵌入向量
│ │
└──────┬────────┘
▼
对比学习(InfoNCE Loss)
▼
联合表示空间关键设计决策:
| 组件 | 选择 | 理由 |
|---|---|---|
| 图像编码器 | ViT(或 ResNet) | 对视觉信息进行高质量编码 |
| 文本编码器 | Transformer(仅编码器) | 捕捉文本的语义和上下文 |
| 输出层 | 线性投影到 d 维空间 | 将编码映射到可比较的嵌入空间 |
| 训练数据 | 4 亿图文对(网络爬取) | 规模足够大以保证泛化性 |
| 损失函数 | 对称 InfoNCE(Contrastive) | 同时优化图像→文本和文本→图像对齐 |
| 零样本迁移 | 不需要微调,直接推理 | 将迁移能力"内建"到预训练中 |
CLIP 的惊艳效果: 在 zero-shot 设定下,CLIP 在 ImageNet 上达到了 76.2% 的 Top-1 准确率(无需任何 ImageNet 训练数据),展示了大规模多模态对比预训练的惊人泛化能力。
对比学习的关键洞察
- 负样本的质量决定了对齐效果:batch size 越大,负样本越丰富,对齐效果越好。CLIP 使用 32768 的 batch size
- 数据增强就是自动构造正样本:同一图像的不同裁剪、颜色变换版本应被视为正样本
- InfoMin 原则 (Tian et al., 2020):好的正样本对应保留与下游任务相关的信息,丢弃不相关的信息
四、对齐方法②:跨模态注意力
对比学习做的是全局对齐——整个图像对应整段文本。但对于需要细粒度语义匹配的任务(如视觉问答、指代分割),需要局部对齐机制。
跨模态注意力(Cross-Modal Attention)
跨模态注意力机制允许一种模态中的每个元素去"关注"另一种模态中的相关元素:
$$\text{CrossAttn}(Q_{text}, K_{img}, V_{img}) = \text{softmax}\left(\frac{Q_{text} K_{img}^T}{\sqrt{d}}\right) V_{img}$$
- Q(Query)来自文本编码器——"这个词要关注什么?"
- K(Key)来自图像编码器——"图像各区域有什么特点?"
- V(Value)来自图像编码器——"各区域提供什么信息?"
通过这种方式,模型的文本 token 可以有选择性地聚合图像中相关区域的视觉信息,实现细粒度的语义对齐。
对比学习 vs. 跨模态注意力
| 维度 | 对比学习(CLIP) | 跨模态注意力 |
|---|---|---|
| 对齐粒度 | 全局(图像-文本整体) | 局部(区域-词) |
| 计算成本 | 相对较低 | 高(O(n²)) |
| 训练范式 | 对比式(push-pull) | 交互式(信息融合) |
| 代表模型 | CLIP、ALIGN、SigLIP | Flava、UNITER、VLMO |
| 适用场景 | 检索、零样本分类 | VQA、指代分割、Grounding |
重要洞察: 两种方法并非对立。实际上,CLIP 可以作为跨模态注意力模型的视觉编码器(如 LLaVA 用 CLIP 的 ViT 提取图像特征),而跨模态注意力则用于下游任务的精细对齐。
五、多模态对齐的开放问题
- 模态不平衡:在多模态学习中,某一种模态往往主导学习过程(通常是视觉-语言任务中语言主导)。如何让模型真正利用多种模态的信息仍是开放问题
- 细粒度对齐的弱监督:CLIP 只在图像-文本对层面做监督,没有显式地学习区域-词的对应关系。如何从弱信号中学习细粒度对齐仍是一个活跃研究方向
- 多模态 vs. 多语言对比学习:当模态扩展到 3+(如图像+文本+音频+触觉),对比学习的设计空间急剧增大——如何定义有效的正负样本对?
这些开放问题将通向 [[03-多模态/03-02-交互与融合|多模态②:交互与融合]] 和 [[03-多模态/03-03-跨模态迁移|多模态③:跨模态迁移]]。
关键概念
| 概念 | 定义 |
|---|---|
| 异质性(Heterogeneity) | 不同模态的数据在数学结构、统计特性和语义粒度上的本质差异 |
| 对齐(Alignment) | 在不同模态之间建立语义对应关系的过程 |
| 对比学习(Contrastive Learning) | 通过拉近正样本对、推远负样本对来学习有效表示的自监督方法 |
| InfoNCE Loss | 对比学习中最常用的损失函数,基于噪声对比估计原理 |
| CLIP | OpenAI 提出的多模态对比预训练模型,实现视觉-语言的 zero-shot 对齐 |
| 跨模态注意力(Cross-Modal Attention) | 一种模态的元素关注另一种模态中相关元素的注意力机制 |
| 联合嵌入(Joint Embedding) | 将不同模态的数据映射到同一个向量空间的表示学习方法 |
| 温度参数 $\tau$ | 控制对比学习损失函数中 softmax 分布锐利程度的超参数 |
讨论问题
- CLIP 使用 4 亿图文对进行对比学习训练。如果要扩展到视频+音频+文本的三模态场景,对比学习的设计空间会发生什么变化?
- 对比学习的"负样本"定义对对齐质量至关重要。在哪些任务场景下,负样本的选择变得极其困难甚至存在陷阱?
- 跨模态注意力和对比学习各有优劣。有没有可能设计一种兼顾两种方法优势的统一框架?
- CLIP 在 zero-shot 分类上表现惊艳,但在细粒度任务(如计数、空间关系理解)上表现不佳。你认为原因是什么?
- 多模态对齐中"模态不平衡"问题——如何判断模型是真的在做跨模态理解,还是只是在利用某一种模态的捷径?
延伸阅读
- 必读:Foundations and Trends in Multimodal Machine Learning — 多模态学习的全面综述,定义6大技术挑战
- 必读:Learning Transferable Visual Models From Natural Language Supervision (CLIP) — 对比学习在多模态对齐中的里程碑
- 必读:What Makes for Good Views for Contrastive Learning? — InfoMin 原则:什么构成好视图
- 推荐:A Survey of Contrastive Learning — 对比学习综述
- 推荐:Multimodal Contrastive Learning with Hard Negative Samples — 困难负样本在多模态对比学习中的作用
相关笔记
- [[02-基础/02-01-数据与结构|数据、结构与信息]] — 数据模态的本质差异
- [[02-基础/02-03-模型架构|模型架构]] — 自注意力与Transformer
- [[03-多模态/03-02-交互与融合|交互与融合]] — 多模态信息的深层交互
- [[03-多模态/03-03-跨模态迁移|跨模态迁移]] — 跨模态知识的迁移与泛化
- [[03-多模态/03-04-本周阅读|第5-7周阅读]]
- [[04-大模型/04-02-多模态大模型|多模态大模型]] — CLIP下游应用
- [[讨论课/讨论03-多模态对齐|讨论03:多模态对齐]]
- [[MOC-如何AI一切|🗺️ 返回内容地图]]
