dmrookie's Studio.

计算机视觉领域对比学习综述

字数统计: 5.7k阅读时长: 24 min
2026/06/10
loading

摘要

对比学习(Contrastive Learning)作为自监督学习的核心范式,通过构建正负样本对来学习具有判别性的特征表示,已成为计算机视觉领域的重要研究方向。本文参考[李沐论文精读-对比学习综述],系统梳理了2018年至2021年间CV领域对比学习的发展历程,涵盖14篇里程碑式论文,按技术演进划分为四个阶段:百花齐放期(2018-2019)、CV双雄期(2020)、无负样本探索期(2020-2021)和Transformer时代(2021)。报告详细分析了每篇论文的核心思想、关键技术创新及性能表现,并总结了技术演进脉络和未来发展方向。

1. 引言

1.1 对比学习的核心思想

对比学习是自监督学习(Self-supervised Learning,SSL)的重要代表,其基本思想是:将相似样本(正样本对)在特征空间中拉近,将不相似样本(负样本对)推远。这一简单而强大的思想为无监督/自监督学习提供了有效的训练信号。

对比学习通过代理任务(pretext task),来定义那些样本相似,那些不相似,从而产生监督信号来训练模型。代理任务通常是人为设定的规则,例如在计算机视觉中,对比学习通常通过以下方式构建正负样本对:

  • 正样本对:同一图像的不同数据增强视角(如随机裁剪、颜色抖动等)
  • 负样本对:不同图像之间的样本

1.2 对比学习的重要意义

  1. 突破标注瓶颈:无需大量人工标注即可学习高质量特征表示
  2. 性能逼近监督学习:在ImageNet等基准数据集上,自监督预训练的性能已接近甚至超越监督学习
  3. 迁移能力强:预训练模型在下游任务(目标检测、分割等)上表现优异
  4. 推动理论研究:促进了对深度学习表征学习本质的理解

1.3 发展历程概览

本报告将CV对比学习的发展划分为四个阶段:

阶段 时间 特征 代表工作
百花齐放 2018-2019 方法多样,性能有限 InstDisc, CPC, CMC
CV双雄 2020 MoCo与SimCLR竞争,性能飞跃 MoCo v1/v2, SimCLR v1/v2, SwAV
无负样本 2020-2021 突破负样本依赖 BYOL, SimSiam
Transformer 2021 架构升级,性能新高 MoCo v3, DINO

2. 第一阶段:百花齐放 (2018-2019)

在对比学习的萌芽期,研究者们探索了不同的代理任务、模型架构和目标函数,为后续发展奠定了基础。

2.1 InstDisc (CVPR 2018)

论文:Unsupervised Feature Learning via Non-Parametric Instance Discrimination

image.png

核心思想

提出"个体判别"(Instance Discrimination)任务:将每个图像实例视为一个独立的类别,通过区分不同实例来学习判别性特征。

关键创新:

  • Memory Bank:存储整个数据集特征向量,解决负样本数量受限于Batch Size的问题
  • Proximal Regularization:特征更新幅度约束,稳定训练

####损失函数:

