在深度学习领域,长尾分布问题一直是视觉识别任务中的一个难题。长尾分布指的是在现实世界的数据集中,少数类别拥有大量样本,而大多数类别只有少量样本,形成一种从“头”到“尾”样本数量指数级递减的不平衡分布。这种不平衡的数据分布对标准的监督学习算法构成了挑战,因为这些算法主要是为平衡的数据集设计的。近年来,监督对比学习(Supervised Contrastive Learning, SCL)因其在缓解数据不平衡方面的潜力而受到关注。然而,SCL的性能受限于其需要足够大的批量数据来构建涵盖所有类别的对比对,这在类别不平衡的数据中难以实现。
针对这一问题,清华大学的Chaoqun Du、Yulin Wang、Shiji Song和Gao Huang在IEEE TPAMI 2024年的一篇论文中提出了一种新颖的概率对比学习方法——ProCo(Probabilistic Contrastive Learning)。ProCo算法的核心思想是通过估计每个类别在特征空间中的样本数据分布,并据此采样对比对。ProCo算法的提出,旨在解决SCL在处理长尾分布数据时对大批量数据的依赖性,通过引入von Mises-Fisher(vMF)分布的混合模型来估计特征分布,从而允许在小批量数据中高效地估计所有类别的分布参数。
ProCo算法的提出,是对现有对比学习技术的一次重要补充。它通过简化的假设——即对比学习中的归一化特征遵循单位空间上的vMF分布——实现了两个主要优势:首先,可以通过仅使用第一阶样本矩来估计分布参数,这可以在不同批次中高效地在线计算;其次,基于估计的分布,vMF分布允许我们采样无限数量的对比对,并导出期望对比损失的封闭形式,从而实现高效优化。
ProCo算法不仅适用于长尾问题,还可以直接应用于半监督学习,通过为未标记数据生成伪标签,进而用于估计样本的分布。理论上,论文对ProCo的误差界限进行了分析,并通过在监督/半监督视觉识别和目标检测任务上的广泛实验结果证明了ProCo在多个数据集上持续超越现有方法的性能。
然而,ProCo算法也有其局限性。首先,ProCo依赖于vMF分布的假设,这可能不适用于所有类型的数据分布。此外,ProCo算法在实际应用中可能需要调整多个超参数以适应不同的数据集和任务,这可能会增加模型训练的复杂性。尽管如此,ProCo算法在处理长尾分布问题上展现出的潜力和效果是值得肯定的。
论文的实验部分对ProCo算法进行了深入的评估。作者在多个长尾和平衡数据集上进行了实验,包括CIFAR10/100-LT、ImageNet-LT、iNaturalist 2018和LVIS v1。实验结果表明,ProCo在各种情况下都能有效地提高模型的泛化性能,尤其是在长尾类别上。此外,ProCo算法在半监督学习任务中也显示出了良好的性能,证明了其在现实世界不平衡数据集中的应用潜力。