InfoNCE(Information Noise-Contrastive Estimation)损失是一种常用于对比学习的损失函数。它的核心思想是通过最大化相似样本对的相似度,最小化不相似样本对的相似度,从而学习到有意义的表示。以下是对InfoNCE损失的详细解释。
InfoNCE损失的定义
InfoNCE损失基于噪声对比估计的思想,用于训练模型来区分正样本对和负样本对。它的公式通常表示如下:
L = − 1 N ∑ i = 1 N log exp ( sim ( z i , z i + ) ) exp ( sim ( z i , z i + ) ) + ∑ j = 1 K exp ( sim ( z i , z j − ) ) L = -\frac{1}{N} \sum_{i=1}^{N}\log\frac{\exp(\text{sim}(\mathbf{z}_i, \mathbf{z}_i^+))}{\exp(\text{sim}(\mathbf{z}_i,\mathbf{z}_i^+))+ \sum_{j=1}^{K}\exp(\text{sim}(\mathbf{z}_i, \mathbf{z}_j^-))} L=−N1∑i=1Nlogexp(sim(zi,z