SimCLS: A Simple Framework for Contrastive Learning of Abstractive Summarization

語言: CN / TW / HK

Source: ACL 2021: SimCLS: A Simple Framework for Contrastive Learning of Abstractive Summarization

Code: yixinL7/SimCLS

TL;DR: 作者提出了一個概念簡單但足夠有效的摘要生成框架:SimCLS,在當前的SOTA摘要生成模型(BART、Pegasus)基礎上,SimCLS在生成模型之後加上了一個無參考摘要的候選摘要打分模型,該打分模型的訓練採用了對比學習的思想。SimCLS可以緩解Seq2Seq框架固有的目標函式和評價指標不一致的問題,從而可以從模型生成的候選摘要中篩選出真實的評價指標(ROUGE)打分更高的摘要。

Introduction

當前的Seq2Seq模型通常在極大似然估計(MLE)的框架下以teacher-forcing的方式得到訓練,眾所周知,Seq2Seq存在著 目標函式與評價指標不一致 的問題,因為目標函式計算的是區域性的,token級別的損失,而ROUGE這類評價指標會計算參考摘要和模型生成的摘要整體上的相似性。另外,Seq2Seq模型本身的 訓練和測試階段也是不一致的 ,在測試階段,模型需要以自迴歸的方式生成摘要,因此生成過程存在錯誤累加的問題,這個問題也被廣泛地稱為 曝光偏差(exposure bias) 問題。

前人針對Seq2Seq模型存在的這些問題提出了一些解決方法,目前主要有下面的幾種策略:

  • Reinforcement Learning: 通過基於全域性預測的獎勵(rewards)直接優化評價指標,減輕訓練和測試的不一致性。雖然強化學習可以直接優化不可導的評價指標,但這又引入了很多強化學習本身存在的問題,比如梯度估計的噪聲會導致模型對超參敏感以及訓練過程的不穩定性。
  • Minimum Risk Training: 雖然可以直接優化評估指標,但估計損失的精度依舊得不到保障。
  • Structured Prediction: 將先驗的句子級損失與MLE損失結合起來,雖然可以緩解MLE訓練的侷限性,但評價指標和目標函式之間的關係依舊是不明確,不直觀的。

在本文中,作者引入了一種基於對比學習的打分模型,該模型通過訓練無參考摘要的打分模型來近似需要參考摘要的評價指標,直接學習評價指標本身的打分模式。值得注意的是,雖然已經有一些相關工作提出了可以為MLE損失引入對比損失增強模型表現,但作者選擇將對比損失和MLE損失解耦,形成了一個兩階段結構的模型。

Contrastive Learning Framework for Abstractive Summarization

SimCLS的思路很直觀,首先,我們預訓練一個基於MLE損失的Seq2Seq摘要生成模型,然後建立一個基於對比損失的打分模型為生成的候選摘要排序,通過分開優化生成模型和評價模型,我們能夠以有監督的方式訓練這兩個模型,避免了複雜的強化學習方式。

具體來說,給定原文件 和對應的參考摘要 ,生成式摘要模型 的目標是生成候選摘要 ,使得評價指標 給出的分數 儘可能高。在這個過程中,我們將模型分解成兩部分:生成模型 和評價模型 ,前者負責生成候選摘要,後者負責打分並選擇最優候選摘要。

  • Candidate Generation: 在訓練階段,生成模型 最大化文件 對應的參考摘要 的似然度,然後通過Beam Search生成多個候選摘要
  • Reference-free Evaluation: 針對文件 ,一個更好的候選摘要 應該獲得更高的打分,我們可以建立一個評價模型 ,其目標是為 生成的候選摘要 打分: ,最後模型輸出的摘要 為獲得最高分的候選摘要:

這裡,我們將 初始化為預訓練模型RoBERTa,該模型首先分別對 編碼,然後計算各自 [CLS] 的餘弦相似度,將其作為候選摘要 的打分

打分模型 的訓練損失可以採用對比學習的思想,在前人的對比學習工作中,通常會顯式地建立正樣本和負樣本,而這裡我們可以將對比損失推廣到排序損失(ranking loss):

其中 為margin, 為超引數, 是按真實的評價指標 遞減順序排列的候選摘要,這裡的 可以是任何評價指標,這裡我們採用ROUGE。大體上說,在訓練過程中, 會學習真實評價指標的排序模式,即真實的評價指標負責提供希望模型學習的排序結果,而模型需要在沒有參考摘要的條件下依靠原文件為候選摘要排序。

Experiments

作者在CNN/DailyMail(CNNDM)和XSum資料集上進行了相關實驗,並採用ROUGE-1/2/L和最近提出的BERTScore和MoverScore作為評價指標,baseline模型直接呼叫了HFTransformes提供的基於BART的生成式摘要模型,在測試階段採用diverse beam search的取樣策略生成候選摘要。

實驗結果如下所示,其中 * 代表結果取自原文, Origin 為作者復現的基於BART的生成模型, MaxMin 是模型生成的候選摘要中的最高分摘要和最低分摘要,這表明多樣的取樣策略的確可以進一步挖掘模型的潛力, Random 是模型隨機生成摘要的平均分,這與原文結果基本一致。可以看到,SimCLS給出的摘要的得分均比隨機選擇更高,這表明打分模型確實能夠在候選摘要中選擇更符合評價指標偏好的摘要。

另外,當我們增加或減少生成的候選摘要的數量時,評價模型依舊能選擇出更好的候選摘要,這表明評價模型是足夠穩健的。

Fine-grained Analysis

為了進一步證明引入的評價模型的確帶來了有意義的改進,作者在不同語義層次上將SimCLS與baseline做了比較:

  • Entity-level: 首先抽取原文件 和參考摘要 中共有的實體,然後計算這些實體出現在候選摘要中的比例。
  • Sentence-level: 首先將參考摘要和候選摘要中的句子與原文件的句子做語義對齊,然後計算參考摘要和候選摘要對應句子的重合度。

實驗結果如下表所示,這表明SimCLS生成的摘要能夠更好地捕捉實體級的語義資訊,且在句子層面上與參考摘要的語義更相似。

下圖展示了一例摘要和原文的句子級匹配結果,可以看到SimCLS對齊的句子和參考摘要更為相近,而baseline關注了不夠相關的句子。有趣的是,這裡的參考摘要匹配到了原文的最後一句,而SimCLS很好地捕捉到了這一模式。

進一步地,作者發現生成式摘要在處理長文件(30句以上)時存在 位置偏差(position bias) ,如下圖所示,可以發現baseline會傾向於關注靠前的句子,這可能是由Seq2Seq模型自迴歸的生成方式導致的,而SimCLS能在一定程度上緩解位置偏差,這得益於diverse beam search和評價模型的引入。

Discussion

本文的出發點是希望解決訓練和測試的不一致的問題,這個問題可以分為兩個方面,一個是自迴歸式的MLE本身存在的曝光偏差問題,另一個是目標函式和評價指標的不一致問題,而本文主要致力於解決後一個問題。本文的思路並不複雜,就是利用對比學習訓練了一個能夠在沒有參考摘要的條件下打分的評價模型,該評價模型選擇出的摘要在真實的評價指標上的表現比隨機選擇更好。這一思路其實可以推廣到所有目標函式和評價指標不一致的場景下,即用可微的模型去學習不可微的評價指標,以獲取一個近似的打分函式。