机器学习算法与自然语言处理
(ML-NLP)是国内外最大的自然语言处理社区之一,汇聚超过50w订阅者,受众覆盖国内外NLP硕博生、高校老师、以及企业研究人员。

社区的愿景是促进国内外自然语言处理学术界、产业界和广大爱好者之间的交流和进步。
转载自 | 知乎
作者 | 匿名用户
原文链接 | https://www.zhihu.com/question/490962362/answer/2183731284
本文仅作学术分享,若侵权请联系后台删文处理
看了几篇Contrastive Learning的工作,分析和观点百花齐放,很有意思。

Decoupled Contrastive Learning

Yann组的最新工作,一开始以为是简单的去掉了一项做了个加权,仔细阅读后发现不简单,竟然去掉了分母里Push Away View2后,就能解决对比学习Large Batch-Size的问题。
论文先通过分析了对比学习对各项的梯度,发现batch size影响最大的是一个NPC mulplier的估计,也就下面这一项,它会出现在几个梯度的分项中,过小的batch size会造成该项的distribution shift,从而影响训练,
怎么做呢?我们可以在Contrastive Loss中去掉分母中的第二个view就可以了。也就是说,不要push增广得样本即可:
效果有点离谱,基本上比较小的batch-size也有非常大的提升:

Chaos is a Ladder: A New Understanding of Contrastive Learning

这是一篇做理论分析的工作,证明了在Alignment之外,我们还需要引入其他的约束。和这篇比较相关的两篇工作,分别是A theoretical analysis of contrastive unsupervised representation learning和Understanding contrastive representation learning through alignment and uniformity on the hypersphere。前者是证明对比学习情况下,mean classifier的泛化误差界与Intraclass deviation有关。后者则是将损失进行分解,证明了NCE loss的由alignment和uniformity两个性质构成。
具体来说,这篇文章首先分析了alignment和uniformity是不充分的,因为如果我们学习到的表征把每个样本都分的很开,而且完全随机分布,这时候alignment和uniformity不能保证一个紧致的泛化误差上界。所以说,我们需要的是一种Expansion的性质(参考马腾宇组ICLR 2021证明Self-Training的工作),也就是通过augmentation以后,对于(A,A+)和(B,B+)两对样本,如果增广后A+和B+变成非常相似,由于我们进行alignment,这三个样本可能都会变成同一个,那就出现了类似连通图的感觉,所有的样本都能够出于同一个生成集,类似于Spanning tree。由此我们可以得到易于分类的结果。
从理论上,作者改进了Sajeev Arora的工作,给出的上界和class conditional variance息息相关。这篇文章和马腾宇组NIPS 2021的工作Provable guarantees for self-supervised deep learning with spectral contrastive loss也有比较强的联系,大家还可以延伸阅读一下。

Contrastive Label Disambiguation for Partial Label Learning

这篇论文把对比学习应用到了弱监督学习问题中,在这个PLL的问题里一个样本的标签是一个候选集合,而不是单个的Ground-truth标签。作者提出的方法同时训练了Classifier和对比学习,然后用Classifier挑选Positive Set,用对比学习的Emebeddings得到一个原型,对弱监督标签进行Disambiguation。近期有多篇对比学习和半监督学习、噪声标签学习的工作,这篇也是在一个新的问题上有很成功的应用。
这篇文章比较有意思的是把方法解释成了EM聚类的过程,推导中把对比学习的Alignment这一项解释成了Class Variance的最小化,这样一来,Alignment这一项可以看作是一个球面上进行von Mises-Fisher聚类的过程。
这里聚类的观点是比较有意思的,由于是弱监督学习的工作,所以这篇文章是从Supervised Contrastive Learning的损失出发的,可以证明此时Alignment性质优化的恰巧就是聚类or线性判别分析的目标函数。文章没有显式地在对比学习的目标里加prototype,却推到了和PCL一样的形式——尽管对比学习尝试最小化pairwise点对距离,但其实和直接优化聚类中心(或者说mean classifier)在数学上是等价的。

Contrastive Learning is Just Meta-Learning

这篇文章把对比学习解释成了meta-learning,因为每个instance可以看作不同的任务,而augmented images则是能够看作每个task关联的样本。在Meta-learning中,我们会提供每个任务的support set和query set,但是在对比学习中,我们的样本都是混合在一起的。这种情况更加接近于Prototypical Networks,这时元学习的观点依然十分接近。作者进行了多组实验,发现元学习的效果和SimCLR确实比较接近。基于此,作者提出了一个新的预测旋转损失的目标函数,引入更多的不变性(Invariance)。

MAML is a Noisy Contrastive Learner

这两篇文章实在是太有意思了,第一篇把对比学习解释成MAML,另一篇则把MAML解释成对比学习。作者推到了MAML的损失的梯度,发现展开以后可以看作某种version的对比学习损失,具体可以直接看论文。

其他论文(没细看or还没看):

  • f-Mutual Information Contrastive Learning
    • 看起来是把原始的NCE推广到了更广义的divergence
  • Self-Contrastive Learning
    • multi-exit,在网络的中间层也做对比学习
  • Incremental False Negative Detection for Contrastive Learning
  • Sharp Learning Bounds for Contrastive Unsupervised Representation Learning
  • Rethinking Temperature in Graph Contrastive Learning
  • Tackling Oversmoothing of GNNs with Contrastive Learning
  • m-mix: Generating hard negatives via multiple samples mixing for contrastive learning
  • Semantic-aware Representation Learning Via Probability Contrastive Loss
  • What Makes for Good Representations for Contrastive Learning
  • ...太多了
看了新的再更
其实很多篇文章都提到了intraclass covariance/deviation,以及mean classifier, prototypes等概念,本质上来说是殊途同归的,原因就是在于alignment这一项其实就是完成了类似线性判别分析的过程,不管有没有prototype,都会把样本往mean classifier上靠,数学上具有一定的等价性。
关于我们
机器学习算法与自然语言处理(ML-NLP) 是由国内外自然语言处理学者联合构建的民间学术社区,目前已经发展为国内外最大的自然语言处理社区之一,汇聚超过50w订阅者,旗下包括万人顶会交流群、AI臻选汇、AI英才汇以及AI学术汇等知名品牌,旨在促进自然语言处理学术界、产业界和广大爱好者之间的进步。
社区可以为相关从业者的深造、就业及研究等方面提供开放交流平台。欢迎大家关注和加入我们。

继续阅读
阅读原文