《Contrastive Learning with Hard Negative Samples》阅读笔记
1 动机和思路
对比学习在无监督表征学习领域的潜力无需多言,已经有非常多的例子证明其效果,目前比较多的针对对比学习的改进包括损失函数、抽样策略、数据增强方法等多方面,但是针对负对的研究相对而言更少一些,一般在构造正负对时,大部分模型都简单的把单张图像及其增强副本作为正对,其余样本均视为负对。这一策略可能会导致的问题是模型把相距很远的样本分得很开,而距离较近的负样本对之间可能比较难被区分。
基于此,本文构造了一个难负对的思想,主要目的在于,把离样本点距离很近但是又确实不属于同一类的样本作为负样本,加大了负样本的难度,从而使得类与类之间分的更开,来提升对比学习模型的表现。
2 方法
2.1 难负样本选取原则
好的难负样本有两点原则:1)与原始样本的标签不同;2)与原始样本尽量相似。
这一点就与之前的对比学习有比较明显的差异了,因为对比学习一般来说并不使用监督信息,因此除了锚点之外的其他样本,不管标签如何,都被认为是负对,所以问题的一个关键在于“用无监督的方法筛出不属于同一个标签的样本”。不仅如此,这里还有一个冲突的地方,既要与锚点尽可能相似,又得不属于同一类,这对于一个无监督模型来说是有难度的,因此本文在实际实现过程中进行了一个权衡,假如对样本的难度要求不是那么高的时候,就只满足原则1,而忽略原则2。同时,这种方法应该尽量不增加额外的训练成本。
2.2 具体方法
本文的重点在于如何进行难负样本采样,首先作者给出难负样本的采样分布函数:
即难负样本分布以与正类类别不同为条件的概率分布, q β ( x − ) q_β(x^-) qβ(x−)是正负样本点积乘以系数 β β β之后的指数项再乘以单纯的负样本采样分布, β