一 写在前面
未经允许 不得转载 谢谢~~~
- title: SimSiam: Exploring Simple Siamese Representation Learning
-
出处:CVPR2021
image.png
二 主要内容
2.1 motivation
主要是为了解决自监督以及无监督中最常用的孪生网络siamese network容易崩塌的问题。
目前为了解决这个问题,现有的方法主要有三种:
- Contrastive learning:以SimCLR为代表,构造正负样本,并需要超大batch size
- Clustering: 用聚类的想法获取到不同的类别中心,虽然没有上一类方法中明显定义的正负样本,但这里的聚类中心也可以扮演负中心,但也需要超大batch size以及memory bank来提供足够多的样本用于聚类;SwAV是一个代表(我没有看这个文章)
- momentum encoder:BYOL 是另一个方法,提出通过一个momentum encoder解决训练坍塌问题;
2.2 本文方法
本文提出momentum encoder并不是必须的,只需要切掉其中一路的梯度回传就可以了。
![](https://img.haomeiwen.com/i9933353/091e4ca89fe64a09.png)
示意图如上图所示,其实整个模型并不复杂,基本都在图里表达清楚了。
- 输入图像x;
- 做两次不同的增强得到x1以及x2;
- 对x1依次过一个encoder f以及一个predictor h,对x2过一个encoder f,这里两个f是共享的;
- 最大化两路的similarity做为优化的目标函数,但是在梯度回传的过程中切掉x2这一路的直接回传;
文章还给出了伪代码:
![](https://img.haomeiwen.com/i9933353/3036e5e910206022.png)
网友评论