Raki的读paper小记:PromptBERT: Improving BERT Sentence Embeddings with Prompts

82 篇文章 10 订阅

Abstract & Introduction & Related Work

  • 研究任务
    sentence embedding
  • 已有方法和相关工作
    1. ConSERT
    2. SimCSE
  • 面临挑战
    1. 这些方法的目标是消除句子嵌入中的各向异性。然而,我们发现,各向异性并不是导致语义相似度差的主要原因。例如,在语义文本相似性任务中,对原始BERT的最后一层进行平均化甚至比对其静态标记嵌入进行平均化更差,但最后一层的句子嵌入比静态标记嵌入的各向异性要小一些
    2. 我们发现分布不仅偏重于频率,而且在WordPiece中还区分大小写和子词
  • 创新思路
    用prompt来训练
  • 实验结论
    在无监督和有监督上都达到sota(这也能算无监督吗)

Rethinking the Sentence Embeddings of Original BERT

Observation 1: Original BERT layers fail to improve the performance.

用余弦相似度来衡量各项异性,它越接近于1,句子的嵌入就越是各向异性,我们从维基百科语料库中随机抽取100,000个句子来计算各向异性
在这里插入图片描述
如表1所示,我们发现bert-base-uncased和roberta-base中的BERT层明显损害了句子嵌入性能。即使在bert-base-cased中,BERT层的增益也是微不足道的,只有0.28的改善。我们还展示了每种方法的句子水平各向异性。BERT层的性能下降似乎与句子水平各向异性无关。例如,最后一层的平均值比bert-base-uncased中的静态标记嵌入平均值更加各向同性。然而,静态token embeddings的平均数取得了更好的句子嵌入性能
在这里插入图片描述

Observation 2: Embedding biases harms the sentence embeddings performance.

我们在Bert-base-uncased、Bert-base-cased和Roberta-base的token嵌入中直观地看到了这些偏差。三种预训练模型的token嵌入受token频率、子词和大小写的影响很大。根据子词和大小写的偏差,token嵌入可以大致分为三个区域:
1)小写的词首token
2)大写的词首token
3)子词token

对于未加大小写的预训练模型bert-base-uncased,标记嵌入也可以分为两个区域:
1)词首标记
2)子词标记
在这里插入图片描述
以前的工作(Yan等人,2021;Li等人,2020)经常将 "token嵌入偏差 "的概念与token嵌入各向异性作为偏差的原因。然而,我们认为各向异性与偏见无关。偏差意味着嵌入的分布被一些不相关的信息干扰,如token频率,这可以根据PCA直接可视化。对于各向异性,它意味着整个嵌入在高维向量空间中占据了一个狭窄的锥体,它不能被直接可视化

表2显示了图1中三个预训练模型的静态标记嵌入各向异性,根据任意两个标记嵌入之间的平均余弦相似度来计算,我们发现只有Bert-base-uncased的静态标记嵌入是高度各向异性的。像roberta-base这样的静态标记嵌入是各向同性的平均余弦相似度为0.0235。对于偏差,这些模型受到了在静态token嵌入中受到影响,这与各向异性无关
在这里插入图片描述
为了证明偏见的负面影响,我们用平均的静态token嵌入作为句子嵌入(没有BERT层)来展示偏差对句子嵌入的影响。在表3中的三个预训练模型上,消除嵌入偏差的结果相当可观。仅仅去除一组标记,结果就可以分别提高9.22、7.08和11.76。roberta-base的最终结果可以超过后处理方法,如BERT-flow(Li等人,2020)和BERT-whitening(Su等人,2021),只使用静态token嵌入。手动消除嵌入偏差是提高句子嵌入性能的一个简单方法。然而,如果句子太短,这不是一个适当的解决方案,这可能会导致遗漏一些有意义的词

Prompt Based Sentence Embeddings

然而,与文本分类或问题解答任务不同,句子嵌入的输出不是MLM分类头预测的标签标记,而是表示句子的向量。我们按照这两个问题来讨论基于提示的句子嵌入的实现。1)如何用提示表示句子,以及2)如何为句子嵌入找到一个合适的提示。基于这些,我们提出了一种基于提示的对比学习方法来微调句子嵌入的BERT

