PromptBERT: Improving BERT Sentence Embeddings with Prompts

date
Dec 9, 2021
slug
promptbert
status
Published
tags
学习
论文
summary
Improving BERT Sentence Embeddings with Prompts
type
Post
however, if we treat static token embeddings as word emdedding, it still yields unsatisfactory results compared to GloVe.

相关工作

可能导致bad performance的原因:
  • anisotropy
  • ineffective BERT layers
  • static token embedding biases
 
sentence embeddings methods:
  • last layer average
  • averaging of last hidden layer tokens as sentence embeddings
  • static token embeddings
  • directly averaging of static token embeddings
 
文章认为有向性和bias无关,文章认为token embeddings is biased by token frequency, subwords in WordPiece and case sensitive.

prompt based sentence embeddings

将sentence embedding task转为mask language task,此时,sentence embedding的输出不再是由MLM classification head预测的label token,而是表示句子的向量vector
 
prompt based sentence embedding的两大问题:
  • 如何用prompt表示句子
  • 如何找到一个合适的sentence emdeddings 的prompt
 
如何用prompt表示句子
举例来说,我们有一个模板"[X] means [MASK]",在这里,[X]用来存放句子,[MASK]代表[MASK] token。对于输入的句子x_in,我们使用模板将其映射成x_prompt,然后将其输入到预训练模型来生成句子表示h
方法一:
使用[MASK] token的隐藏向量作为句子表示,h = h[MASK]
方法二:
根据h[MASK]和MLM分类器来获得top-k tokens,然后根据可能的贡献度来找到这些tokens的加权平均
notion image
notion image
第二种方法比第一种方法更加传统,但是第二种方法的缺点也十分明显:
  • 由于句子嵌入是static tokens嵌入的平均,它仍受biases的影响
  • weight averaging使BERT很难在下游任务中做fine-tune
 
如何找到合适的prompt
三种方法来得到template:
  • 手工寻找
  • 基于T5模型生成template
  • OptiPrompt
文章使用STS-B开发集中的spearman相关度作为评价不同模板的主要指标
手工寻找:手工寻找期望h[MASK]能表达整个句子。为了找到template,文章将template分成两部分,用来表示[X]和[MASK]关系的relationship token以及包含[X]的prefix token
notion image
 
T5模型根据句子和相关labels生成templates,生成的templates在GLUE benchmark上比手工找到的templates表现更好。
而基于T5模型生成templates的方法存在缺乏label tokens问题。
Tsukagoshi根据字典将definition sentence分类为其单词,成功地将句子嵌入任务转化为文本分类任务。受其启发,文章使用words和corresponding definitions来生成500个templates,然后在STS-B开发集中评估这些templates。"Also called [MASK]. [X]"获得了最好的64.75的spearman correlation.
 
OptiPrompt用连续template代替不连续template,为了优化连续template,文章使用无监督对比学习
相较于手工template,连续template将spearman correlation从73.44增加到80.90
 

© Dino 2021 - 2022