当前位置:网站首页>自监督学习 —— MoCo v2
自监督学习 —— MoCo v2
2022-08-09 19:55:00 【为为为什么】
对比无监督学习最近显示出令人鼓舞的进展,例如在动量对比(MoCo)和SimCLR中。在这篇笔记中,我们通过在MoCo框架中实现SimCLR的两个设计改进来验证它们的有效性。通过对MoCo的简单修改,即使用MLP投影头和更多的数据增强。
简介
- 最近关于从图像进行无监督表征学习的研究正集中在一个被称为对比学习的中心概念上。结果是有希望的:例如,动量对比(MoCo)表明,无监督预训练可以在多个检测和分割任务中超过其ImageNet监督的对应部分,SimCLR 进一步缩小了无监督和监督预训练表示之间的线性分类器性能差距。
- 原始论文:《Improved Baselines with Momentum Contrastive Learning》
对比学习
- 对于一个从组织成相似/不同对的数据中学习相似/不同表示的框架。可以表述为一个查字典的问题。InfoNCE 是解决此类问题常用的损失函数:
- 这里q是查询表示,k+ 是正(相似)关键样本的表示,{k−} 是负(不相似)关键样本的表示。\tau 是温度超参数。如果查询和密钥是同一图像的数据增强版本,则它们形成正对,否则形成负对。
对比损失可以通过各种不同的密钥维护机制最小化。在端到端机制中,负样本来自同一批数据,并通过反向传播进行端到端更新。SimCLR 就是基于这种机制,需要大 batchsize 才能提供大量底片。在MoCo机制中,负样本被保持在队列中,并且在每个训练批次中只有查询样本和正样本被编码。采用动量编码器来提高当前模型和之前模型之间的表示一致性。
具体可以移步参考 自监督学习 —— MoCo v1
MoCo v2 的改进思路
- MoCo v2 的亮点是不需要强大的 Google TPU 加持,仅仅使用 8-GPU 就能超越 SimCLR v1的性能。
- MoCo v2 是在 SimCLR 发表以后相继出来的,它是一篇很短的文章, 只有2页。在MoCo v2 中,作者们整合 SimCLR 中的两个主要提升方法到 MoCo 中,并且验证了SimCLR算法的有效性。
- 在 SimCLR v1 发布以后,MoCo的作者团队就迅速地将 SimCLR的两个提点的方法移植到了 MoCo 上面,想看下性能的变化,也就是MoCo v2。结果显示,MoCo v2的结果取得了进一步的提升并超过了 SimCLR v1,证明MoCo系列方法的地位。因为 MoCo v2 文章只是移植了 SimCLR v1 的技巧而没有大的创新,所以作者就写成了一个只有2页的技术报告。
方法改进
- SimCLR的两个提点的方法就是:
- 使用强大的数据增强策略,具体就是额外使用了 Gaussian Deblur 的策略和使用巨大的 Batch size,让自监督学习模型在训练时的每一步见到足够多的负样本 (negative samples),这样有助于自监督学习模型学到更好的 visual representations。
- 使用预测头 Projection head。在 SimCLR 中,Encoder 得到的2个 visual representation再通过Prediction head ()进一步提特征,预测头是一个 2 层的MLP,将 visual representation 这个 2048 维的向量进一步映射到 128 维隐空间中,得到新的representation 。利用 去求loss 完成训练,训练完毕后扔掉预测头,保留 Encoder 用于获取 visual representation。
- 实验测试了改进后的方法和 MoCo v1 的性能:
- 也比对了和 SimCLR 方法在对其两个附加条件后的性能:
- 结果表明两个附加 trick 可以有效提示 MoCo v1 的性能,在对其 trick 后 MoCo 还是比 SimCLR 能打的。
原始论文
file:///C:/Users/issuser/Downloads/202205291635050.pdf
参考资料
边栏推荐
- FS4066耐高压1到4节内置MOS的锂电池充电管理芯片
- [corctf 2022] 部分
- 威纶通触摸屏制作自定义弹出窗口的具体方法(3种)
- 阿里二面:没有 accept,能建立 TCP 连接吗?
- visual studio 2022调试技巧介绍
- DSPE-PEG-Azide, DSPE-PEG-N3, phospholipid-polyethylene glycol-azide can react directly with DBCO
- 【NOI模拟赛】防AK题(生成函数,单位根,Pollard-Rho)
- 蓝牙模块有哪些种类?BLE低功耗蓝牙模块有什么特点?
- Redis 大的情况下,key 要如何处理?
- 浅谈Numpy中的shape、reshape函数的区别
猜你喜欢

不经意传输协议OT

How are data integration APIs key to enterprise digital transformation?

Definition and Basic Operations of Linear Tables

Ali Ermi: Without accept, can a TCP connection be established?

倍福CX5120实现温度控制例程详细解析

别叫我玩,我要考PMP:考PMP选择机构需要了解的那些事儿

Beat the interviewer, the CURD system can also make technical content

访问控制知识

安科瑞支持以太网通讯、profibus通讯嵌入式电能表APM指导性技术要求-Susie 周

DSPE-PEG-Silane, DSPE-PEG-SIL, phospholipid-polyethylene glycol-silane modified silica particles
随机推荐
分数阶混沌系统李雅普指数和分岔图
Visual studio 2022 debugging skills introduction
定投的基金
《评估、创建和使用知识图谱的限制》2022最新230页博士论文,根特大学
Toronto Research Chemicals盐酸乙环胺应用说明
Oracle 字段自增
Transformer如何用于3D视觉?阿联酋MBZUAI最新《3D视觉Transformers处理》综述,涵盖100+种方法
matlab 神经网络 ANN 分类
UE4_定序器控制蓝图对象
安科瑞无线物联网智能电表ADW300指导性技术要求-Susie 周
C语言之实现倒置字符串的两种方法
Unity2D_线框材质
Error when source install/setup.bash
Reverse Analysis of Unknown Cryptographic Protocol Based on Network Data Flow
2.3 监督学习-2
6 g underwater channel modeling were summarized based on optical communication
如何从800万数据中快速捞出自己想要的数据?
[corctf 2022] 部分
Install Mysql8.0 on windos, and solve the problem of re-login exception ERROR 1045 (28000)
阿里二面:没有 accept,能建立 TCP 连接吗?