基于k近邻与高斯噪声的虚拟困难样本增强方法

描述

在本文中,我们将介绍亚马逊团队在ACL2022中的一篇论文VaSCL,该论文在SimCSE的基础上,提出了一种基于k近邻与高斯噪声的虚拟困难样本增强方法。作者在无监督训练中,进行困难样本增强,从而提高了模型的性能,并且超过了SimCSE。

函数

论文标题:

Virtual Augmentation Supported Contrastive Learning of Sentence Representations

论文链接:

https://arxiv.org/abs/2110.08552

01

引言

在ACL2021中,陈丹琦团队提出了使用Dropout进行正样本增强的对比学习方法SimCSE,该方法操作简单却十分有效,在无监督对比学习中取得了非常好的效果。在有监督SimCSE中,作者对困难负样本的作用进行了探究实验,实验结果证明,引入困难负样本后,有监督SimCSE的指标从84.9提升至86.2。这说明,在对比学习中,引入困难样本是能够提升模型效果的。

然而在无监督SimCSE中,作者仅使用dropout的方式进行了正样本增强,没有额外引入困难样本,这在一定程度上限制了模型的能力。基于这个动机,亚马逊提出了一种基于k近邻与高斯噪声的虚拟困难样本增强的无监督对比学习方法VaSCL。

02

论文解读

基于Dropout的对比损失

在介绍VaSCL模型之前,我们先简单回顾一下无监督SimCSE。假设训练时的batch size为N,将一个batch的数据记作  ,将同一个样本  分别输入模型中两次,使用不同的dropout mask编码得到两个向量  和  。则在规模为N的batch中,  与  的InfoNCE损失为:

基于k近邻的虚拟增强对比损失

在无监督SimCSE的损失函数的基础上,作者还设计了一种基于k近邻的虚拟困难样本增强的损失函数。

将  通过模型编码之后得到向量序列  。

作者通过以下方式获得第i个句向量  的虚拟困难样本:

正样本增强:对  添加高斯噪声  ,得到  ,其中  就是经过高斯增强后的正样本。

获得k近邻:获得  在  中距离最近的k个负样本,在本文中我们称之为k近邻,记作  。

对于  来说,  是正样本,  是负样本集合。则对于  ,k近邻虚拟增强的对比损失如下。分子表示拉近  与  的距离,分母表示拉远  与负样本之间的距离。

在CV中,我们会为输入的图片添加高斯噪声以增加模型的泛化性。添加了高斯噪声的图片,肉眼能看出微小的区别,但不会影响整张图片的语义信息。所以为句向量添加合适的高斯噪声,理论上也不会对句向量的语义信息产生很大的改变。

在  的k近邻  中,存放的是距离  最近的k个负样本,也就是与  最相似的k个负样本。只要batch size足够大,我们可以近似认为,  就是  的困难负样本集合,同样也是  的困难负样本集合。

如何获得上述的高斯噪声  呢?最容易想到的做法便是随机生成一个高斯噪声,直接添加到句向量中。但是为了提高模型的训练难度,生成更高质量的高斯噪声,作者生成若干个候选高斯噪声,然后选出一个使得  最大化的高斯噪声。

从上述操作可以看出,对于最优的高斯噪声  ,作者希望它增强后的正样本  与  的距离尽可能远,与负样本  的距离尽可能近,作者希望这个高斯噪声能够对模型产生尽可能大的迷惑性。通过这个高斯噪声,我们就可以得到困难正样本,并且从某种意义来说,也使得  与  的距离尽可能拉近,达到了增强负样本难度的目的,做法确实挺巧妙。

VaSCL对比损失

函数

将上述两种对比损失进行组合,得到最终的VaSCL损失函数:

这个损失函数的含义如下:

对于每个句子,拉近同一个句子经过dropout之后的两个句向量之间的距离,拉远它们与其他句子的距离。

对于每个句子,拉近原句向量与高斯噪声增强之后的句向量的距离,拉远它们与k近邻负样本之间的距离。

03

实验结果

作者分别在STS任务、短文本聚类、意图识别等任务中进行了实验,实验结果如下表所示。可以看到,在三种任务中,绝大部分数据集上,VaSCL的表现都要优于SimCSE,这表明了基于k近邻与高斯噪声的困难样本增强的有效性。

函数

函数

函数

04

总结

SimCSE通过dropout mask这种简单的方法,避免了人工进行正样本增强所带来的语义改变的问题,并且在无监督训练中取得了不错的效果。而VaSCL论文延续了SimCSE这种思想,引入了高斯噪声进行正样本增强,有着异曲同工之妙。

VaSCL在SimCSE的基础上,也进行了困难样本的增强。在进行高斯噪声增强时,使得增强的样本与原始样本尽可能不相似,与负样本尽可能相似,已达到【混淆视听】的效果。通过这种方式,VaSCL在绝大多数据集上的表现,也超过了SimCSE。

审核编辑 :李倩

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分