论文:Bootstrap your own latent A new approach to self-supervised Learning
链接:https://arxiv.org/abs/2006.07733
代码:https://github.com/deepmind/deepmind-research/tree/master/byol
BYOL发表于NIPS2020,个人觉得是非常棒的一个工作,相信对未来的自监督领域发展会有较大的借鉴意义。
在讲这篇论文之前,先从自监督训练的崩塌问题开始说起。我们知道现在大部分的自监督训练都是通过约束同一张图的不同形态之间的特征差异性来实现特征提取,不同形态一般通过指定的数据增强实现,那么如果只是这么做的话(只有正样本对),网络很容易对所有输入都输出一个固定值,这样特征差异性就是0,完美符合优化目标,但这不是我们想要的,这就是训练崩塌了。因此一个自然的想法是我们不仅仅要拉近相同数据的特征距离,也要拉远不同数据的特征距离,换句话说就是不仅要有正样本对,也要有负样本对,这确实解决了训练崩塌的问题,但是也带来了一个新的问题,那就是对负样本对的数量要求较大,因为只有这样才能训练出足够强的特征提取能力,因此我们可以看到这方面的代表作如SimCLR系列都需要较大的batch size才能有较好的效果。
这篇论文提出的BYOL特点在于没有负样本对,这是一个非常新奇的想法,通过增加prediction和stop-gradient避免训练退化。整体上分为online network和target network两部分,如图Figure2所示,通过约束这2个网络输出特征的均方误差(MSE)来训练online network