infonce infonce是nce的一个变体,它认为nce的做法太暴力了,noise sample(或者说负样本)本身很可能不是一个类别,但是nce的做法是给他们都打上了相同的label,这样有可能对于模型的优化过程产生negative的影响,二分类是非常简单直观的常见的建模形式,不过也确实存在标签定义粒度太粗糙的问题,所以工业上常常会出现类似于分群...
在代理任务上,NCE是设计了一个二分类问题,给定样本,需要推断它来自真实样本还是噪声;InfoNCE则是设计了一个多分类问题,推断 k 个样本中哪一个是真实的。 在适用范围上,NCE要求需要提前给定噪声分布 Q(x) ,而InfoNCE通过直接估计密度比 Pd(x|c)Q(x) 在不给定噪声分布 Q(x) 情况下从噪声中识别真实数据。 在...
InfoNCE则从多分类角度出发,通过估计正样本与噪声样本之间的互信息,提供了一个下界,也无需直接计算归一化参数。在语言模型中,NCE常用于word2vec的负采样,而InfoNCE在图像领域应用时,通过采样正样本和负样本构建对比学习任务,用得分函数来估计密度比。两者的主要区别在于,NCE采用二分类形式,InfoNCE则处...