对比学习
PCL(Prototypical Contrastive Learning)
摘要
本文提出了原型对比学习,连接了对比学习和聚类的无监督表示学习方法。PCL不仅仅学习实例区分额任务的低阶特征,更重要的是它通过聚类到特征空间来编码了语义结构信息。具体地,我们引入原型作为隐形变量来帮助寻找模型参数的最大似然估计在一个EM框架下。迭代地进行E-step: 通过聚类寻找原型的分布,M-step:通过对比学习最优网络参数。提出了ProtoNCE loss, 使得表示更接近他们的原型。PCL在多个基准测试上优于最先进的实例级对比学习方法,在迁移学习方面有了实质性的改进。
原型是指一组语义相近的样本的特征表示。我们给每个样本分配了几个不同量级的原型,构建了一个对比损失来使得这个样本的特征与它的相应原型更接近,相对于其他原型。另外,原型可以通过在特征上进行聚类得到。
最大化互信息分析
最小化ProtoNCE同时最大化了表示V和所有原型表示之间的互信息。这样会带来更好地表示学习,因为
- 编码器将学习原型之间的共享信息,并忽略每个原型中存在的单个噪声。共享额信息更有可能捕获更高层次的语义知识。
- 与实例特征相比,原型具有类标签之间的更大互信息。
Motivation
- 无监督对比学习一般是在instance discrimination任务基础上,但是ID有weakness: 没有编码语义结构信息(负样本对忽略它们相近的语义信息)