每天给你送来NLP技术干货!
来自:圆圆的算法笔记
Facebook AI团队在ICLR 2022发表了一篇文章,针对表示学习中的坍塌问题,提出了VICREG方法,通过variance、invariance、covariance三种loss的结合约束自监督学习过程,在表示学习中取得SOTA效果,且不依赖负样本构造。下面为大家详细介绍一下这篇文章,以及这个方向上的历史相关工作。
论文标题:VICREG: VARIANCE-INVARIANCE-COVARIANCE REGULARIZATION FOR SELF-SUPERVISED LEARNING
下载地址:https://arxiv.org/pdf/2105.04906.pdf
推荐阅读历史相关文章:
1
表示学习中的坍塌问题
在表示学习中,一种很常见的做法是利用孪生网络的结构,让同一个样本的不同数据增强后的表示相似。比如对于一张图像,使用翻转、裁剪等方法生成另一个增强图像,两个图像分别经过两个共享参数的编码器,得到表示,模型的优化目标是让这两个表示的距离近。
这种方法一个比较大的挑战在于,模型在训练过程中容易出现坍塌问题。模型可以把所有样本的表示都学成完全相同的常数向量(比如每个样本模型的输出都是全0向量),这样就能满足上述两个表示距离近的要求了。
2
解决坍塌问题的方法
业内有很多解决坍塌问题的方法,主要可以分为4种类型:
对比学习方法:在训练一对正样本对时,同时采样大量的负样本,让正样本之间离得近,负样本之间离得远,避免模型偷懒把所有样本的表示都学成一样的。
聚类方法:在训练过程中增加一个聚类过程,将样本分配给不同的类簇,然后在类簇级别进行对比学习。
基于蒸馏的方法:通过模型结构的角度避免坍塌问题,学习一个student network来预测teacher network的表示,teacher network是student network参数的滑动平均,teacher network不通过反向传播更新参数。
信息最大化方法:让生成的embedding中每一维的向量相互正交,使其信息量最大化,这样可以避免各个维度的值信息过于冗余,防止坍塌问题。
目前常用的负样本采样方法,一个比较大的问题是计算开销大,取得好的效果往往需要大量负样本,因此有了MoCo等对比学习框架。本文提出的方法基于信息最大化的思路,能够只使用正样本对实现表示学习的同时,防止坍现象的发生。关于对比学习的常用经典方法,可以参考这篇文章:对比学习中的4种经典训练模式。
3
信息最大化方法历史工作
基于信息最大化的方法典型的工作有两篇ICLM 2021的文章,分别是Whitening for Self-Supervised Representation Learning(ICML 2021,W-MSE)和Barlow twins: Self-supervised learning via redundancy reduction(ICML 2021)。下面介绍一下这两篇文章的整体思路,Facebook的这篇论文也是基于这个思路设计的。
W-MSE的整体网络结构如上图,模型中输入一对互为正样本的样本对(例如一个图像的不同增强形式),使用共享参数Encoder分别编码后,增加一个whitening模块,对每个batch内的所有embedding进行白化,让embedding的各个维度变量线性无关,后面再接norm处理。下图形式化表明了W-MSE的用途,通过白化+norm让样本形成一个球形分布,正样本之间距离近,每个样本需要调整自己在圆周上的位置拉进正样本之间的距离,形成最终的簇。
Barlow twins方法也是同样的思路,只是做法不同。在得到一对正样本的两个embedding后,计算两个向量各个变量之间的相关性矩阵,优化这个矩阵接近对角矩阵,以此实现embedding中各个变量之间线性无关。
4
VICREG
Facebook团队提出的VICREG是上述基于信息最大化表示学习方法的一个扩展,损失函数主要包括variance、invariance、covariance三个部分。模型的主体结构如下,仍然是一个孪生网络结构,输入一个样本的不同view互为正样本。
variance部分主要是让batch内每个样本embedding向量的每一维变量之间的方差不小于一个值,这样可以有效防止每个样本的向量都对应同一个点的情况,防止坍塌的发生。
invariance部分即让正样本对的表示embedding距离尽可能小,是正常的表示学习loss。
covariance借鉴了Barlow twins中的思路,让batch内的embedding非对角线元素尽可能为0,即让表示向量各个维度变量线性无关。
最终的表示学习loss是由上述3个loss的加和:
5
实验结果
作者进行了一些实验验证VICREG表示学习方法的效果。在ImageNet数据集上,使用不同方法预训练的表示接一个线性层进行分类,或者基于预训练的表示使用部分数据进行finetune,对比图像分类效果,实验结果如下:
作者也对比了在不同方法上是否采用variance或covariance等loss的效果变化:
6
总结
本文介绍了Facebook AI团队在2022年ICLR的一篇解决表示学习坍塌问题的工作,顺带介绍了基于信息最大化的防坍塌工作,有助于帮助我们更深层次理解表示学习的原理,以及如何解决实际应用表示学习、对比学习时遇到的坍塌问题。
📝论文解读投稿,让你的文章被更多不同背景、不同方向的人看到,不被石沉大海,或许还能增加不少引用的呦~ 投稿加下面微信备注“投稿”即可。
最近文章
EMNLP 2022 和 COLING 2022,投哪个会议比较好?
ACL'22 | 快手+中科院提出一种数据增强方法:Text Smoothing
阿里+中科院提出:将角度margin引入到对比学习目标函数中并建模句子间不同相似程度
下载一:中文版!学习TensorFlow、PyTorch、机器学习、深度学习和数据结构五件套! 后台回复【五件套】
下载二:南大模式识别PPT 后台回复【南大模式识别】
投稿或交流学习,备注:昵称-学校(公司)-方向,进入DL&NLP交流群。
方向有很多:机器学习、深度学习,python,情感分析、意见挖掘、句法分析、机器翻译、人机对话、知识图谱、语音识别等。
记得备注呦
整理不易,还望给个在看!