Represent Sentence with the Prompt

在这里插入图片描述

Prompt Search

对于基于提示的任务,一个关键的挑战是如何找到模板。我们在本节中讨论了三种搜索模板的方法:人工搜索、基于T5的模板生成(Gao等人,2020)和OptiPrompt(Zhong等人,2021)。我们使用STS-B开发集中的spearman相关度作为主要指标来评估不同的模板

对于人工搜索,我们需要手工制作模板,鼓励将整个句子用h[MASK]表示。为了搜索模板,我们将模板分为两部分:关系代词,表示[X]之间的关系

表4中显示了一些贪心搜索的结果。当涉及到句子嵌入时,不同的模板产生的结果极为不同。与简单地连接[X]和[MASK]相比,复杂的模板,如这句话:"[X]"意味着[MASK].,可以将spearman相关度提高34.10
在这里插入图片描述
对于基于T5的模板生成,Gao等人(2020)提出了一种新颖的方法,通过使用T5根据句子和相应的标签生成模板,自动生成模板。在GLUE基准测试中,生成的模板可以超过人工搜索的模板(Wang等人,2018)。然而,实现它的主要问题是缺乏标签标记。Tsukagoshi等人(2021)通过根据字典将定义句子分类到其单词,成功地将句子嵌入任务转变为文本分类任务。受此启发,我们使用单词和相应的定义来生成500个模板(例如,橙子:一种大而圆的多汁柑橘类水果,有坚韧的鲜红黄色的外皮)。然后我们在STS-B开发集中对这些模板进行评估,与模板 "也叫[MASK]“的最佳spearman相关度为64.75。[X]”. 也许这就是句子嵌入和单词定义之间的差距。与人工搜索相比,这种方法不能产生更好的模板

OptiPrompt(Zhong等人,2021)用连续模板取代了离散模板。为了优化连续模板,我们按照(Gao et al., 2021)的设置,使用无监督的对比学习作为训练目标,冻结整个BERT参数,连续模板由手工模板的静态标记嵌入初始化。与输入的人工模板相比,连续模板可以将STS-B开发集的spearman相关度从73.44提高到80.90

Prompt Based Contrastive Learning with Template Denoising

最近,对比性学习成功地利用了句子嵌入中的BERT的力量。句子嵌入对比学习的一个挑战是如何构建合适的正例。Gao等人(2021)直接使用BERT中的dropout作为正例。Yan等人(2021)讨论了四种数据增强策略,如对抗性攻击、token shuffling、切断和输入token嵌入中的dropout来构建正例。在基于提示的句子嵌入的启发下,我们提出了一种新的方法,以合理地生成基于提示的正面实例。这个想法是使用不同的模板来表示同一句子的不同观点,这有助于模型产生更合理的正数对。为了减少模板本身对句子表示的影响,我们提出了一种新的方法来去噪模板信息。给定句子 x i x_i xi,我们首先用模板计算出相应的句子嵌入 h i h_i hi 。然后,我们通过直接给BERT输入模板和相同的模板位置id来计算模板偏差 h i h^i hi 。例如,如果 x i x_i xi 有5个token,那么[X]后面的模板标记的位置id将被加上5,以确保模板的位置id是相同的。最后,我们可以直接使用 h i − h i ^ h_i - \hat{h^i} hihi^作为去噪后的句子表示
在这里插入图片描述

Experiments

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Conclusion

在本文中,我们分析了原始BERT在句子嵌入方面的不良表现。主要原因不是各向异性,而是静态标记嵌入的偏差和原始BERT层的无效使用。基于这些发现,我们提出了一种基于提示的句子嵌入方法,以避免静态标记嵌入的偏差,并利用原始BERT层中的预训练知识。我们的方法明显改善了原始BERT的性能。我们还提出了一种新的基于提示的对比学习方法,以缩短无监督和有监督方法之间的差距。

Remark

脚踩SimCSE,我还能说什么呢?MSRA牛逼!

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值