Improved Baselines with Momentum Contrastive Learning

1. 论文摘要

SimCLR 的两点有效改进是:在encoder 编码特征计算loss 前加入了 MLP 的projection head 以及多种数据增强手段。 将这两点改进应用到Moco 框架又可以解决SimCLR 本身需要大 batch size,比较依赖硬件内存的问题。

2. 方法介绍

  • Contrastive learning
    继续采用正负pair 判别的代理任务,query 和 key 来自同一张图片的不同数据增强方法则为正例, 否则为负例。
    Improved Baselines with Momentum Contrastive Learning
    Improved Baselines with Momentum Contrastive Learning
    原始的SimCLR 是采用end to end 的方式,负例keys 都是来源于同一个batch,并且通过反向传播来更新参数。假设batch 里有N 个样本,则计算affinity 的复杂度为N*N, 计算量较大,且比较依赖于大的batch size.
    而通过引入MoCo的框架,只需要把query送到encoder中去,而不需要很大的Batch。其中Momentum encoder用于计算positive和negative encoding的,但是这个encoder是不用反向梯度来更新的,而是直接用左边的encoder来做一个moving average。

实验结果

Improved Baselines with Momentum Contrastive Learning
针对MLP 、数据增强、cos 学习率以及训练epoch 的消融实验:
(1)MLP 对ImageNet 任务提升明显,从60.6%->66.2%, 对于voc object dection 提升有限。
(2)单独使用数据增强方法(引入新的blur augmentation),对linear classification 的准确率提高低于MLP, 但是在VOC detection的表现却更好,说明两任务之间的提升并不是单调一致的。
(3)使用新的学习率方法在ImageNet 有小幅度提升,对detection任务有小幅下降。
(4)增大训练的epoch可以提升两个任务的结果。
Improved Baselines with Momentum Contrastive Learning
Improved Baselines with Momentum Contrastive Learning

在相同的epoch 和batch size 下表现好于SimCLR, 并且对硬件的要求减小,训练时间加快。

相关文章:

  • 2022-12-23
  • 2022-01-31
  • 2021-07-06
  • 2021-11-13
  • 2021-09-19
  • 2021-09-19
猜你喜欢
  • 2021-09-19
  • 2021-09-19
  • 2022-12-23
  • 2021-11-05
  • 2021-10-12
  • 2021-11-02
相关资源
相似解决方案