Fine-tune BERT for Extractive Summarization(有代碼pytorch)

本論文是 extractive summarization

  • 摘要提取通常被定義爲一個二分類問題,二分類問題表明這個句子是否在這個摘要中。
  • 我們的提取模型是建立在這個編碼器之上,通過堆疊幾個句子間Transformer來捕獲用於提取句子的文檔級特徵。
  • 抽取結構使用encoder-decoder結構,將同一個經過預先訓練的BERT編碼器與隨機初始化的Transformer結合起來。
  • 我們設計了一個新的訓練計劃,將編碼器和解碼器的優化器分開,以適應前者是預先訓練的事實。而後者必須從零開始接受培訓
  • 將extractive summarization 和 abstractive summarization結合起來能生成更好的摘要,我們提出了一個two-stage方法。encoder被微調兩次,第一個次是匹配一個extractive objective 第二次是一個abstractive summarization。

貢獻:

- 我們強調了文檔編碼對摘要任務的重要性,最近提出的各種技術旨在通過複製機制提高總結性能,增強學習,多通道編碼器,我們沒有用這些機制就達到了很好的效果。
- 我們展示瞭如何有效地使用預先訓練的語言模型,在extractive和abstractive的環境下進行總結;

模型:Fine-tuning Bert for summarization


Summarization Encoder

在這裏插入圖片描述

  • BERT SUM通過插入多個[CLS]符號來學習句子表示,並使用間隔分割嵌入(紅色和綠色的插圖)來區分多個句子。
    在每個句子的開頭插入一個額外的【cls】(原始的bert是在每一個input example的開頭插入的)。

  • 我們還使用區間段嵌入來區分文檔中的多個句子。對於Senti,我們分配段嵌入EA或EB取決於i是奇數還是偶數。(紅色和綠色)

  • 這樣的的方法文檔表示可以hierachically學習。低層的Transformer 層表示相鄰的句子,而更高的層次,結合自我關注,代表了多句話語

  • 原始BERT模型中的位置嵌入最大長度爲512;我們克服了這一限制,增加了更多隨機初始化的位置嵌入,並與其他編碼器參數進行了微調。


3.2 extractive summarization

d表示整個文檔,則提取摘要可以定義爲爲每個senti分配一個標籤yi偶{0,1}的任務,指示是否應該將句子包含在摘要中。

  • 第i個[cls] (top layer )的向量ti是第i個句子的表示。然後,在BERT輸出的頂部疊加幾個句子間的Transformer層,以捕獲用於提取摘要的文檔級特徵:
  • 在這裏插入圖片描述
  • 輸出層是個二分類
  • L=2時有最好的新能在這裏插入圖片描述
  • 損失函數是二分類交叉熵損失函數
  • 句子間Transformer層與BERTSUM聯合微調
  • 使用adam優化器
  • 學習率使用了warmming-up的schedule
  • 在這裏插入圖片描述

3.3 abstractive summarization

我們使用一個標準的encoder-decoder框架進行abstractive summarization。

  • encoder : pretrained Bertsum
  • decoder: 隨機初始化的6layer transformer

可以想象,編碼器和解碼器之間存在不匹配,因爲前者是預先訓練的,而後者必須從零開始訓練。這樣會使得fine-tuning 不穩定。例如,當解碼器不合適時,編碼器可能會過度擬合數據,反之亦然
爲了避免這種情況,我們設計了一種新的fine-tune計劃,將編碼器和解碼器的優化器分開

  • encoder: adam optimizer β1 = 0.9,lrE = 2e-3, and warmupE = 20, 000
  • decoder: adam optimizer β2 = 0.999,lrD = 0.1, and warmupD =
    10, 000
    在這裏插入圖片描述
    即預先訓練的編碼器應該以較小的學習速率和更平滑的衰減進行微調
    當解碼器變得穩定時,(這樣編碼器就可以用更精確的梯度進行訓練)。

除此之外,引入了two-stage fine-tuning方法,我們首先在extractive summarizaiton任務上對encoder進行微調。使用extractive objective 可以促進abstracive summarization的性能。

這two-stage 在概念上是相似的,模型可以利用兩個task之間的信息。

實驗部分

extractive summarization

當預測一個新文檔的摘要時,我們首先使用該模型來獲得每個句子的分數。然後,我們根據這些句子的得分從最高到最低排列,然後選擇前三名 作爲總結。

  • 在句子選擇上使用了 trigram blocking 減少冗餘
  • 給定摘要S和候選句子c,如果c和S之間存在Trigram重疊,則跳過c。
  • 意圖與 maximal marginal relevance相似
  • 我們希望儘量減少所考慮的句子和作爲摘要一部分已經選定的句子之間的相似性。

abstractive summarization

  • 在所有的abstractive summarization中,我們在所有線性層之前應用了dropout(概率0.1);還使用了平滑因子0.1的標籤平滑(Szegedy等人,2016年)。
  • 我們的Transformer decoder 有768個隱藏單元,所有前饋層的隱藏尺寸爲2048。
  • 在解碼時我們使用beam search(size 5 )並調整α在0.6到1之間作爲長度懲罰。我們解碼,直到發出一個序列結束的標記,並且重複的語法被阻塞
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章