将SimCLR应用于NLP预训练模型,提升句子语义表征效果

©PaperWeekly 原创 · 作者|张琨

学校|中国科学技术大学博士生

研究方向|自然语言处理

论文标题:

CLEAR: Contrastive Learning for Sentence Representation

论文作者:

Zhuofeng Wu / Sinong Wang / Jiatao Gu / Madian Khabsa / Fei Sun / Hao Ma

论文链接:

https://arxiv.org/abs/2012.15466

动机

近两年,对比学习(Contrastive Learning)由于能够通过数据之间的关系,以无监督的形式充分学习数据的表征受到了大家的广泛关注,特别是 MoCo ,SimCLR 的方法的提出。而对比学习的一个关键思想就是如何构建对比的数据对,更细致的,如何构建正样本和负样本,更好的正样本和负样本能够帮助模型更好的理解数据。

因此,可以发现对比学习在 CV 领域首先有了效果,针对对比学习,图像可以通过旋转,裁剪,变换颜色等方法在不改变便签的情况下进行数据增强。但在 NLP 领域就出现困难了,文本数据如何进行增强,单纯的删除或者修改词及词序都会引起语义的变化。

因此,作者认为将对比学习引入到句子语义表征中是很有必要的,现有的预训练模型都是通过词级别的目标进行预训练的,而且单纯使用 [cls] 作为最终句子的语义表征不够充分。我们需要为本文中的对比学习设计更好的数据增强方法,用于提升句子语义的理解和表征。

方法

针对 BERT 等方法只关注于词级别的目标进行预训练,作者提出了句子级别的对比学习目标,同时为了更好的表征句子的语义,作者将对比学习引入到模型训练中,并提出了四种数据增强的方法。具体技术部分如下:

2.1 对比学习框架

首先是整个工作提出的对比学习框架图:

这个模型图和 SimCLR 非常的相似,作者也是借鉴了 SimCLR 的思路设计了这个结构,首先输入句子经过数据增强之后,分别送给一个 Transformer encoder,然后得到的输出经过一个映射函数 g 映射到同一个表示空间,最后就是一个对比学习的损失约束整个模型进行训练。具体细节可以参见 SimCLR 这篇文章。

2.2 数据增强方法

那么这篇文章的重点就在如何对输入句子进行数据增强,首先,本文使用了四种数据增强的方式,如下图:

  1. Word deletion:即随机删除句子中的某些词,并将这些词使用 [DEL] 进行替换

  2. Span deletion:从 span-level 进行选择和删除,并使用 [DEL] 进行替换,可以认为这种方法是 Word deletion 的一个特例

  3. Reordering:随机从句子中采样出几对词,然后替换他们彼此的位置(已在 BART 中证实有效)

  4. Substitution:随机从句子中选择一些词,然后将其替换为这些词的同义词(使用了一个同义词词典)

直观上理解,方法 1 和方法 2 可能会改变原有句子的意思,作者认为,随机删除一部分句子内容不会对句子的原始语义造成太大的影响。当然,在一些情况下,可能会改变句子的原始语义(例如把 not 删掉了),但这部分可以认为是适当的噪声,这有助于提升模型的鲁棒性。

具体在应用中,作者针对每个 minibatch,随机选择两种数据增强的方法。经过数据增强之后,两个来自同一个句子的增强句子就认为是正样本,其他所有来自同一个 minibatch 的增强样本就认为是这两个正样本的负样本,这样针对正样本的损失函数就可以构建为:

整个对比方法的损失函数就可以认为是所有正样本对的损失函数之和:

通过这种方法,就能够帮助模型识别相似语义的句子,与此同时,作者还保留了原来的 Mask Language Model(MLM)的损失函数,将两个损失函数结合,就得到了整个方法的损失函数。

实验

首先,作者测试了不同的数据增强方法在 GLUE 和 SentEval 上的效果,如下图:

同时作者还进行了一些消融实验进一步验证模型的效果:

总结

本文非常巧妙地将应用在 CV 上的 SimCLR 框架直接应用到了 NLP 中的预训练模型中,具体作者考虑四种不同的数据增强方法。对现阶段的 NLP 领域的对比学习是一个很不错的参考。

而且作者认为一定程度上对本文的修改不会对语义产生太大的影响,即使改变了语义,那这部分产生的噪声对模型的鲁棒性也有帮助。如果作者针对这部分进行一些实验验证或展示的话就更好了。

更多阅读

#投 稿 通 道#

 让你的论文被更多人看到 

如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢?答案就是:你不认识的人。

总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 

PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是最新论文解读,也可以是学习心得技术干货。我们的目的只有一个,让知识真正流动起来。

???? 来稿标准:

• 稿件确系个人原创作品,来稿需注明作者个人信息(姓名+学校/工作单位+学历/职位+研究方向) 

• 如果文章并非首发,请在投稿时提醒并附上所有已发布链接 

• PaperWeekly 默认每篇文章都是首发,均会添加“原创”标志

???? 投稿邮箱:

• 投稿邮箱:hr@paperweekly.site 

• 所有文章配图,请单独在附件中发送 

• 请留下即时联系方式(微信或手机),以便我们在编辑发布时和作者沟通

????

现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧

关于PaperWeekly

PaperWeekly 是一个推荐、解读、讨论、报道人工智能前沿论文成果的学术平台。如果你研究或从事 AI 领域,欢迎在公众号后台点击「交流群」,小助手将把你带入 PaperWeekly 的交流群里。

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页