LNCE=−EPd[log⁡h(i,vi(t−1))−λ∣∣vi(t)−vi(t−1)∣∣22]−m⋅EPn[log⁡(1−h(i,v′(t−1)))]L_{NCE} = -E_{P_d}[\log h(i, v_{i}^{(t-1)})-\lambda|| v_{i}^{(t)}- v_{i}^{(t-1)}||_2^2] - m \cdot E_{P_n}[\log(1 - h(i, v^{'(t-1)}))]

性能表现

  • ImageNet线性评估 Top-1: 46.5%

历史意义

InstDisc首次将实例判别引入CV领域,开创了对比学习的先河,但Memory Bank的特征一致性问题为后续MoCo的改进留下了空间。


2.2 InvaSpread (CVPR 2019)

论文:Unsupervised Embedding Learning via Invariant and Spreading Instance Feature

image.png

核心思想

强调特征的不变性(对增强鲁棒)和扩散性(不同实例分散)

关键技术创新

  • 端到端Siamese架构:摒弃Memory Bank,batch内构建正负样本对
  • 多分类交叉熵损失:将对比学习转化为多分类问题

局限性

受限于当时的硬件条件,Batch Size仅为256,负样本数量不足,限制了性能提升

性能表现

  • ImageNet线性评估 Top-1: 48.8%

历史意义

InvaSpread是SimCLR的重要前身,证明了端到端训练的可行性,为后续大Batch训练奠定了基础。


2.3 CPC v1 (2018)

论文:Representation Learning with Contrastive Predictive Coding
image.png

核心思想

通过预测序列的未来信息来学习表征,基于"能够预测未来的特征必然包含高层语义"的假设,是一种生成式的对比学习。

网络架构

  1. Encoder gencg_{enc}:将输入 xtx_t 映射为潜在表示 ztz_t
  2. 自回归模型 garg_{ar}(如GRU):将历史信息 z≤tz_{\le t} 总结为上下文向量 ctc_t
  3. 预测:使用 ctc_t 预测未来的 zt+kz_{t+k}

InfoNCE损失函数

LN=−EX[log⁡exp⁡(zt+kTWkct)∑xj∈Xexp⁡(zjTWkct)]L_N = -\mathbb{E}_X \left[ \log \frac{\exp(z_{t+k}^T W_k c_t)}{\sum_{x_j \in X} \exp(z_j^T W_k c_t)} \right]

性能表现

  • ImageNet线性评估 Top-1: 48.7%

历史意义

CPC提出的InfoNCE损失成为对比学习的标准损失函数,被后续大量工作采用。


2.4 CMC (ECCV 2019)

论文:*Contrastive Multiview Coding *
image.png

核心思想

多视角对比学习:人类通过多种感官(视觉、听觉、触觉)感知世界,不同视角共享相同的语义信息。

网络架构

  • 为每个View(如RGB、深度图、法线图)配备独立的Encoder
  • 将不同View的特征投影到同一个单位球面上

损失函数

扩展的InfoNCE损失,最大化同一物体不同View之间的互信息:

L=−log⁡exp⁡(f1⋅f2/τ)∑jexp⁡(f1⋅fj/τ)L = -\log \frac{\exp(f_1 \cdot f_2 / \tau)}{\sum_{j} \exp(f_1 \cdot f_j / \tau)}

其中 f1,f2f_1, f_2 是同一物体的不同View特征。

历史意义

CMC将对比学习从单模态扩展到多模态,启发了后续多模态预训练工作(如CLIP)。这里使用了不同编码器来处理不同类型的输入,而后续transformer面世后,提供了统一处理不同模态数据的可能性。


第一阶段小结

论文 核心创新 负样本来源 性能 (Top-1)
InstDisc Memory Bank + NCE Loss Memory Bank 46.5%
InvaSpread 端到端Siamese Batch内 48.8%
CPC v1 InfoNCE + 预测未来 随机采样 48.7%
CMC 多视角对比 跨View -

阶段特征:方法多样化,但性能尚未突破50%,主要瓶颈在于负样本数量和特征一致性。


3. 第二阶段:CV双雄 (2020)

2020年是对比学习的爆发期,MoCo系列和SimCLR系列的竞争推动了技术快速迭代,性能实现飞跃。

3.1 MoCo v1 (CVPR 2020)

论文:Momentum Contrast for Unsupervised Visual Representation Learning
image.png

核心思想

将对比学习视为字典查询任务,字典需规模大、特征一致。

网络架构

  1. Query Encoder fqf_q:正常梯度更新
  2. Key Encoder fkf_k:动量更新
  3. Queue:存储最近的K个负样本特征

关键技术创新

  • Queue机制:解耦字典大小与Batch Size(Queue Size = 65536)
  • 动量更新:θk←mθk+(1−m)θq\theta_k \leftarrow m \theta_k + (1-m) \theta_q,保证Key Encoder缓慢演进

损失函数

InfoNCE损失:

Lq=−log⁡exp⁡(q⋅k+/τ)∑i=0Kexp⁡(q⋅ki/τ)L_q = -\log \frac{\exp(q \cdot k_+ / \tau)}{ \sum_{i=0}^{K} \exp(q \cdot k_i / \tau)}

性能表现

  • ImageNet线性评估 Top-1: 68.6%

历史意义

MoCo首次将对比学习性能提升到60%以上,证明了动量机制的有效性,成为后续工作的重要基线。


3.2 SimCLR v1 (ICML 2020)

论文:A Simple Framework for Contrastive Learning of Visual Representations

image.png

核心思想

一个简单的端到端框架,通过强大的数据增强和非线性投影提升表征质量。

网络架构

  1. Encoder f(⋅)f(\cdot):ResNet-50
  2. Projection Head g(⋅)g(\cdot):2层MLP(关键创新)
    • 结构:Linear → ReLU → Linear
    • 输入维度:2048,输出维度:128

损失函数

Normalized Temperature-scaled Cross Entropy Loss:

li,j=−log⁡exp⁡(sim(zi,zj)/τ)∑k=12N1[k≠i]exp⁡(sim(zi,zk)/τ)l_{i,j} = -\log \frac{\exp(\text{sim}(z_i, z_j)/\tau)}{\sum_{k=1}^{2N} \mathbb{1}_{[k \neq i]} \exp(\text{sim}(z_i, z_k)/\tau)}

其中 sim(u,v)=uTv/(∥u∥∥v∥)\text{sim}(u, v) = u^T v / (\|u\| \|v\|) 为余弦相似度。

关键技术创新

  • MLP Projector: Linear → ReLU → Linear(Projector后特征适合对比,Projector前特征适合下游任务)
  • 强数据增强: RandomResizedCrop + ColorJitter + GaussianBlur + RandomHorizontalFlip(随机裁剪和随机颜色变换效果最好)

性能表现

  • ImageNet线性评估 Top-1: 76.5%

历史意义

SimCLR证明了端到端训练的潜力,MLP Projector和强数据增强成为对比学习的标配。


3.3 MoCo v2 (2020)

论文:Improved Baselines with Momentum Contrastive Learning

image.png

核心思想

将SimCLR的有效组件集成到MoCo框架中,证明MoCo架构在小Batch下也能超越SimCLR。

改进点

增加MLP Projector、增强数据增强、余弦学习率调度

性能表现

  • ImageNet线性评估 Top-1: 71.1%
  • Batch Size仅256,可以在单机8卡下训练,性能超过需要更多机器的SimCLR v1

历史意义

MoCo v2证明了架构设计的重要性,小Batch + 好架构可以战胜大Batch + 简单架构。


3.4 SimCLR v2 (NeurIPS 2020)

论文:Big Self-Supervised Models are Strong Semi-Supervised Learners
image.png

核心思想

大模型是强半监督学习者,通过"自监督预训练 → 部分标签微调 → 知识蒸馏"三步走策略。

关键改进

更深Projector(3层MLP)、更大模型(ResNet-152 3x)、动量编码器

性能表现

  • ImageNet 线性评估Top-1: 79.8%

历史意义

SimCLR v2证明了自监督预训练在半监督学习中的巨大潜力,为后续大模型预训练提供了思路。


3.5 CPC v2 (ICLR 2020)

论文:Data-Efficient Image Recognition with Contrastive Predictive Coding
image.png

核心思想

通过增大模型容量和改进训练细节提升CPC性能。

关键改进

更大模型(ResNet-161)、LayerNorm替代BatchNorm、多方向预测

性能表现

  • ImageNet线性评估 Top-1: 71.5%

历史意义

CPC v2证明了预测式对比学习的潜力,但复杂度较高,后续工作较少采用。


3.6 SwAV (NeurIPS 2020)

论文:Unsupervised Learning of Visual Features by Contrasting Cluster Assignments

image.png

核心思想

对比聚类指派(Cluster Assignments)而非特征本身,通过在线聚类实现无负样本对比学习。

网络架构

  1. Encoder f(⋅)f(\cdot):ResNet-50
  2. Projection Head g(⋅)g(\cdot):2层MLP
  3. Prototypes CC:可学习的聚类中心(如3000个)

Swapped Prediction损失

给定同一图像的两个增强视角 x1,x2x_1, x_2:

  1. 计算特征 z1=g(f(x1)),z2=g(f(x2))z_1 = g(f(x_1)), z_2 = g(f(x_2))
  2. 使用Sinkhorn-Knopp算法计算聚类分配 q1,q2q_1, q_2
  3. 交换预测:用 z1z_1 预测 q2q_2,用 z2z_2 预测 q1q_1

L(z1,z2)=ℓ(z1,q2)+ℓ(z2,q1)L(z_1, z_2) = \ell(z_1, q_2) + \ell(z_2, q_1)

关键技术创新

  • Multi-crop策略:2个标准裁剪 + 6个小裁剪,大幅增加正样本对
  • 在线聚类:Sinkhorn-Knopp算法求解最优传输问题

性能表现

  • ImageNet线性评估 Top-1: 75.3%

历史意义

SwAV证明了聚类方法在对比学习中的有效性,Multi-crop策略被后续工作广泛采用。


第二阶段小结

论文 年份 核心创新 Batch Size 性能 (Top-1)
MoCo v1 2020 Momentum Queue 256 68.6%
SimCLR v1 2020 MLP Projector + 强增强 4096 76.5%
MoCo v2 2020 集成SimCLR tricks 256 71.1%
SimCLR v2 2020 大模型 + 半监督 4096 79.8%
CPC v2 2020 LayerNorm + 大模型 - 71.5%
SwAV 2020 在线聚类 + Multi-crop 4096 75.3%

阶段特征:

  • MoCo与SimCLR的竞争推动技术快速迭代
  • 性能从60%提升到75%,逼近监督学习
  • MLP Projector、强数据增强、Multi-crop成为标配

4. 第三阶段:不用负样本 (2020-2021)

这一阶段的研究挑战了"对比学习必须依赖负样本"的直觉,通过非对称结构避免模型坍塌。

4.1 BYOL (NeurIPS 2020)

论文:Bootstrap Your Own Latent - A New Approach to Self-Supervised Learning
image.png

核心思想

通过一个网络预测另一个网络的输出来学习,完全不需要负样本。

网络架构

Online Network(Encoder + Projector + Predictor)+ Target Network(动量更新)

损失函数

均方误差(MSE)损失:

Lθ=∥qˉθ(zθ)−zˉξ′∥22L_\theta = \| \bar{q}_\theta(z_\theta) - \bar{z}'_\xi \|^2_2

为什么不坍塌?

  1. Predictor的非对称性:Online Network有Predictor,Target Network没有
  2. 动量更新:Target Network缓慢演进,提供稳定的目标
  3. Batch Normalization:隐式地引入了负样本信息(有争议)

性能表现

  • ImageNet线性评估 Top-1: 74.3%
  • 无需负样本,性能超过MoCo v2

历史意义

BYOL首次证明了无负样本对比学习的可行性,引发了对"为什么不坍塌"的广泛讨论。


4.2 SimSiam (CVPR 2021)

论文:Exploring Simple Siamese Representation Learning
image.png

核心思想

探究Siamese网络在没有负样本、没有动量编码器时为何不坍塌,发现Stop-gradient是核心。

网络架构

  1. 对称的Encoder f(⋅)f(\cdot)
  2. Projection Head h(⋅)h(\cdot):3层MLP
  3. Prediction Head g(⋅)g(\cdot):2层MLP(仅一侧有)

损失函数

负余弦相似度:

D(p1,z2)=−p1∥p1∥2⋅z2∥z2∥2\mathcal{D}(p_1, z_2) = -\frac{p_1}{\|p_1\|_2} \cdot \frac{z_2}{\|z_2\|_2}

对称化损失:

L=12D(p1,stopgrad(z2))+12D(p2,stopgrad(z1))\mathcal{L} = \frac{1}{2}\mathcal{D}(p_1, \text{stopgrad}(z_2)) + \frac{1}{2}\mathcal{D}(p_2, \text{stopgrad}(z_1))

关键发现:Stop-gradient是核心

消融实验:

配置 是否坍塌 性能
有Stop-gradient 否 71.3%
无Stop-gradient 是 0.1%
有动量更新,无Stop-gradient 是 0.1%

结论:

  • Stop-gradient是防止坍塌的充分必要条件
  • 动量更新不是必须的(与BYOL不同)
  • Predictor + Stop-gradient构成非对称性

理论解释

SimSiam可以看作EM算法的一种形式:

  • E-step:固定一侧网络(Stop-gradient),优化另一侧
  • M-step:交替优化

性能表现

  • ImageNet线性评估 Top-1: 71.3%
  • 架构最简单,但性能略低于BYOL

历史意义

SimSiam是对比学习的总结性工作,将所有方法归纳到统一框架中,揭示了防止坍塌的本质机制。


第三阶段小结

论文 负样本 动量更新 Predictor Stop-gradient 性能 (Top-1)
BYOL 否 是 是 隐式 74.3%
SimSiam 否 否 是 显式 71.3%

阶段特征:

  • 突破了"对比学习必须有负样本"的直觉
  • 揭示了非对称结构(Predictor + Stop-gradient)的重要性
  • 为后续简化对比学习框架提供了思路

5. 第四阶段:Transformer时代 (2021)

随着Vision Transformer (ViT)在CV领域的普及,对比学习也开始向Transformer架构迁移。

5.1 MoCo v3 (ICCV 2021)

论文:An Empirical Study of Training Self-Supervised Vision Transformers

核心思想

研究自监督ViT训练的不稳定性问题,并提出解决方案。

问题根源

ViT训练不稳定(梯度突变),问题定位在Patch Embedding层。

解决方案:

Fixed Random Patch Projection(冻结第一层线性投影)

性能表现

  • ImageNet线性评估 Top-1: 81%

历史意义

MoCo v3首次成功将对比学习应用于ViT,性能突破80%,为后续ViT自监督学习奠定了基础。


5.2 DINO (ICCV 2021)

论文:Emerging Properties in Self-Supervised Vision Transformers

image.png

核心思想

**自蒸馏(Self-Distillation)**框架,发现自监督ViT能自动学习到物体的语义分割边界。

网络架构

  1. Student Network:正常梯度更新
  2. Teacher Network:动量更新(EMA)

    θt←λθt+(1−λ)θs\theta_t \leftarrow \lambda \theta_t + (1-\lambda) \theta_s

    其中 λ\lambda 从0.996线性增加到1

损失函数

交叉熵损失,匹配Student和Teacher的输出分布:

min⁡θsH(Pt(x),Ps(x))\min_{\theta_s} H(P_t(x), P_s(x))

其中 PP 是经过softmax的输出分布。

关键技术创新

  • Centering:减去Teacher输出均值,防止维度坍塌
  • Sharpening:Student低温度,Teacher高温度
  • Multi-crop:2个全局视角 + 多个局部视角

性能表现

  • ImageNet线性评估 Top-1: 80.1%

历史意义

DINO不仅在性能上达到SOTA,更重要的是发现了自监督ViT的涌现特性(Emerging Properties),为理解ViT提供了新视角。


第四阶段小结

论文 架构 核心创新 性能 (Top-1)
MoCo v3 ViT Fixed Patch Projection 81.0%
DINO ViT Centering + 自蒸馏 80.1%

阶段特征:

  • 成功将对比学习迁移到ViT架构
  • 性能突破80%,达到新高度
  • 发现ViT的独特性质(自动语义分割)

6. 论文演进关系图

下图展示了CV对比学习四个阶段的技术演进脉络和论文之间的继承关系:

image.png

关键演进路径:

  1. InstDisc → MoCo系列:Memory Bank → Queue,引入动量更新
  2. InvaSpread → SimCLR系列:端到端训练 → 大Batch + 强增强
  3. MoCo/SimCLR → BYOL/SimSiam:依赖负样本 → 无需负样本
  4. CNN → ViT:MoCo v2 → MoCo v3,SwAV → DINO

7. 核心技术对比总结

7.1 完整对比表格

论文 年份 会议 负样本 核心组件 关键Trick 性能 (Top-1)
InstDisc 2018 CVPR 是 Memory Bank NCE Loss 46.5%
InvaSpread 2019 CVPR 是 Siamese 端到端 48.8%
CPC v1 2018 - 是 预测未来 InfoNCE 48.7%
CMC 2019 ECCV 是 多视角 跨模态 -
MoCo v1 2020 CVPR 是 Momentum Queue 动量更新 68.6%
SimCLR v1 2020 ICML 是 MLP Projector 强数据增强 76.5%
MoCo v2 2020 - 是 Queue + MLP 集成tricks 71.1%
SimCLR v2 2020 NeurIPS 是 大模型 半监督 79.8%
CPC v2 2020 ICLR 是 大模型 LayerNorm 71.5%
SwAV 2020 NeurIPS 否(聚类) Prototypes Multi-crop 75.3%
BYOL 2020 NeurIPS 否 Predictor + EMA 非对称 74.3%
SimSiam 2021 CVPR 否 Stop-gradient 梯度截断 71.3%
MoCo v3 2021 ICCV 是 ViT + Queue Fixed Patch 81.0%
DINO 2021 ICCV 否 ViT + 自蒸馏 Centering 80.1%

7.2 技术组件对比

技术组件 首次提出 采用论文 作用
Memory Bank InstDisc InstDisc 存储负样本特征
InfoNCE Loss CPC v1 MoCo, SimCLR等 标准对比损失
Momentum Update MoCo v1 MoCo, BYOL, DINO 稳定特征演进
MLP Projector SimCLR v1 几乎所有后续工作 分离对比空间与表征空间
强数据增强 SimCLR v1 几乎所有后续工作 提升不变性
Multi-crop SwAV SwAV, DINO 增加正样本对
Predictor BYOL BYOL, SimSiam 打破对称性
Stop-gradient SimSiam SimSiam 防止坍塌
Centering DINO DINO 防止维度坍塌

8. 技术演进脉络深度分析

8.1 负样本策略的演进

阶段1:Memory Bank(InstDisc)

  • 优点:负样本数量不受Batch Size限制
  • 缺点:特征不一致(更新滞后)

阶段2:Queue + Momentum(MoCo)

  • 优点:特征一致性好,负样本数量大
  • 缺点:需要额外的动量编码器

阶段3:大Batch(SimCLR)

  • 优点:端到端训练,特征完全一致
  • 缺点:需要大量计算资源

阶段4:无需负样本(BYOL/SimSiam)

  • 优点:简化训练,无需大Batch或Queue
  • 缺点:需要精心设计防止坍塌

8.2 防止坍塌的机制

坍塌问题:所有样本映射到相同的特征,模型失去判别能力。

解决方案演进:

  1. 负样本推开(InstDisc, MoCo, SimCLR)

    • 通过对比损失显式推开负样本
    • 需要大量负样本
  2. 聚类约束(SwAV)

    • 通过聚类分配约束特征分布
    • 使用Sinkhorn-Knopp算法保证均匀分配
  3. 非对称架构(BYOL, SimSiam)

    • Predictor打破对称性
    • Stop-gradient阻止信息流
  4. Centering(DINO)

    • 减去输出均值,防止某一维度主导
    • 结合Sharpening控制熵

8.3 数据增强的重要性

SimCLR的消融实验表明,数据增强对性能的影响巨大:

增强组合 性能 (Top-1)
仅RandomCrop 48.3%
+ ColorJitter 61.9% (+13.6%)
+ GaussianBlur 66.6% (+4.7%)

关键发现:

  • ColorJitter是最重要的增强(+13.6%)
  • 不同增强的组合效果优于单一增强
  • 增强强度需要精心调节

8.4 架构演进:CNN → ViT

CNN时代的挑战:

  • 归纳偏置强(局部性、平移不变性)
  • 难以捕捉全局依赖

ViT的优势:

  • 自注意力机制捕捉全局信息
  • 更灵活的表征能力

ViT的挑战:

  • 训练不稳定(梯度突变)
  • 需要更多数据

解决方案:

  • MoCo v3:Fixed Patch Projection
  • DINO:Centering + 自蒸馏

9. 总结与展望

9.1 发展规律总结

  1. 从复杂到简单

    • 早期:Memory Bank、复杂的代理任务
    • 后期:简单的Siamese架构 + Stop-gradient
  2. 从依赖负样本到无需负样本

    • 早期:大量负样本是必须的
    • 后期:通过非对称结构避免坍塌
  3. 从小模型到大模型

    • 早期:ResNet-50
    • 后期:ResNet-152 (3x)、ViT-L
  4. 从CNN到Transformer

    • 2018-2020:CNN主导
    • 2021-:ViT成为主流

9.2 核心经验总结

必备组件:

  1. MLP Projector:分离对比空间与表征空间
  2. 强数据增强:ColorJitter + GaussianBlur
  3. 防坍塌机制:负样本 / Predictor / Centering

有效Tricks:

  1. Multi-crop:增加正样本对,提升性能
  2. 动量更新:稳定特征演进
  3. 温度系数:控制分布的平滑度(通常0.07-0.1)
  4. 长训练:800-1000 epochs

10. 参考文献

[1] Wu, Z., Xiong, Y., Yu, S. X., & Lin, D. (2018). Unsupervised feature learning via non-parametric instance discrimination. In CVPR (pp. 3733-3742). https://arxiv.org/abs/1805.01978

[2] Ye, M., Zhang, X., Yuen, P. C., & Chang, S. F. (2019). Unsupervised embedding learning via invariant and spreading instance feature. In CVPR (pp. 6210-6219). https://arxiv.org/abs/1904.03436

[3] Oord, A. v. d., Li, Y., & Vinyals, O. (2018). Representation learning with contrastive predictive coding. arXiv preprint arXiv:1807.03748. https://arxiv.org/abs/1807.03748

[4] Tian, Y., Krishnan, D., & Isola, P. (2019). Contrastive multiview coding. In ECCV (pp. 776-794). https://arxiv.org/abs/1906.05849

[5] He, K., Fan, H., Wu, Y., Xie, S., & Girshick, R. (2020). Momentum contrast for unsupervised visual representation learning. In CVPR (pp. 9729-9738). https://arxiv.org/abs/1911.05722

[6] Chen, T., Kornblith, S., Norouzi, M., & Hinton, G. (2020). A simple framework for contrastive learning of visual representations. In ICML (pp. 1597-1607). https://arxiv.org/abs/2002.05709

[7] Chen, X., Fan, H., Girshick, R., & He, K. (2020). Improved baselines with momentum contrastive learning. arXiv preprint arXiv:2003.04297. https://arxiv.org/abs/2003.04297

[8] Chen, T., Kornblith, S., Swersky, K., Norouzi, M., & Hinton, G. (2020). Big self-supervised models are strong semi-supervised learners. In NeurIPS (pp. 22243-22255). https://arxiv.org/abs/2006.10029

[9] Hénaff, O. J., Srinivas, A., De Fauw, J., Razavi, A., Doersch, C., Eslami, S. M., & Oord, A. v. d. (2020). Data-efficient image recognition with contrastive predictive coding. In ICML (pp. 4182-4192). https://arxiv.org/abs/1905.09272

[10] Caron, M., Misra, I., Mairal, J., Goyal, P., Bojanowski, P., & Joulin, A. (2020). Unsupervised learning of visual features by contrasting cluster assignments. In NeurIPS (pp. 9912-9924). https://arxiv.org/abs/2006.09882

[11] Grill, J. B., Strub, F., Altché, F., Tallec, C., Richemond, P. H., Buchatskaya, E., ... & Valko, M. (2020). Bootstrap your own latent-a new approach to self-supervised learning. In NeurIPS (pp. 21271-21284). https://arxiv.org/abs/2006.07733

[12] Chen, X., & He, K. (2021). Exploring simple siamese representation learning. In CVPR (pp. 15750-15758). https://arxiv.org/abs/2011.10566

[13] Chen, X., Xie, S., & He, K. (2021). An empirical study of training self-supervised vision transformers. In ICCV (pp. 9640-9649). https://arxiv.org/abs/2104.02057

[14] Caron, M., Touvron, H., Misra, I., Jégou, H., Mairal, J., Bojanowski, P., & Joulin, A. (2021). Emerging properties in self-supervised vision transformers. In ICCV (pp. 9650-9660). https://arxiv.org/abs/2104.14294

CATALOG
  1. 1. 摘要
  2. 2. 1. 引言
    1. 2.1. 1.1 对比学习的核心思想
    2. 2.2. 1.2 对比学习的重要意义
    3. 2.3. 1.3 发展历程概览
  3. 3. 2. 第一阶段:百花齐放 (2018-2019)
    1. 3.1. 2.1 InstDisc (CVPR 2018)
      1. 3.1.1. 核心思想
      2. 3.1.2. 关键创新:
      3. 3.1.3. 性能表现
      4. 3.1.4. 历史意义
    2. 3.2. 2.2 InvaSpread (CVPR 2019)
      1. 3.2.1. 核心思想
      2. 3.2.2. 关键技术创新
      3. 3.2.3. 局限性
      4. 3.2.4. 性能表现
      5. 3.2.5. 历史意义
    3. 3.3. 2.3 CPC v1 (2018)
      1. 3.3.1. 核心思想
      2. 3.3.2. 网络架构
      3. 3.3.3. InfoNCE损失函数
      4. 3.3.4. 性能表现
      5. 3.3.5. 历史意义
    4. 3.4. 2.4 CMC (ECCV 2019)
      1. 3.4.1. 核心思想
      2. 3.4.2. 网络架构
      3. 3.4.3. 损失函数
      4. 3.4.4. 历史意义
    5. 3.5. 第一阶段小结
  4. 4. 3. 第二阶段:CV双雄 (2020)
    1. 4.1. 3.1 MoCo v1 (CVPR 2020)
      1. 4.1.1. 核心思想
      2. 4.1.2. 网络架构
      3. 4.1.3. 关键技术创新
      4. 4.1.4. 损失函数
      5. 4.1.5. 性能表现
      6. 4.1.6. 历史意义
    2. 4.2. 3.2 SimCLR v1 (ICML 2020)
      1. 4.2.1. 核心思想
      2. 4.2.2. 网络架构
      3. 4.2.3. 损失函数
      4. 4.2.4. 关键技术创新
      5. 4.2.5. 性能表现
      6. 4.2.6. 历史意义
    3. 4.3. 3.3 MoCo v2 (2020)
      1. 4.3.1. 核心思想
      2. 4.3.2. 改进点
      3. 4.3.3. 性能表现
      4. 4.3.4. 历史意义
    4. 4.4. 3.4 SimCLR v2 (NeurIPS 2020)
      1. 4.4.1. 核心思想
      2. 4.4.2. 关键改进
      3. 4.4.3. 性能表现
      4. 4.4.4. 历史意义
    5. 4.5. 3.5 CPC v2 (ICLR 2020)
      1. 4.5.1. 核心思想
      2. 4.5.2. 关键改进
      3. 4.5.3. 性能表现
      4. 4.5.4. 历史意义
    6. 4.6. 3.6 SwAV (NeurIPS 2020)
      1. 4.6.1. 核心思想
      2. 4.6.2. 网络架构
      3. 4.6.3. Swapped Prediction损失
      4. 4.6.4. 关键技术创新
      5. 4.6.5. 性能表现
      6. 4.6.6. 历史意义
    7. 4.7. 第二阶段小结
  5. 5. 4. 第三阶段:不用负样本 (2020-2021)
    1. 5.1. 4.1 BYOL (NeurIPS 2020)
      1. 5.1.1. 核心思想
      2. 5.1.2. 网络架构
      3. 5.1.3. 损失函数
      4. 5.1.4. 为什么不坍塌?
      5. 5.1.5. 性能表现
      6. 5.1.6. 历史意义
    2. 5.2. 4.2 SimSiam (CVPR 2021)
      1. 5.2.1. 核心思想
      2. 5.2.2. 网络架构
      3. 5.2.3. 损失函数
      4. 5.2.4. 关键发现:Stop-gradient是核心
      5. 5.2.5. 理论解释
      6. 5.2.6. 性能表现
      7. 5.2.7. 历史意义
    3. 5.3. 第三阶段小结
  6. 6. 5. 第四阶段:Transformer时代 (2021)
    1. 6.1. 5.1 MoCo v3 (ICCV 2021)
      1. 6.1.1. 核心思想
      2. 6.1.2. 问题根源
      3. 6.1.3. 解决方案:
      4. 6.1.4. 性能表现
      5. 6.1.5. 历史意义
    2. 6.2. 5.2 DINO (ICCV 2021)
      1. 6.2.1. 核心思想
      2. 6.2.2. 网络架构
      3. 6.2.3. 损失函数
      4. 6.2.4. 关键技术创新
      5. 6.2.5. 性能表现
      6. 6.2.6. 历史意义
    3. 6.3. 第四阶段小结
  7. 7. 6. 论文演进关系图
    1. 7.0.1. 关键演进路径:
  • 8. 7. 核心技术对比总结
    1. 8.1. 7.1 完整对比表格
    2. 8.2. 7.2 技术组件对比
  • 9. 8. 技术演进脉络深度分析
    1. 9.1. 8.1 负样本策略的演进
    2. 9.2. 8.2 防止坍塌的机制
    3. 9.3. 8.3 数据增强的重要性
    4. 9.4. 8.4 架构演进:CNN → ViT
  • 10. 9. 总结与展望
    1. 10.1. 9.1 发展规律总结
    2. 10.2. 9.2 核心经验总结
  • 11. 10. 参考文献