A Simple Framework for Contrastive Learning of Abstractive Summarization

《SimCLS: A Simple Framework for Contrastive Learning of Abstractive Summarization》(SimCLS,ACL 2021)

yixinL7/SimCLS (github.com)

摘要

  • 将文本生成形式为无参考评估问题+对比学习
  • 在CNN/DailyMail数据集上,比BART提高2.51,比PEGASUS提高2.50

介绍

  • seq2seq通常在最大化似然估计(MLE)的框架下使用,trained with teacher-forcing——使得目标函数和评估方法存在gap,目标函数基于token-level的预测,评估方法会对整体的语句进行评估,并且自回归生成会带来错误积累
  • 上述的训练与测试之间的差异称为exposure bias,本文使用对比学习,实现了用相应的评估指标直接优化模型的objective,从而减小了上述的差异
  • 部分文章(Contrastive learning with adversarial perturbations for conditional text generation,2021 ICLRContrastive learning for many-to-many multilingual neural machine translation)已经尝试在条件文本生成里将对比损失引入到MLE训练,本文在框架的不同阶段引入对比损失和MLE损失来分开二者的作用
  • 本文为two-stage:
    • 首先训练一个seq2seq,生成候选摘要(由MLE损失训练)
    • 其次训练一个评估模型(通过对比学习训练),为候选摘要打分

抽象摘要的对比学习框架

  • 给定一个文本D和摘要S^,抽象摘要模型f需要生成候选摘要S=f(D),使得分数m=M(S,S^)最大

  • 本文将整个生成过程分为两个阶段,包含生成模型g和评估模型h,后者用于打分和选择最佳候选摘要

    image-20220516142116224
  • 阶段I:候选生成

    • g为一个预训练的seq2seq模型,最大化MLE
    • 由Beam Search生成候选摘要S1,,Sn
  • 阶段II:无参考评估

    • h为一个预训练模型(本文使用Roberta),用于给生成的候选打分:ri=h(Si,D),并且最终输出摘要S=argmaxSih(Si,D)
    • h分别编码SiD,第一个token(即CLS)之间的cosine similarity即为相应的相似得分ri
  • 对比学习

    • 这里的“对比性”反映在h评估的生成摘要的不同质量中

    • h引入排名损失:

      image-20220516150149690
      • 其中S~i为根据M(S~i,S^)的降序排序结果
      • 其中λij=(ji)λλ为超参数,设置为0.01
      • M为评估方法,例如ROUGE

实验

  • 使用CNN/DailyMail、XSum

  • 使用ROUGE-1/2L作为主要的评估方法

  • 生成模型和评估模型分别训练:使用BART和Pegasus作为生成模型,Roberta作为评估模型

  • 使用Transformers提供的checkpoint,并使用diverse beam search作为采样方案(16 groups)

  • 评估模型的训练中,使用adam优化器和learning rate scheduling:

    image-20220516151228636
  • batchsize 32,5 epochs

  • 结果如下

    image-20220516151013658 image-20220516151045876 image-20220516151139146