前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ACL 2022 | 引入角度margin构建对比学习目标,增强文本语义判别能力

ACL 2022 | 引入角度margin构建对比学习目标,增强文本语义判别能力

作者头像
NewBeeNLP
发布2022-11-11 11:05:56
5080
发布2022-11-11 11:05:56
举报
文章被收录于专栏:NewBeeNLPNewBeeNLP

©作者 | 牟宇滔 单位 | 北京邮电大学 整理 | PaperWeekly

论文标题:

A Contrastive Framework for Learning Sentence Representations from Pairwise and Triple-wise Perspective in Angular Space

文章来源:

ACL 2022

文章链接:

https://aclanthology.org/2022.acl-long.336/

Overview

聚焦的问题:近年来基于对比学习的句子表示学习研究取得了较大的进展,但是大多数方法都只关注如何挑选对比学习的正负样本对,而几乎没有人去关注对比学习目标函数本身。实际上,大家普遍使用的 NT-Xent 对比损失存在两个问题:1)判别能力不强,易受到噪声数据干扰;2)无法建模多个句子间的语义顺序。

▲ 这里展示了三个不同句子的表示可视化,不同颜色代表不同句子,每个句子经过BERT模型多次不同的dropout,因此表征具有一定的随机性(dropout可以看成一种噪声)。可以看出SimCSE得到的表征Sb和Sc不能很好地区分开。此外,我们可以看出Sa应该与Sb语义更相近,与Sc语义相对更远,这种关系没能建模。

提出的方法:本文提出一种 ArcSCE 方法,基本思想是将之前在欧氏空间中进行操作的 NT-Xent 目标函数转换到角度空间中,目的是强化成对判别性特征,并建模句子间的语义顺序关系。

Method

ArcCSE 框架分为两个部分,一是成对判别性建模;二是三元语义顺序建模。分别设计了两个对比学习损失函数进行联合优化。

▲ ArcCSE框架。对于左边的成对相似性建模,与SimCSE做法相同,都是将每句话dropout两次过编码器;对于右边的三元语义顺序建模,不做dropout操作,而是将同一句话mask两次,构造三元组。

2.1 Angular Margin based Contrastive Learning

这个模块的目的与 SimCSE 相同,都是为了让正样本拉近,负样本拉远,其中正样本是 dropout 增强的样本,负样本是 batch 内其他样本。如果像 SimCSE 一样使用如下传统的 NT-Xent 目标函数:

▲ 两个表征的相似性用余弦相似度计算

作者认为这样目标函数判别能力不够出色,并且容易受到噪声数据的影响。为了更好地理解这两个问题,我们可以做一个数学变换,将余弦相似度(欧氏空间度量指标)转换为角度(角度空间度量指标)。

▲ 将余弦相似度转换为角度,余弦相似度越大,角度越小

这样一来,我们就可以画出 NT-Xent 函数的判别边界如下:

▲ 这个图其实说明的是对于每个anchor,正样本和负样本的相似性度量之间的关系。橙色区域是优化的方向。

对于传统的 NT-Xent 目标函数,由于缺乏一个较大的决策 margin,因此决策边缘微小的扰动都可能错误决策。为了克服这个问题,作者提出了一个新的目标,即通过增加一个角度 margin 来得到更鲁棒的句子表示,新目标函数如下:

2.2 Modeling Entailment Relation of Triplet Sentences

为了让模型能够学习到多个句子间的语义相似性顺序关系,作者提出了一个新的预训练任务,建模三元句子对的蕴含关系。首先,通过对一句话按不同的 mask 比例做两次 mask,得到三元组句子对。

▲ 通过不同mask比例显示构造这三句话的语义顺序

然后用如下三元损失函数进行训练:

Experiments

3.1 主实验

本文聚焦的是句子表示学习,因此在两种句子相关的任务上进行了评估:一是 STS(文本语义相似性评估),二是 SentEval Transfer Tasks(将本文方法得到的句子表示用于各种下游任务中)。

▲ 在各种STS数据集上进行评估

▲ 将学习到的句子表示用于各种下游任务中

3.2 Alignment and Uniformity Analysis

对比学习有两个重要性质,Alignment 指的是希望相似实例能够产生尽可能相近的表征,Uniformity 指的是希望表征分布尽可能均匀,有利于保留最大的信息量。

作者在训练过程中每 10 个 epoch 计算一次两个指标,结果如下图所示。可以看出相比于 SimCSE,ArcCSE 可以得到更好的 alignment 性质,和相当的 uniformity 性质。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-08-31,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 NewBeeNLP 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Overview
  • Method
    • 2.1 Angular Margin based Contrastive Learning
      • 2.2 Modeling Entailment Relation of Triplet Sentences
      • Experiments
        • 3.1 主实验
          • 3.2 Alignment and Uniformity Analysis
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档