<style> .red { color: red; } .blue{ color: blue; } .green{ color: green; } </style> # [SummaReranker: A Multi-Task Mixture-of-Experts Re-ranking Framework for Abstractive Summarization](https://arxiv.org/abs/2203.06569) :::danger **Comments:** Accepted at ACL 2022 **Github:** https://github.com/ntunlp/SummaReranker **Keywords:** Mixture-of-Experts, Decoding Strategies ::: ## 1. Introduction - In recent years, sequence-to-sequence neural models have enabled great progress in abstractive summarization. - <span class='red'>In the news domain, they have surpassed the strong LEAD-3 extractive baseline.</span> - With the rise of transfer learning since BERT, leading approaches typically fine-tune a base pre-trained model that either follows a general text generation training objective like T5, BART, ERNIE and ProphetNet, or an objective specifically tailored for summarization like in PEGASUS. :::info 自從 BERT 出現後,遷移學習的興起使得領先的方法通常採用微調(fine-tune)一個預訓練的基礎模型,這些模型可以分為兩類: 1. 遵循一般文本生成訓練目標的模型,例如: - T5 (Text-to-Text Transfer Transformer):由 Google 提出,採用encoder-decoder架構,在各種 NLP 任務上進行訓練,具有很好的遷移能力。透過添加前綴指示目標任務,只需微調即可應用於新任務。 - BART (Bidirectional and Auto-Regressive Transformers):由 Facebook 提出,是一個去噪自編碼器(denoising autoencoder),透過對輸入文本進行破壞(如刪除、置換等)再重建來學習文本表示。可用於各種文本生成任務。 - ERNIE (Enhanced Representation through kNowledge IntEgration):由百度提出,在預訓練時引入了實體遮罩和句子重排等任務,以更好地建模語義。可用於各種 NLP 任務。 - ProphetNet:由微軟提出,採用了future n-gram prediction作為預訓練目標,即預測當前token後面的n個token。預訓練和微調階段的訓練目標一致,有助於縮小兩個階段的gap。 2. 專門針對摘要任務設計訓練目標的模型,例如: - PEGASUS (Pre-training with Extracted Gap-sentences for Abstractive SUmmarization Sequence-to-sequence):由 Google提出,透過從文檔中選擇重要句子作為摘要,並將其從文檔中移除,讓模型重建這些被移除的句子,以此作為預訓練目標。這樣可讓模型更專注於生成摘要的核心句子。 總之,近年主流方法是先在大規模語料上進行預訓練,學習通用語言表示,再針對下游任務(如摘要)進行微調。預訓練的目標可以是通用的文本生成,也可專門為摘要任務設計。這樣的遷移學習策略使得在下游任務上可用較少的標註數據達到不錯的效果。 ::: :::warning Transfer learning(遷移學習)是一種機器學習的方法,其目的是將已從某一領域或任務學到的知識遷移並應用到另一相關領域或任務中,以提升模型在新任務上的學習效率和效果。這個方法的核心思想是,<span class='red'>許多機器學習問題之間存在相關性,因此可以利用已學習到的特徵表示或模型參數來加速和改善新任務的學習過程</span>。 遷移學習通常包含兩個階段: 1. 預訓練(Pre-training):在一個大規模的通用數據集上訓練一個基礎模型,學習通用的特徵表示。這個階段通常是unsupervised或self-supervised的。 2. 微調(Fine-tuning):將預訓練模型應用到目標任務上,並使用目標任務的少量標註數據對模型進行調整和優化。這個階段通常是supervised的。 遷移學習的優勢在於可以利用大規模無標註數據進行預訓練,再用少量標註數據進行微調,從而減少對目標任務標註數據的依賴,提高模型的泛化能力。 以自然語言處理領域的BERT(Bidirectional Encoder Representations from Transformers)模型為例: 1. 預訓練階段:BERT在大規模文本語料(如維基百科)上進行預訓練,訓練目標包括: - Masked Language Model(MLM):隨機遮蔽一些詞,讓模型根據上下文預測被遮蔽的詞。 - Next Sentence Prediction(NSP):給定兩個句子,讓模型預測第二個句子是否為第一個句子的後續句子。 透過這樣的預訓練,BERT可學習到語言的通用表示。 2. 微調階段:將預訓練的BERT模型應用到特定的NLP任務(如命名實體識別、情感分析等),在任務的標註數據上對BERT進行微調。通常只需要增加一個簡單的輸出層並訓練很少的epochs,即可在下游任務上取得不錯的效果。 這樣,我們就可以利用BERT學到的語言知識,快速構建一個性能優異的特定任務模型,而無需從頭開始訓練。這體現了遷移學習的強大之處。其他如計算機視覺領域的ImageNet預訓練模型也是遷移學習的經典應用。 ::: - Most of these sequence-to-sequence models are history-based, where an output sequence is represented as a sequence of decisions and the probability of the sequence is computed as a product of decision probabilities. This is also known as the **auto-regressive factorization**. :::info Sequence-to-sequence (Seq2Seq) 模型通常用於處理輸入和輸出都是序列的任務,如機器翻譯、摘要生成等。這些模型大多基於 "history-based" 的方法,也就是自回歸(auto-regressive)分解。讓我們詳細解釋一下這個概念: 在 Seq2Seq 模型中,輸出序列被表示為一系列決策的結果。以機器翻譯為例,輸出序列就是目標語言的句子,而模型的每一步決策就是生成目標句子的下一個詞。 自回歸分解指的是,輸出序列的機率可以被分解為一系列條件機率的乘積。具體來說,對於一個長度為 T 的輸出序列 y = (y_1, y_2, ..., y_T),其機率可以表示為: P(y) = P(y_1) * P(y_2|y_1) * P(y_3|y_1, y_2) * ... * P(y_T|y_1, y_2, ..., y_{T-1}) 其中,P(y_t|y_1, y_2, ..., y_{t-1}) 表示在給定前 t-1 個詞的條件下,第 t 個詞是 y_t 的機率。這個機率是模型在每一步決策時根據前面已生成的詞(即歷史訊息)來預測的。 這種自回歸分解有以下幾個特點: 1. 決策依賴於歷史:每一步的決策都依賴於之前的決策結果,即生成的詞是根據前面已生成的詞來預測的。這就是 "history-based" 的含義。 2. 機率乘積:整個序列的機率是各步決策機率的乘積。這意味著每一步的決策都會影響整個序列的機率。 3. 順序生成:詞是一個接一個地生成的,每次生成一個詞,直到生成一個特殊的結束符號(如 < EOS>)。 在訓練 Seq2Seq 模型時,我們通常使用maximum likelihood estimation(MLE),即最大化目標序列的對數likelifood機率: log P(y) = log P(y_1) + log P(y_2|y_1) + ... + log P(y_T|y_1, y_2, ..., y_{T-1}) 模型的目標是學習每一步的條件機率分佈,從而使整個序列的機率最大化。 在推理時,我們可以使用貪婪搜尋或Beam Search等方法,根據每一步的條件機率來生成詞,直到生成結束符號。 總之,自回歸分解是 Seq2Seq 模型的核心思想,它允許模型在生成序列時考慮歷史訊息,並透過最大化序列機率來學習和生成序列。這種方法在多個自然語言處理任務中都取得了很好的效果。 ::: - To transform the sequence of probabilities into summaries, beam search is commonly used. - While auto-regressive decoding with beam search is simple and has many advantages, <span class='red'>it can be difficult to encode global constraints such as grammaticality, coherence and factual consistency within this framework</span>, properties that are believed to be useful in discriminating among candidate outputs. :::info Beam search是一種常用的啟發式搜索算法,用於將序列到序列模型產生的一系列機率轉化為實際的摘要輸出。讓我們詳細解釋一下這個過程: Seq2Seq模型通常基於自回歸解碼,即根據先前生成的詞來預測下一個詞的機率。這樣,我們可以得到一系列的條件機率,表示在給定先前詞的情況下,每個可能的下一個詞的機率。 要從這些機率中生成實際的摘要,最簡單的方法是Greedy Decoding,即每次都選擇機率最高的詞。但這可能導致次優的結果,因為局部最優並不一定是全局最優。 Beam search則在每一步保留k個最優的候選序列(稱為beam),而不是只保留最優的一個。它的工作原理如下: 1. 在第一步,選擇條件機率最高的k個詞作為初始的k個候選序列。 2. 在之後的每一步,對每個候選序列,基於其已生成的詞,分別計算下一個詞的條件機率,並選擇整體條件機率最高的k個序列作為新的候選序列。 3. 重複第2步,直到所有候選序列都生成了結束符號(如< EOS>)或達到最大長度。 4. 從最終的k個候選序列中,選擇整體機率最高的序列作為最終的摘要輸出。 這樣,beam search可以在一定程度上緩解Greedy Decoding的問題,尋找更優的全局結果。 然而,儘管自回歸解碼和beam search簡單高效,但它們在encode全局約束方面存在困難,如語法正確性、連貫性和事實一致性等。這些全局特性對於區分候選摘要的品質非常重要。 具體來說,由於自回歸解碼是逐詞進行的,每一步的決策都是基於局部的歷史訊息,很難考慮整個摘要的全局特性。例如,模型可能生成語法錯誤的句子,或者前後矛盾的陳述,因為它在生成每個詞時並沒有考慮整個摘要的語法結構或意義連貫性。 此外,模型可能生成與原文不一致的內容,因為它沒有明顯地檢查生成的摘要是否與原文的事實相符。 為了解決這些問題,研究者提出了一些改進方法,如結構化輸出預測、強化學習、多樣性提升等。這些方法試圖將全局特性編碼到模型中,或者通過優化整個序列的品質來生成更連貫、更一致的摘要。 總的來說,beam search是將序列到序列模型的輸出轉化為實際摘要的常用方法,但在編碼全局約束方面存在局限性。如何在自回歸解碼的框架下考慮摘要的全局品質,是摘要生成任務的一個重要研究方向。 ::: - If the model starts decoding in a bad direction, mistakes might propagate, carry over the mistake of previous tokens to the generation of new ones, and the model has no way to know that it should adjust the decoding. - Furthermore, these models are typically trained with teacher forcing, which leads to an inherent discrepancy between training time and inference time known as the **exposure bias problem**. :::info Teacher forcing是一種常用的Seq2Seq模型訓練技術,尤其是在自回歸模型(如語言模型、摘要生成模型等)中。然而,它也導致了一個稱為"曝光偏差"(Exposure Bias)的問題,即模型在訓練和推理時的行為存在差異。讓我們詳細解釋一下這個問題: 在teacher forcing中,模型在每一步都使用真實的目標詞(ground truth)作為輸入,而不是使用自己在上一步生成的詞。具體來說,對於一個目標序列y = (y_1, y_2, ..., y_T),在訓練時,模型在時間步t的輸入是真實的詞y_{t-1},而不是模型在t-1步生成的詞y^hat_{t-1}。 這種訓練方式有以下優點: 1. 模型在每一步都能看到正確的輸入,因此可以更快地學習到正確的映射關係。 2. 避免了錯誤累積的問題,因為模型不依賴於自己可能錯誤的輸出。 然而,teacher forcing也引入了曝光偏差的問題。曝光偏差指的是:模型在訓練時和推理時看到的輸入數據的分佈不同。 具體來說: - 在訓練時,模型在每一步都看到真實的目標詞,學習的是P(y_t|x, y_1, y_2, ..., y_{t-1}),即在給定輸入x和真實的前t-1個詞的情況下,生成第t個詞的機率。 - 在推理時,模型在每一步看到的是自己生成的詞,生成的是P(y_t|x, y^hat_1, y^hat_2, ..., y^hat_{t-1}),即在給定輸入x和自己生成的前t-1個詞的情況下,生成第t個詞的機率。 這導致了模型在訓練和推理時的行為差異:模型在訓練時習慣了真實的輸入,但在推理時卻要依賴自己可能錯誤的輸出。如果模型在早期的步驟生成了錯誤的詞,這個錯誤會累積並影響之後的生成品質。 以摘要生成為例,假設模型在生成第一句時出現了語法錯誤,在訓練時,由於下一句的輸入是真實的目標句子,模型仍然有機會生成正確的後續句子。但在推理時,錯誤的第一句會影響後面句子的生成,可能導致整個摘要的品質下降。 為了緩解曝光偏差,研究者提出了一些方法,如: 1. Scheduled Sampling:在訓練時,以一定機率使用模型自己生成的詞作為下一步的輸入,逐漸增大這個機率,使模型適應自己的輸出。 2. Professor Forcing:在teacher forcing的基礎上,引入了一個判別器來區分模型生成的序列和真實的序列,鼓勵模型生成更真實的序列。 3. Reinforcement Learning:將序列生成看作一個強化學習問題,透過優化整個序列的品質(如ROUGE分數)來訓練模型,而不是每個時間步的損失。 總體來說,儘管teacher forcing是一種有效的訓練技術,但它引入了曝光偏差的問題。解決這個問題需要設計特殊的訓練策略,使模型能夠更好地適應推理時的情況,生成高品質的序列。 ::: - Decoding methods such as beam search maintain a list of top-k best candidates, and output a single best one. - In the case of beam search, candidates are sorted by decreasing log-probability, and the last (k − 1) hypotheses are discarded. However, these (k − 1) other hypotheses often contain considerably better sequences in terms of different evaluation measures. ![Screenshot 2024-05-02 at 00.00.21](https://hackmd.io/_uploads/rkg4vyxGR.png =80%x) :::info <span class='red'>Oracle scores (maximum scores over all generated candidates)</span> for four popular decoding methods and five summarization evaluation measures for a base PEGASUS model on CNN/DM. R-1/2/L denotes ROUGE- 1/2/L, BS and BaS denote BERTScore and BARTScore, respectively. ::: - Oracle gains significantly increase when mixing several generation methods together, reaching an improvement of more than 13 ROUGE-1 points (+30.5%). - Such a gap is larger than the progress made by research in the whole field of neural abstractive summarization in the last five years. :::success This suggests that current abstractive models are not exploited to their full capacity, calling for better methods to identify the best summary candidate. ::: - Given this assessment, we investigate whether it is possible to train a second-stage summarization model which learns to select the best summary among a set of candidates obtained from a base model and with a decoding process, which itself can potentially involve a set of decoding methods (e.g., beam search variants). :::info 根據前面的分析,研究者提出了一個問題:是否可以訓練一個兩階段的摘要生成模型,其中第二階段的模型學習從一組候選摘要中選擇最佳的摘要,而這些候選摘要是由第一階段的基礎模型透過解碼過程生成的,解碼過程本身可能涉及一組解碼方法(如beam search的變體)。讓我們詳細解釋一下這個想法: 傳統的摘要生成模型通常是end-to-end的,即輸入文章,直接輸出摘要。然而,如前所述,這種方式存在一些問題,如曝光偏差、缺乏全局優化等。 兩階段模型試圖透過將摘要生成分為兩個階段來解決這些問題: 1. 第一階段(基礎模型):這個階段的模型接收輸入文章,並透過解碼過程生成一組候選摘要。這個過程可能涉及多種解碼方法,如: - 標準beam search:保留每步機率最高的k個候選序列。 - Diverse beam search:鼓勵生成多樣化的候選序列,避免過於相似的序列。 - Top-k sampling:在每步隨機採樣機率最高的k個詞。 - Top-p sampling:在每步根據累積機率動態調整候選詞的數量。 這些方法可以生成一組不同的候選摘要,提供了更多的選擇空間。 2. 第二階段(重排序模型):這個階段的模型接收第一階段生成的候選摘要,並學習對它們進行評分和排序,最終選擇最佳的摘要作為輸出。這個模型可以考慮更全局的特徵,如摘要的流暢性、連貫性、與原文的相關性等,這些特徵在第一階段的逐詞生成中是難以捕捉的。 這種兩階段的方法有以下潛在的優勢: 1. Decouple了生成和選擇的過程,允許每個階段專注於不同的目標。 2. 第二階段可以考慮更全局、更高層次的特徵,有助於選擇整體品質更高的摘要。 3. 第二階段可以利用額外的資訊,如參考摘要、評分指標等,來指導選擇過程。 4. 減輕了曝光偏差的影響,因為第二階段模型總是看到完整的候選摘要,而不是逐詞生成。 當然,這種方法也有一些挑戰: 1. 計算開銷:生成和評分多個候選摘要需要更多的計算資源。 2. 訓練難度:第二階段模型的訓練需要考慮如何定義最佳摘要,如何設計損失函數等。 3. 誤差傳播:如果第一階段生成的候選摘要品質較差,可能影響第二階段的選擇。 儘管如此,兩階段摘要生成模型仍然是一個有前景的研究方向。它開啟了新的可能性,允許我們設計更複雜、更強大的摘要生成系統,生成更高品質、更符合人類偏好的摘要。 ::: - This raises the question of what makes a summary candidate the optimal one? Admittedly, summarization has been an underconstrained task and its evaluation is complex and remains an active research area. :::info 摘要生成的目標是自動產生一個簡潔、連貫、準確地捕捉原文主要訊息的文本。然而,與其他一些自然語言處理任務(如命名實體識別、詞性標註等)不同,摘要生成沒有一個明確、唯一的正確答案。 對於同一篇文章,不同的人可能會寫出不同的摘要,這取決於他們對重要性的理解、寫作風格的偏好等因素。甚至同一個人在不同時間也可能寫出不同的摘要。這使得定義什麼是"最佳"摘要變得困難。 此外,評估摘要的品質也是一個複雜的問題。一個好的摘要應該滿足多個標準,如: 1. 內容相關性:摘要應該包含原文的主要訊息,避免無關的細節。 2. 訊息完整性:摘要應該涵蓋原文的所有關鍵點,不應遺漏重要訊息。 3. 簡潔性:摘要應該簡明扼要,顯著短於原文。 4. 流暢性:摘要應該讀起來自然流暢,符合目標語言的語法和語義規則。 5. 一致性:摘要不應包含與原文矛盾或不一致的訊息。 6. 可讀性:摘要應該易於理解,適合目標讀者。 評估一個摘要在這些維度上的表現是非常主觀的,難以用一個單一的指標來衡量。傳統的評估方法,如ROUGE(Recall-Oriented Understudy for Gisting Evaluation),主要關注摘要與參考摘要之間的詞重疊,但這並不能完全反映摘要的品質。 為了更全面地評估摘要品質,研究者們提出了各種新的評估方法,如: 1. 人工評估:讓人類評判員根據不同的標準對摘要進行評分。這是最直接但也最昂貴的方法。 2. 問答型評估:根據摘要生成問題,再從原文中尋找答案,答案的正確率反映了摘要的訊息完整性。 3. 事實一致性評估:檢查摘要中的事實陳述是否與原文一致,避免錯誤或誤導性訊息。 4. 語言質量評估:使用語言模型或其他工具來評估摘要的流暢性、連貫性等語言質量。 儘管如此,摘要評估仍然是一個開放的研究問題。不同的評估方法有不同的優缺點,如何權衡它們、如何設計一個綜合的評估框架,仍然需要進一步的研究。 總體來說,找到最優的摘要候選是一個具有挑戰性的問題,因為摘要生成本身是一個欠約束的任務,缺乏明確的正確答案,而且評估摘要品質也是一個複雜的問題,涉及多個維度和主觀因素。這使得設計一個有效的摘要生成和選擇系統變得更加困難,需要考慮更多的因素和約束。然而,這也正是摘要生成研究的魅力所在,不斷探索更好的生成方法和評估方法,最終為用戶提供更高品質、更實用的自動摘要。 ::: - To design a robust re-ranker, we systematically explore the dimensions of summary re-ranking: **base model**, **decoding process**, and **evaluation measure**. - Our system, named SummaReranker, is flexible and multi-task: 1. It can be trained with any set of evaluation metrics. 2. It is considerably less computationnally expensive to train than the single-stage summarization models that it is plugged on. :::info 這裡討論的是兩階段摘要生成模型的計算效率,特別是與單階段模型相比,第二階段的重排序模型在訓練上的計算成本要低得多。讓我們詳細分析一下原因: 在單階段的end-to-end摘要生成模型中,模型需要直接學習從輸入文章到輸出摘要的複雜映射關係。這通常需要一個大型的神經網路,如Transformer或LSTM,來處理輸入序列,並逐詞生成輸出序列。訓練這樣的模型需要大量的計算資源和時間,尤其是在處理長文本時。 相比之下,兩階段模型的第二階段(重排序模型)的任務要簡單得多。它不需要生成新的文本,而只需要從一組已生成的候選摘要中選擇最佳的一個。這個過程可以看作是一個排序或分類問題,而不是一個生成問題。 具體來說,重排序模型的輸入是一組固定長度的候選摘要,而不是變長的輸入文章。這使得模型的輸入維度大大減小,從而減少了模型的參數數量和計算量。 此外,重排序模型的輸出也要簡單得多。它只需要為每個候選摘要生成一個分數或機率,表示其被選為最佳摘要的可能性。這與逐詞生成完整摘要相比,輸出空間要小得多。 這些因素綜合起來,使得重排序模型的訓練成本顯著低於end-to-end生成模型: 1. 更小的輸入維度:處理固定長度的候選摘要,而不是變長的輸入文章。 2. 更簡單的輸出空間:生成每個候選摘要的單個分數,而不是逐詞生成完整摘要。 3. 更少的參數和計算:由於輸入和輸出的簡化,模型的參數數量和計算量大大減少。 當然,這並不意味著重排序模型的訓練是trivial的。它仍然需要學習如何根據摘要的各種品質指標(如相關性、流暢性、訊息完整性等)來評估和比較不同的候選摘要。這需要精心設計的模型架構和損失函數。 但總體來說,與從頭開始生成摘要相比,從一組候選中選擇最佳摘要確實是一個計算成本更低的任務。這使得我們可以在第一階段使用更大、更強大的生成模型來產生高質量的候選摘要,然後在第二階段使用一個相對較小的重排序模型來選擇最佳的摘要,從而在保證生成品質的同時提高了計算效率。 這種計算效率上的優勢使得兩階段模型成為一個有吸引力的選擇,特別是在處理大規模數據集或實時應用時。它允許我們利用更多的計算資源來改進摘要的生成,而不會顯著增加整個系統的訓練和推理成本。 ::: - It outperforms recently proposed second-stage summarization approaches RefSum and SimCLS and sets a new state-of-the-art on CNN-DailyMail and XSum. ## 2. Related Work - Re-ranking has been adopted in several branches of NLP for long. 1. In syntactic parsing, Collins and Koo were the first to employ a re-ranker on the outputs of a base parser, followed by Charniak and Johnson (2005), who used a Maximum Entropy re-ranker. 2. Passage re-ranking is used as the first stage of question-answering systems, to retrieve relevant passages where the answer might lay. 3. Some recent question-answering models also propose to perform answer re-ranking, to refine the answer selection. - Re-ranking has also been used in neural machine translation. 1. Checkpoint reranking generates several translation candidates with multiple model checkpoints, based on the observation that the oracle across checkpoints is of higher quality than just the last checkpoint. 2. Bhattacharyya et al. (2021) use an energy-based model on top of BERT to select translation candidates with higher BLEU score. - <span class='red'>In abstractive summarization, second-stage approaches such as re-ranking remain underexplored.</span> - **RefSum** defined a second-stage summarization framework which helps address the problem of the train-test distribution mismatch in second-stage models. - In **SimCLS**, the authors train a second-stage model with contrastive learning, using a ranking loss to select the best summary candidate from a pool of 16 diverse beam search candidates. - Our approach differs from RefSum and SimCLS in terms of **model architecture** and **loss function**, as well as **summary candidate generation process**. - In contrast with RefSum, we use a single base model, but mix several decoding methods, as our goal is single-model improvement. - Unlike SimCLS, we do not use a ranking loss, but directly model the probability that a summary candidate is the best one. ## 3. Model ### 3.1 Re-ranking Framework - Specifically, given a source document *S*, a base model *B*, and a set of decoding methods *D*, we get a pool of m summary candidates *C* = {C1,...,Cm}. - Given an evaluation metric μ in a set of metrics *M*, we get associated scores for each candidates *S*μ = {μ(C1), . . . , μ(Cm)}. - <span class='red'>Our goal is to train a model f$_θ$ parameterized by θ to explicitly identify the best summary candidate C$_μ^∗$ according to the metric.</span> ![Screenshot 2024-05-15 at 16.12.58](https://hackmd.io/_uploads/Hk-o0kfmR.png =50%x) - We frame this problem as a **binary classification**. C$_μ^∗$ is the positive candidate, while other candidates are treated as negative. :::info 在這個部分,作者將摘要候選的重排序問題框架為一個二元分類問題。具體來說,對於每個評價指標μ,模型的目標是從候選摘要集合C中識別出最佳候選摘要C𝜇∗。讓我們詳細分析這個過程: 1. 對於每個評價指標μ(如ROUGE-1、ROUGE-2等),我們都有一個對應的最佳候選摘要C𝜇∗,它是根據該指標得分最高的候選摘要: C𝜇∗ = arg max(C∈C) {μ(C1), ..., μ(Cm)} 其中,C是候選摘要的集合,m是候選摘要的數量,μ(Ci)表示第i個候選摘要在指標μ上的得分。 2. 在二元分類的框架下,我們將C𝜇∗視為正樣本(positive candidate),而其他所有候選摘要都被視為負樣本(negative candidates)。 - 正樣本:C𝜇∗,即最佳候選摘要。 - 負樣本:C \ C𝜇∗,即除了最佳候選摘要以外的所有其他候選摘要。 3. 對於每個候選摘要Ci,模型的目標是預測它是正樣本(最佳候選)的機率p$^𝜇_θ$(C$_i$)。這個機率由模型的參數θ和候選摘要的表示共同決定。 4. 模型使用二元交叉熵損失函數來衡量預測機率與真實標籤之間的差距: L𝜇 = -yi log p$^𝜇_θ$(C$_i$) - (1 - y$_i$) log(1 - p$^𝜇_θ$(C$_i$)) 其中,yi是候選摘要Ci的真實標籤(如果Ci是最佳候選C𝜇∗,那麼yi=1,否則yi=0)。 5. 透過最小化這個損失函數,模型學習如何區分最佳候選摘要和其他候選摘要,並為每個候選摘要打分。 將問題框架為二元分類有幾個優點: 1. 簡化問題:相比於在所有候選摘要中選擇最佳的一個,判斷一個候選摘要是否是最佳的要更加簡單和直觀。 2. 平衡樣本:在實際應用中,最佳候選摘要通常只有一個,而其他候選摘要可能有很多。二元分類可以平衡正負樣本,避免類別不平衡問題。 3. 靈活擴展:二元分類可以很容易地擴展到多個評價指標,只需為每個指標設置一個獨立的分類任務即可。 4. 穩定訓練:相比於其他排序或選擇方法,二元分類的訓練目標更加明確和穩定,更容易收斂。 當然,二元分類並不是唯一的選擇,我們也可以考慮其他的問題框架,如多分類、排序學習等。選擇適當的問題框架取決於具體的任務特點和模型設計。但在SummaReranker中,作者選擇了二元分類,並證明了它的有效性。 透果將摘要重排序問題轉化為二元分類問題,SummaReranker可以利用分類模型的優勢,同時兼顧多個評價指標,實現對候選摘要的綜合評估和選擇。這種問題框架簡單而有效,為後續的模型設計和訓練奠定了基礎。 ::: - For a metric μ, the re-ranker f$_θ$ is trained with a binary cross-entropy loss: ![Screenshot 2024-05-15 at 16.17.17](https://hackmd.io/_uploads/HklsJgMQ0.png =65%x) , where y$_i$ =1, if C$_i$ = C$_μ^∗$, otherwise y$_i$ = 0. - Binary classification has been successfully employed for re-ranking in prior work. - While multi-way classification could be an alternative, we noticed that for each generation method, a significant fraction of candidates share the same score for one or several metrics, while it is rare that all candidates share the same score. - Thus, there is not enough signal to distinguish m candidates into m different classes, but enough for two classes. :::info "我們注意到,對於每種生成方法,有很大一部分候選摘要在一個或幾個評估指標上得到相同的分數,但所有候選摘要在所有指標上都得到相同分數的情況很少。因此,沒有足夠的信號將m個候選摘要區分為m個不同的類別,但對於兩個類別來說信號足夠。" 這段話是在解釋為什麼作者選擇將摘要重排任務建模為二元分類問題(binary classification),而不是多分類問題(multi-way classification)。 在這個任務中,我們有m個候選摘要,每個摘要都有一組對應的評估指標分數(如ROUGE)。理想情況下,如果m個摘要的分數各不相同,形成明確的排序,那麼我們可以將問題建模為m分類:將每個摘要視為一個獨立的類別。 但實際上,作者觀察到,很多候選摘要在某些指標上是並列的,得到相同的分數。舉例來說,在beam search生成的15個摘要中,可能有3個摘要的ROUGE-1得分相同。這導致我們無法對這15個摘要做出清晰的15個分類。 然而,如果我們將問題簡化為2分類:最佳摘要 vs. 其他摘要。那麼只要最佳摘要與其他摘要有足夠的分數差異,分類問題就是可解的。舉例來說,15個摘要可能無法被區分為15個類別,但一定程度上能區分出分數最高的那一個。 這就是作者選擇二元分類損失函數(binary cross entropy)的原因。這種問題構建方式在信號不夠豐富、類別難以細分的情況下更加穩健有效。 ::: - To optimize for N different metrics *M* = {μ1, . . . , μN } simultaneously, we use a separate prediction head (tower) for each and we minimize the average over metric losses defined as: ![Screenshot 2024-05-15 at 16.28.30](https://hackmd.io/_uploads/BJ1rzeGQA.png =25%x) :::info "為了同時優化N個不同的評估指標M = {μ1, . . . , μN },我們為每個指標設置一個獨立的預測頭(prediction head/tower),並最小化所有指標損失的平均值。" 這裡描述的是SummaReranker的多任務學習(multi-task learning)策略。在摘要重排任務中,我們希望選出的最佳摘要在多個評估指標(如ROUGE-1、ROUGE-2、ROUGE-L等)上都有良好的表現。因此,作者設計了一個多任務學習的目標函數,同時優化多個指標。 具體來說,模型的架構包含以下部分: 1. 共享的編碼器(encoder):通常是一個預訓練語言模型(如BERT、RoBERTa),將原文檔和候選摘要拼接後編碼,提取語義特徵。 2. N個預測頭(prediction heads/towers):每個預測頭對應一個評估指標。預測頭通常是一個多層感知器(MLP),以encoder的輸出為輸入,預測該候選摘要是否在對應指標上取得最佳分數。 3. N個二元交叉熵損失(binary cross entropy losses):每個預測頭輸出一個二元分類的損失,表示在對應指標上的錯誤率。 在訓練時,我們計算每個指標的損失,然後取平均值作為總體多任務損失。這個總損失同時考慮了所有指標,驅動模型學習到一個綜合性的重排能力。在推理時,我們計算候選摘要在所有指標上的"最優機率",取平均作為排序依據。 這種多任務學習的優點在於: 1. 不同指標蘊含的信號可以相互補充,共同指導模型學習。 2. 明顯地優化每個指標,可以更直接地控制模型的行為,得到在各指標上平衡的結果。 3. 擴展性好,可以方便地融合新的指標(如語義相似度、faithfulness等),無需修改模型結構。 ::: ### 3.2 Model Architecture - We first need to get a good representation of the summary candidate. To use contextual information, we concatenate the source with the candidate, separating the two with a special token: [CLS] Source [SEP] Candidate, and feed it to a pre-trained language model. - In all experiments, we use RoBERTa-large as encoder. - Concatenating the source with the candidate enables RoBERTa to perform **cross-attention** between the two, which finds parts of the source relevant to the summary candidate. - We take the [CLS] representation from RoBERTa’s last layer, and feed it to a multi-layer perceptron (MLP). :::info 我來詳細解釋一下"We take the [CLS] representation from RoBERTa's last layer."這句話的意思。 在SummaReranker的模型結構中,作者使用了預訓練語言模型RoBERTa作為共享的encoder,用於提取原文檔和候選摘要的語義表徵。這裡的"[CLS] representation"指的是RoBERTa模型輸出的一個特殊向量。 具體來說,RoBERTa模型的輸入形式為:[CLS] 文檔tokens [SEP] 摘要tokens [EOS] 其中,[CLS]是一個特殊的token,代表整個輸入序列的開始。在RoBERTa的預訓練任務中(如MLM,NSP等),[CLS]向量被用於進行序列層面的分類預測。因此,[CLS]向量蘊含了整個輸入序列的語義訊息。 RoBERTa模型通常有多個層(layer),每一層都會輸出一個[CLS]向量。通常,越靠後的層包含的語義訊息越豐富,對下游任務越有幫助。因此,作者選擇了RoBERTa的最後一層輸出的[CLS]向量作為整個輸入序列(文檔+摘要)的語義表徵。 接下來,這個[CLS]向量會被輸入到一個多層感知器(MLP)中,經過非線性變換和維度調整,最終輸出到各個預測頭(prediction heads)中,用於預測該摘要是否在各個指標上取得最優分數。 選擇[CLS]向量作為輸入序列的表徵有以下優點: 1. [CLS]向量提供了一個固定長度的序列表徵,適合作為分類器的輸入。 2. [CLS]向量蘊含了整個序列的語義訊息,特別是經過多層Transformer編碼後的最後一層[CLS],語義訊息最為豐富。 3. 充分利用了預訓練語言模型學習到的語義知識,有利於下游任務的fine-tuning。 4. 計算高效,無需額外的pooling操作。 總之,[CLS]向量是RoBERTa等預訓練語言模型的一個重要輸出,在SummaReranker中被用於提取原文檔與候選摘要的整體語義表徵,為後續的評分預測提供了關鍵的語義信息。 ::: - Once we have a joint representation of the source with the candidate (noted x), we perform multi-task learning in order to optimize for the desired metrics. :::info 我來詳細解釋一下"we perform multi-task learning in order to optimize for the desired metrics"這句話的意思。 這句話表達的是SummaReranker模型採用了多任務學習(multi-task learning)的策略,目的是同時優化多個期望的評估指標(desired metrics)。 在摘要重排任務中,我們希望選出的最優摘要不僅在一兩個指標上表現良好,而是在多個指標上都有優秀的表現,如ROUGE-1、ROUGE-2、ROUGE-L、BERTScore等。這些指標從不同角度評估了摘要的品質,如詞覆蓋率、語法流暢度、語義相似度等。 為了讓SummaReranker能夠綜合考慮多個指標,作者設計了一個多任務學習的框架。具體來說: 1. 對於每個指標,設置一個獨立的預測頭(prediction head),學習預測候選摘要在該指標上是否最優。 2. 所有預測頭共享同一個編碼器(如RoBERTa),編碼器負責提取輸入序列(原文檔+候選摘要)的語義表徵。 3. 每個預測頭輸出一個binary cross-entropy loss(0/1表示該摘要是否在對應指標上最優)。 4. 將所有預測頭的損失平均,得到總體多任務損失,作為模型的優化目標。 透過這種多任務學習的設置,SummaReranker在訓練中同時受到多個指標的指導與約束。不同指標蘊含的資訊可以互補,共同幫助模型學習到更加全面、平衡的重排能力。比如,ROUGE指標重視詞匹配,而BERTScore重視語義相似度,兩者結合可以選出在形式和內容上都更優質的摘要。 在推理時,SummaReranker會綜合各個指標下的"最優機率",選出在所有指標上綜合表現最佳的摘要。這種多指標綜合優化的結果,通常比單獨優化某一個指標更加穩健和可靠。 總之,多任務學習是SummaReranker的一個關鍵設計,它允許模型同時優化多個評估指標,從而學習到更加全面和平衡的摘要重排能力。這種策略充分利用了不同指標的互補信息,是SummaReranker在多個數據集上取得領先performance的重要原因。 ::: - Since metrics are different, yet may be strongly correlated (e.g., ROUGE variants), we adopt a mixture-of-experts (MoE) architecture. - In particular, we follow the sparse MoE approach, which introduces experts dropout. - To adapt it to multi-task training, we use the multi-gate approach proposed in Zhao et al. (2019b) - Given E experts E1,...,EE and N prediction towers T1,...,TN, the prediction for an input summary representation x for a metric μ indexed by k ∈ {1,...,N} is: $$f_θ^k(x)=T_k(\sum_{i=1}^E{softmax(W_kx)_iE_i(x)})$$ , where Wk is the weight matrix associated with gate k. :::info 1. "In particular, we follow the sparse MoE approach, which introduces experts dropout." 這句話說的是,SummaReranker採用了稀疏混合專家(sparse Mixture-of-Experts, sparse MoE)的方法,並引入了專家dropout(experts dropout)的技術。 混合專家(MoE)是一種將多個專家模型(expert models)組合起來的方法,每個專家模型對輸入有不同的處理方式,最終輸出通過加權平均得到。這種方法可以讓模型學習到更加多樣化的特徵模式。稀疏MoE則是在MoE的基礎上,引入了專家選擇(expert selection)的機制,即每個輸入只會激活幾個相關的專家,其他專家的輸出為0,從而使得計算更加高效。 專家dropout則是指在訓練過程中,隨機地"關閉"(置零)一部分專家的輸出,類似於標準的dropout操作。這種技術可以防止模型過度依賴某些專家,提高模型的泛化能力。 2. "To adapt it to multi-task training, we use the multi-gate approach proposed in Zhao et al. (2019b)." 這句話說的是,為了將稀疏MoE適應到多任務訓練中,作者採用了Zhao et al. (2019b)提出的多門控(multi-gate)方法。 在SummaReranker的多任務設置中,每個任務(即每個評估指標)都有一個獨立的預測頭。為了讓不同的預測頭能夠從共享的專家中選擇不同的組合,作者為每個預測頭設置了一個獨立的門控神經網路(gating network)。 具體來說,對於第k個預測頭,它的輸出可以表示為: $$f_θ^k(x)=T_k(\sum_{i=1}^E{softmax(W_kx)_iE_i(x)})$$ 其中,$E_i$表示第i個專家的輸出,$W_k$是第k個預測頭的門控網路的參數,$T_k$是第k個預測頭的輸出層。softmax操作確保了每個預測頭從所有專家中選擇的權重之和為1。 透過這種多門控的設計,不同的預測頭可以從共享的專家組中學習到不同的組合模式,更好地適應不同指標的需求。同時,通過專家共享,不同預測頭之間也可以傳遞訊息,實現更好的泛化。 總之,稀疏MoE和多門控是SummaReranker在多任務學習中引入的兩個關鍵技術,前者提高了模型的表達能力和計算效率,後者則實現了不同任務之間的適應性和訊息共享,共同助力SummaReranker在多指標優化上取得了顯著的效果。 ::: - The corresponding prediction probability is: ![Screenshot 2024-05-15 at 20.12.32](https://hackmd.io/_uploads/HkzaIXzQ0.png =35%x) :::info 這句話是在說明SummaReranker模型中,每個預測頭(prediction head)輸出的預測機率(prediction probability)的計算方式。 回顧一下,SummaReranker採用了多任務學習的框架,為每個評估指標設置了一個獨立的預測頭。每個預測頭的作用是預測候選摘要在對應指標上是否最優(是一個二元分類問題)。 具體來說,對於第k個預測頭(對應第k個指標),它的輸出是一個標量值$f_θ^k(x)$,表示候選摘要x在第k個指標上的"最優性"得分。這個得分透過將共享編碼器的輸出表徵x輸入到第k個預測頭的MLP layers中得到。 但是,這個"最優性"得分本身並不是一個機率值,取值範圍不限於[0,1]。為了將其轉化為一個合理的機率值,作者對$f_θ^k(x)$應用了sigmoid函數: $$p_θ^μ=sigmoid(f_θ^k(x))$$ 其中,$p_θ^μ$表示在第k個指標μ下,候選摘要x被預測為最優摘要的機率。sigmoid函數的作用是將實數值映射到(0,1)區間內,使其滿足機率的基本性質。 sigmoid函數的數學形式為: $$sigmoid(x)=\frac{1}{1+e^{-x}}$$ 直觀地說,當$f_θ^k(x)$取值較大(正數)時,sigmoid函數輸出接近1,表示模型認為候選摘要x很可能是最優的;當$f_θ^k(x)$取值較小(負數)時,sigmoid函數輸出接近0,表示模型認為候選摘要x不太可能是最優的。 在訓練時,這個預測機率$p_θ^μ$與真實的0/1標籤(候選摘要x是否真的最優)之間的Binary Cross-Entropy Loss被用於優化模型參數。在推理時,我們可以根據$p_θ^μ$的大小來對候選摘要進行排序,$p_θ^μ$越大,候選摘要x在指標μ上越有可能是最優的。 總之,"corresponding prediction probability"指的就是SummaReranker模型中,每個預測頭輸出的候選摘要"最優性"機率,它是透過將預測頭的輸出得分應用sigmoid函數得到的,反映了模型對候選摘要質量的評估,是訓練和推理的關鍵中間量。 ::: - Experts are shared across all tasks, and through the softmax gates the model learns how much weight to assign to each expert for each task. ![Screenshot 2024-05-15 at 20.20.23](https://hackmd.io/_uploads/SkniO7G7A.png =45%x) :::success 我用一個具體的例子來詳細解釋Figure 1中SummaReranker模型的架構和工作流程,以幫助您更好地理解: 假設我們有一篇關於自然語言處理的文章作為輸入,並且已經使用基礎模型生成了三個候選摘要。我們的目標是從這三個候選摘要中選出最佳的一個。 輸入表示: 1. 將源文章和第一個候選摘要拼接起來,中間插入[SEP]符號,形成輸入序列:[CLS] 自然語言處理(NLP)是人工智能的一個重要分支,旨在讓計算機能夠理解、生成和處理人類語言。[SEP] NLP 使計算機能夠理解和生成人類語言,是 AI 的重要分支。 2. 將輸入序列輸入到預訓練的RoBERTa-large模型中,獲得上下文化的詞嵌入表示。這一步讓模型能夠理解文章和摘要之間的關係。 3. 提取[CLS]符號對應的向量作為整個輸入序列的表示,送入後續的多層感知機(MLP)中。 多任務學習: 4. MLP將[CLS]向量轉換為一個更緊湊的表示,送入混合專家(Mixture-of-Experts, MoE)模塊。 5. MoE模塊包含多個專家網絡(Expert Networks)和任務特定的門控網絡(Task-specific Gating Networks)。 - 專家網絡負責從輸入表示中提取不同的特徵。例如,Expert 1可能關注摘要的語法正確性,Expert 2可能關注摘要的資訊覆蓋度等。 - 門控網絡為每個摘要評估任務(如ROUGE-1、ROUGE-2等)分配專家網絡的權重。例如,對於ROUGE-1任務,門控網絡可能給Expert 1分配較高的權重,因為語法正確性對於ROUGE-1分數很重要。 6. 對於每個摘要評估任務,MoE模塊輸出一個加權組合的專家表示。這個表示綜合了不同專家網絡提取的特徵,並根據任務的需求進行了調整。 7. 將每個任務的表示通過一個線性層,轉換為一個標量分數。這個分數代表當前候選摘要在該任務上的品質。例如,在ROUGE-1任務上,第一個候選摘要可能得到0.8分,表示它在詞重疊率方面表現良好。 8. 最後,將每個任務的分數通過sigmoid函數轉換為一個0到1之間的機率值。這個機率表示當前候選摘要是該任務的最佳選擇的可能性。 模型訓練: 9. 重複步驟1-8,依次處理所有候選摘要,得到它們在各個任務上的分數和機率。 10. 對於每個任務,將得分最高的候選摘要視為正例,其他候選視為負例。計算交叉熵損失,衡量模型的預測與真實標籤之間的差距。 11. 將所有任務的損失平均,得到總體損失。通過反向傳播和梯度下降,調整模型參數,最小化總體損失。 以上就是SummaReranker處理一個輸入實例的完整流程。通過這種方式,模型能夠綜合考慮多個摘要評估任務,並根據每個任務的重要性動態調整專家網絡的權重,最終選出最優的候選摘要。 在實際應用中,我們會對所有候選摘要重複這一過程,選出在各個任務上平均得分最高的摘要作為最終輸出。這樣,我們就得到了一個綜合了不同指標、不同角度的最優摘要。 希望這個例子能夠幫助您更直觀地理解SummaReranker的工作原理。如果還有任何不清楚的地方,歡迎隨時提問。 ::: - The shared bottom MLP consists in two fully-connected layers with ReLU activation. - Each expert Ei is also a two-layer MLP with ReLU, and each prediction tower Tk is a single-layer MLP. - We set the number E of experts to be equal to twice the number of tasks (N), and the experts dropout to 50%, so that the effective number of experts being used during training matches N. :::info "我們將專家的數量E設置為任務數量(N)的兩倍,並將專家dropout設置為50%,這樣在訓練過程中實際使用的專家數量就等於N。" 這句話描述了作者在設置SummaReranker模型的混合專家(Mixture-of-Experts, MoE)組件時,如何選擇專家的數量和dropout率的細節。 首先,讓我們回顧一下MoE的基本思想。在MoE中,多個專家網路(通常是MLP)並行地處理相同的輸入,然後它們的輸出被門控網路(gating network)進行加權平均,得到最終的輸出。每個專家網路可以學習不同的特徵模式,從而提高模型的表達能力。 在SummaReranker中,作者為每個評估指標設置了一個獨立的預測頭,因此模型需要完成N個任務(N是評估指標的數量)。為了使MoE結構能夠很好地適應這N個任務,作者做了以下設置: 1. 專家數量E被設置為任務數量N的兩倍,即E=2N。這樣設置的動機是,提供足夠多的專家,使得每個任務都能找到適合自己的專家組合。如果專家數量太少,可能會限制模型的表達能力;如果專家數量太多,則可能會導致計算開銷過大。 2. 專家dropout率被設置為50%。這意味著在訓練過程中,每次前向傳播時,隨機有一半的專家的輸出會被設成零。這種隨機"關閉"專家的行為有以下好處: a. 防止模型過度依賴某些專家,提高模型的泛化能力。 b. 減少了每次前向傳播的計算量,提高了訓練效率。 c. 使得每個任務實際使用的專家數量約等於總專家數量的一半,即N。這樣可以在提供足夠多專家的同時,避免計算冗餘。 舉個例子,假設SummaReranker需要優化3個指標(N=3),則作者會設置6個專家(E=2*3=6),並在訓練時隨機關閉其中50%,即每次只有3個專家在工作,剛好匹配3個任務。 總之,這種專家數量和專家dropout率的設置體現了作者在模型表達能力、計算效率、泛化能力之間進行權衡的思路。通過精心設計MoE結構的超參數,SummaReranker能夠在多任務設置下學習到更加有效的摘要重排能力。 ::: - Our model has 370.09 million trainable parameters, representing a slight 4.14% increase due to the mixture-of-experts compared to the off-the-shelf RoBERTa-large. ### 3.3 Tackling Training and Inference Gap - Second-stage learning approaches may suffer from an inherent distribution bias. - Indeed, the base model has a different output distribution on the training set than on the validation and test sets. - Thus, it is ineffective to train a second-stage model on the training set outputs of the base model. :::info 這段話揭示了階段式學習(stage-wise learning)中的一個關鍵問題:訓練-推理分佈偏移(train-inference distribution shift)。讓我們逐步拆解這個問題: 1. 在階段式學習中,我們先訓練一個基礎模型(base model),然後在此基礎上訓練第二階段模型(second-stage model)。在SummaReranker的場景中,基礎模型是一個摘要生成模型(如PEGASUS),第二階段模型是一個摘要重排模型。 2. 理想情況下,我們希望基礎模型在訓練集、驗證集、測試集上的輸出分佈是一致的。這樣,第二階段模型在訓練集上學到的重排知識就可以很好地泛化到驗證集和測試集上。 3. 但實際上,由於以下原因,基礎模型在不同數據集上的輸出分佈往往是不同的: a. 訓練集和測試集的數據分佈本身就有差異。 b. 基礎模型在訓練集上可能overfitting,學到了訓練集的特殊模式。 c. 不同數據集的難度和複雜度不同,基礎模型的泛化能力有限。 4. 這種分佈差異會導致以下問題:如果我們直接用基礎模型在訓練集上生成的摘要來訓練第二階段模型,那麼第二階段模型學到的重排知識可能過度依賴訓練集的特點,無法很好地泛化到驗證集和測試集上。 5. 舉個例子:假設基礎模型在訓練集上生成的摘要普遍比較短,但在測試集上生成的摘要普遍比較長。如果重排模型在訓練時只見過較短的摘要,它可能學到一個"偏好短摘要"的策略。但這個策略在測試集上就不再有效,因為測試集上的摘要普遍更長。 為了解決這個問題,作者採用了一種巧妙的資料增強方法:將訓練集隨機分成兩半,在每一半上訓練一個獨立的基礎模型,然後用這兩個模型交叉生成另一半數據的摘要,作為第二階段模型的訓練數據。這樣,第二階段模型在訓練時接觸到的摘要分佈,就更接近驗證集和測試集的情況,從而緩解了分佈偏移問題。 總之,這段話揭示了階段式學習中的一個關鍵挑戰,即訓練-推理分佈偏移問題。它說明了直接用基礎模型在訓練集上的輸出訓練第二階段模型是無效的,並啟發我們設計更加泛化的訓練策略來緩解這個問題。作者提出的資料增強方法就是一個很好的例子。 ::: - To resolve this distribution shift, we shuffle the training set and randomly split it into equal parts, then fine-tune a pre-trained model on each half. - Then, to build a training set for the re-ranker, we infer with each model on the half that it was not trained on. - At testing time, we face two options: 1. Base setup: - In this setup, we infer on the test set with one of the two base models trained on half the training set, then apply the re-ranker. - Since the base models are trained on less data, their performance on the test set worsens. - However, we will show that SummaReranker brings improvements which more than compensate this performance drop. 2. Transfer setup: - This setup consists in applying SummaReranker on top of a base model trained on the whole training set. - Note that SummaReranker is still trained in the same fashion as before. - There could be a distribution mismatch in this setting too, since <span class='red'>SummaReranker needs to rank summary candidates of a potentially higher quality (generated by a model trained on the full data) than the summaries that it was trained on (generated by a model trained on half the data)</span>. - Nevertheless, SummaReranker still transfers well and considerably improves the performance of the base model in this transfer setup. :::success 1. Base setup(基礎設置): a. 在訓練集的一半數據上訓練一個基礎模型(如PEGASUS)。 b. 用這個基礎模型在測試集上生成摘要。 c. 將這些生成的摘要輸入到SummaReranker中進行重排,得到最終的輸出摘要。 在這種設置下,由於基礎模型只在一半訓練數據上進行訓練,其性能可能會有所下降。但SummaReranker可以彌補這種性能損失,並進一步提高摘要質量。 2. Transfer setup(遷移設置): a. 在完整的訓練集上訓練一個基礎模型。 b. 用這個基礎模型在測試集上生成摘要。 c. 將這些生成的摘要輸入到SummaReranker中進行重排,得到最終的輸出摘要。 在這種設置下,我們使用了在完整訓練集上訓練的更強大的基礎模型。但請注意,SummaReranker仍然是在第一種設置下訓練的,也就是它的訓練數據來自兩個在半個訓練集上訓練的基礎模型。 因此,在這種情況下,SummaReranker在訓練時見到的摘要(由半個訓練集上訓練的模型生成)和測試時見到的摘要(由全訓練集上訓練的模型生成)之間可能存在一定的分佈差異。儘管如此,作者發現SummaReranker仍然能夠很好地適應這種分佈差異,並顯著提高最終摘要的質量。 選擇這兩種設置的主要目的是: 1. 全面評估SummaReranker在不同條件下的性能表現。 2. 驗證SummaReranker在訓練-推理分佈存在一定差異的情況下,是否still有效。 3. 為實際應用提供更多的選項和參考。Base setup更符合SummaReranker的訓練條件,而Transfer setup則代表了一種常見的實際使用場景。 ::: - If D is made of multiple decoding methods {δ1 , ..., δj }, each producing several candidates, the overall candidate set may be large, slowing down inference. - Thus, to explore lower-resource inference setups, we separate the sets of decoding methods D$_{train}$ and D$_{test}$ used for training and inference, respectively, and enforce that D$_{test}$ ⊂ D$_{train}$. :::info 這句話描述了作者為了研究在資源有限條件下SummaReranker的性能表現,所採取的一種實驗設置。讓我們逐步分析這個設置: 1. 在SummaReranker的訓練過程中,我們需要使用基礎模型(如PEGASUS)生成大量的候選摘要。這些候選摘要是透過應用不同的解碼方法(Decoding methods)得到的,如beam search、diverse beam search等。 2. 我們將訓練時使用的解碼方法集合表示為D$_{train}$。D$_{train}$包含了所有用於生成訓練數據的解碼方法。通常,D$_{train}$會包含盡可能多的解碼方法,以生成豐富多樣的候選摘要,幫助SummaReranker學習到泛化的重排知識。 3. 然而,在實際推理(Inference)時,使用所有的解碼方法可能會導致計算開銷過大。特別是在資源有限的場景下(如移動裝置、即時應用等),我們希望能夠使用盡可能少的解碼方法,以節省計算資源和時間。 4. 因此,作者引入了另一個解碼方法集合D$_{test}$,表示在推理時實際使用的解碼方法。D$_{test}$是D$_{train}$的一個子集,即D$_{test}$中的每個解碼方法都來自D$_{train}$,但D$_{test}$的大小通常小於D$_{train}$。 5. 透過這種設置,我們可以研究SummaReranker在訓練時見到更多解碼方法(D$_{train}$)生成的候選,但在推理時只使用更少解碼方法(D$_{test}$)的情況下,性能會如何變化。這可以幫助我們了解SummaReranker的泛化能力和資源效率。 6. 舉個例子:假設D$_{train}$包含beam search、diverse beam search、top-k sampling和top-p sampling四種解碼方法,而D$_{test}$只包含beam search和diverse beam search兩種方法。那麼在訓練時,SummaReranker會見到所有四種方法生成的候選;但在推理時,它只需對beam search和diverse beam search生成的候選進行重排。 總之,這個實驗設置的目的是探索SummaReranker在資源有限條件下的性能表現。透過區分訓練和推理時使用的解碼方法集(D$_{train}$和D$_{test}$),並強制D$_{test}$為D$_{train}$的子集,我們可以研究SummaReranker在訓練時見到更多樣本、但在推理時使用更少資源的情況下,其重排性能的變化。這種設置有助於我們了解SummaReranker的泛化能力和資源效率,為其在實際場景中的應用提供重要參考。 ::: ## 4. Experiments ### 4.1 Scope & Datasets - Throughout our experiments, we vary all the three dimensions of our re-ranking framework: the **base model** B, the **set of decoding methods** D and the set of **scoring metrics** M. - As base models, we use PEGASUS and BART, each one in their large version, as they are leading summarization models with publicly available checkpoints. - We obtain pre-trained and fine-tuned checkpoints from the HuggingFace transformers library. - For decoding methods (D), we experiment with beam search (referred to as 1), diverse beam search (2), top-k sampling (3) and top-p sampling (4). - For each decoding method, we set the number of candidates to 15. - As set of metrics, we first use ROUGE, in its commonly used three flavours of ROUGE-1, ROUGE-2 and ROUGE-L for summarization evaluation. - We also leverage recently introduced **model based** evaluation methods BERTScore and BARTScore, which both rely on contextual word embeddings from pre-trained language models. ![Screenshot 2024-05-15 at 21.38.57](https://hackmd.io/_uploads/HymZoVMQ0.png =50%x) - R-1 and R-L are strongly correlated (Pearson correlation score of 0.977). - BARTScore is the least correlated to other metrics, suggesting that it captures aspects complementary to the other four. - We train SummaReranker on the following datasets, covering multiple domains: 1. CNN-DailyMail 2. XSum: - is by design significantly more abstractive than CNN/DM and is made of single-sentence summaries. 3. Reddit TIFU: - As in other summarization works, we use the TIFU-long subset, containing 37k posts. - As there is no official split, we build a random 80:10:10 split for training:validation:test. :::info 1. Reddit是一個大型的在線論壇平台,用戶可以在各種主題的子論壇(subreddit)中發佈帖子、進行討論。 2. TIFU是Reddit上的一個流行子論壇,其名稱是"Today I Fucked Up"的縮寫。在這個子論壇中,用戶分享他們在日常生活中遇到的各種糗事、失誤或尷尬經歷。 3. 研究人員從TIFU子論壇中爬取了大量貼文,構建了一個名為Reddit TIFU的數據集。這個數據集包含了貼文的標題和正文,以及用戶自己總結的貼文內容(通常在帖子末尾以"TL;DR"開頭,即"Too Long; Don't Read"的縮寫)。 4. Reddit TIFU數據集的一個特點是,貼文的長度分佈非常不均衡。有些貼文非常短,只有幾句話;而有些貼文則非常長,可能包含幾千個單詞。 5. 為了更好地評估摘要模型在長文本上的性能,研究人員從Reddit TIFU數據集中選取了一個名為TIFU-long的子集。這個子集只包含字數較長的貼文,通常定義為字數大於100或200個單詞的帖子。 6. 在這項工作中,作者使用的TIFU-long子集包含了約37,000個帖子。這個規模足夠大,可以用於訓練和評估神經摘要模型。同時,由於TIFU-long只包含長帖子,它也更加具有挑戰性,能夠很好地測試摘要模型在長文本上的表現。 總之,這句話說明了作者在實驗中使用了Reddit TIFU數據集的一個特定子集,即TIFU-long。這個子集包含約37,000個較長的Reddit帖子,是一個常用的摘要任務基準數據集。透過在TIFU-long上評估SummaReranker,作者可以全面考察其在長文本摘要任務上的性能表現,這對於理解SummaReranker的實際應用價值非常重要。同時,使用TIFU-long這樣一個公開數據集,也有助於將這項工作與其他摘要研究進行公平比較。 ::: ### 4.2 Training & Inference Details - To help the model better discriminate between candidates, we found that sampling was useful. - Specifically, during training, we rank candidates by decreasing sum of normalized scores for the evaluation metrics and keep the top m$_{top}$ and bottom m$_{bottom}$ candidates. - Thus, training time varies in O(m$_{top}$ + m$_{bottom}$), while inference is in O(m) as we need to score each candidate. - In practice, <span class='red'>we found that taking m$_{top}$ = 1 and m$_{bottom}$ = 1 performed well</span>, on top of decreasing the training time. - This means that at training time, the model only sees two candidates per data point. :::success 1. 在SummaReranker的訓練過程中,我們首先使用基礎模型(如PEGASUS)生成大量的候選摘要。然後,我們將這些候選摘要輸入到SummaReranker中,讓它學習如何對候選摘要進行重排序,以選出最佳的摘要。 2. 理想情況下,我們希望SummaReranker能夠清晰地區分高質量和低質量的候選摘要。如果SummaReranker能夠consistently地將好的摘要排在前面,將差的摘要排在後面,那麼它就有學到有效的重排知識。 3. 然而,在實際上,區分候選摘要的質量並不總是那麼容易。有些候選摘要可能在質量上非常接近,或者在不同的評估指標(如ROUGE、BERTScore等)下有不同的表現。這使得SummaReranker難以學習到清晰的區分標準。 4. 為了緩解這個問題,作者使用了一種候選摘要採樣的技術。具體來說,在訓練時,作者首先根據候選摘要在各項指標上的得分,對它們進行排序。然後,作者從排序後的候選中採樣出得分最高的若干個(通常是1個,記為M$_{top}$)和得分最低的若干個(通常也是1個,記為M$_{bottom}$)。 5. 這種採樣策略的目的是為SummaReranker提供更加clear明確的學習訊號。透過只選擇質量最高和最低的候選,SummaReranker可以更容易地學習到它們之間的區別特徵。同時,透過忽略質量中等的候選,SummaReranker可以避免在難以區分的樣本上浪費訓練資源。 6. 採樣策略的另一個好處是,它可以大大減少訓練所需的計算資源和時間。如果不進行採樣,SummaReranker需要對每個輸入文檔的所有候選摘要進行前向計算和反向傳播,這在候選數量很大時會非常耗時。而採樣後,SummaReranker只需處理每個文檔的M$_{top}$+M$_{bottom}$個候選,計算量大大減少。 總之,這句話揭示了作者在訓練SummaReranker時使用的一個關鍵技術,即候選摘要採樣。透過從每個輸入文檔的候選摘要中選取質量最高和最低的若干個,SummaReranker可以獲得更加明確的學習訊號,更容易學習到區分摘要質量的特徵。同時,採樣也大大減少了訓練所需的計算資源和時間。這個技術的使用,展現了作者在模型效果和訓練效率之間進行權衡的思路,對於SummaReranker的成功訓練起到了關鍵作用。 ::: - We scale the pool of candidates that these two are sampled from to four decoding methods, totalling 60 summary candidates per source document. - For inference, we need to output a single candidate. <span class='red'>After getting predicted probabilities across each metric μ ∈ M, we output the candidate maximizing the sum of predicted probabilities</span>. - Note that relaxing inference to allow for a different best candidate for each metric would improve performance, but is not practical. - We perform inference with the model checkpoint maximizing the sum of the scores for the metrics on the validation set. :::info 這句話揭示了作者在設計SummaReranker的推理(inference)過程時面臨的一個權衡,即是否允許模型在不同的評估指標下選擇不同的最佳候選摘要。讓我們逐步分析這個問題: 1. 回顧一下,SummaReranker是一個多任務學習模型,它同時優化了多個評估指標(如ROUGE-1、ROUGE-2、ROUGE-L等)。在訓練時,每個指標對應一個獨立的預測頭,學習預測候選摘要在該指標下的得分。 2. 理想情況下,如果一個候選摘要在所有指標下都是最優的,那麼它就是一個全局最優解,應該被選為最終輸出。然而,實際上,不同指標對摘要質量的偏好可能並不完全一致。一個在ROUGE-1得分很高的摘要,可能在ROUGE-2或ROUGE-L上的表現並不突出。 3. 在這種情況下,一種可能的推理策略是:對於每個指標,獨立地選擇在該指標下得分最高的候選作為"最佳候選"。這樣,我們最終會得到多個"最佳候選",每個指標一個。這種策略可以最大程度地提高模型在各個指標上的性能,因為每個指標都有一個專門為它優化的輸出。 4. 然而,作者指出,這種"放寬的推理策略"在實實際上是不可行的。主要有以下原因: a. 從用戶的角度來看,對於一個輸入文檔,他們通常只需要一個最終的摘要,而不是每個指標一個。提供多個不同的"最佳摘要"會引起混淆,降低用戶體驗。 b. 從下游任務的角度來看,許多應用場景(如搜索引擎、推薦系統等)需要對每個輸入文檔產生一個統一的摘要表示。如果每個文檔有多個不同的摘要,會給下游任務的設計和實現帶來困難。 c. 從模型評估的角度來看,大多數摘要任務的基準測試都要求模型對每個輸入文檔生成一個唯一的摘要。如果允許每個指標有不同的輸出,就無法與其他模型進行公平比較。 5. 因此,作者最終採用了一種"約束的推理策略":<span class='red'>對每個候選摘要,計算它在所有指標上的得分的加權平均,然後選擇平均得分最高的候選作為最終輸出。</span>這種策略確保了每個輸入只有一個輸出摘要,同時在所有指標上取得了一個平衡的表現。 總之,這句話揭示了作者在設計SummaReranker推理策略時面臨的一個權衡:是允許每個指標有不同的最優輸出,還是約束所有指標共享一個統一的輸出。儘管前者可以最大化模型在各個指標上的性能,但考慮到實際應用中的需求和限制,作者最終選擇了後者。這體現了作者在模型性能和實用性之間進行平衡的思路,也為SummaReranker在實際任務中的應用奠定了基礎。 ::: ### 4.3 Base Setup Results *We apply SummaReranker on top of PEGASUS and BART models fine-tuned on each half.* - For each model, we decode using beam search and diverse beam search. The latter performs better for PEGASUS, while the former is better for BART. - We then apply SummaReranker optimized jointly for R-1, R-2, and R-L on top of each of the two base models, for each decoding method, and finally when using both decoding methods. :::success 1. 首先,作者有兩個基礎的摘要生成模型(base models),在本文中是PEGASUS和BART。這兩個模型都是先進的預訓練語言模型,經過在摘要數據集上的微調,可以直接用於生成摘要。 2. 對於每個基礎模型,作者使用兩種不同的解碼方法(decoding methods)來生成候選摘要:beam search和diverse beam search。Beam search是一種貪婪搜索算法,總是選擇當前最優的候選;diverse beam search則鼓勵生成更多樣化的候選。 3. 接下來,作者在每個基礎模型上應用SummaReranker。這裡的SummaReranker是一個經過聯合優化的版本,也就是在訓練時同時優化了三個ROUGE指標:ROUGE-1 (R-1)、ROUGE-2 (R-2)和ROUGE-L (R-L)。這種聯合優化可以使SummaReranker在多個指標上取得平衡的表現。 4. 具體來說,作者首先在第一個基礎模型(如PEGASUS)上應用SummaReranker,分別使用beam search和diverse beam search生成的候選。這樣,我們可以看到SummaReranker在不同解碼方法下的表現。 5. 然後,作者對第二個基礎模型(如BART)重複同樣的過程。這樣,我們可以看到SummaReranker在不同基礎模型上的表現。 6. 最後,作者將兩種解碼方法生成的候選摘要合併在一起,再次應用SummaReranker。這相當於給了SummaReranker更多的候選摘要進行重排,可以測試它在更大搜索空間上的性能。 7. 透過這一系列實驗,作者全面評估了SummaReranker在不同設置下的性能,包括: a. 不同的基礎模型(PEGASUS vs. BART) b. 不同的解碼方法(beam search vs. diverse beam search) c. 單一解碼方法vs.混合解碼方法 這些結果可以幫助我們深入理解SummaReranker的性能特點和適用條件。 總之,這邊詳細描述了作者評估SummaReranker性能的實驗設置。透過在不同的基礎模型和解碼方法上逐步應用SummaReranker,並評估其在聯合優化多個ROUGE指標下的表現,作者全面展示了SummaReranker的有效性和泛化能力。這個嚴謹而全面的評估過程,為SummaReranker的實際應用提供了重要的參考,也為後續的研究奠定了基礎。 ::: ![螢幕擷取畫面 2024-05-20 013021](https://hackmd.io/_uploads/SypRcnD7C.png =60%x) :::success 1. SummaReranker improves a base PEGASUS by 4.57% to 7.21% with 15 candidates, and 8.70% to 9.36% with 30 candidates. 2. With BART, SummaReranker improves by 3.94% to 11.65% with 15 candidates, and 7.98% with 30 candidates. 3. With SummaReranker, PEGASUS and BART models trained on 50% of the training set now surpass their counterparts trained on the whole training set. ::: ### 4.4 Transfer Setup Results *We apply it on top of PEGASUS and BART models fine-tuned on the entire dataset, using public checkpoints.* - We also include R3F and GSum in our single-stage model comparison. - In terms of second-stage approaches, we compare SummaReranker with RefSum and SimCLS. - Note that SummaReranker is trained as usual, on the outputs of two base models each trained on 50%. ![Screenshot 2024-05-15 at 22.43.57](https://hackmd.io/_uploads/B1R4qSfQR.png) :::success 1. We first optimize for ROUGE metric {R-1, R-2, R-L} with multi-task training on CNN/DM. - With two decoding methods, PEGASUS + SummaReranker sets a new state of the art on CNN/DM with 47.16 R-1, 22.55 R-2 and 43.87 R-L, corresponding to gains of 2.60/1.65/2.29 R-1/2/L or +5.44% from our diverse beam search baseline. - As expected, the relative gains in transfer setup are lower than in base setup. ::: :::info 1. 基礎設置: a. 將訓練集平均分成兩部分,每部分用於訓練一個獨立的基礎摘要生成模型。 b. 使用這兩個模型分別在另一半數據上生成候選摘要,作為SummaReranker的訓練數據。 c. 在測試時,使用其中一個基礎模型生成候選摘要,然後用SummaReranker進行重排。 2. 遷移設置: a. 在完整的訓練集上訓練一個基礎摘要生成模型。 b. 使用這個模型在測試集上生成候選摘要。 c. 將這些候選摘要輸入到在基礎設置下訓練的SummaReranker中進行重排。 關鍵的區別在於,在基礎設置中,SummaReranker在訓練和測試時看到的候選摘要,都來自同樣的數據分佈(即由僅在半個訓練集上訓練的基礎模型生成)。而在遷移設置中,SummaReranker在測試時看到的候選摘要,來自一個在完整訓練集上訓練的更強大的基礎模型,這與它在訓練時看到的候選摘要的分佈可能有所不同。 現在,讓我們分析為什麼遷移設置下的性能增益會低於基礎設置: 1. 在基礎設置中,由於訓練和測試數據的分佈相匹配,SummaReranker可以更好地發揮其重排能力。它所學習到的區分高質量和低質量摘要的知識,可以直接應用於測試數據。 2. 但在遷移設置中,測試數據(即由完整訓練的基礎模型生成的候選摘要)的質量可能普遍高於訓練數據(即由半數據訓練的基礎模型生成的候選摘要)。這意味著SummaReranker在測試時面臨的重排任務可能更具挑戰性,因為候選摘要之間的質量差異可能更小,更難區分。 3. 此外,由於測試數據的分佈與訓練數據略有不同,SummaReranker學習到的一些重排知識可能無法完全適用於測試數據。這可能導致其重排性能的下降。 4. 綜合以上因素,遷移設置下SummaReranker的性能增益相對於基礎模型的增益,通常會低於基礎設置下的增益。這是由測試數據分佈變化和重排任務難度增加共同導致的。 需要強調的是,儘管遷移設置下的增益相對較小,但SummaReranker仍然能夠帶來顯著的性能提升。這表明SummaReranker具有一定的泛化能力,能夠在不同的數據分佈和基礎模型上發揮作用。 總之,這句話揭示了SummaReranker在不同實驗設置下性能表現的差異,以及產生這種差異的潛在原因。它強調了數據分佈匹配和任務難度對重排模型性能的影響,為我們理解和應用SummaReranker提供了重要啟示。同時,SummaReranker在遷移設置下仍然取得了顯著的性能增益,證明了其作為一種通用的摘要優化方法的有效性和價值。 ::: :::success 2. Next, we optimize model-based metrics, and note the difficulty in improving BERTScore, compared to BARTScore. - Optimizing jointly ROUGE and model-based metrics improves all metrics, but does not match the results when training only ROUGE. - Interestingly, performance gains saturate when adding two extra decoding methods (top-k and top-p sampling), despite gains in the oracle scores observed in Table 1. ::: :::info "我們優化了基於模型的指標,並注意到相比於BARTScore,改進BERTScore的難度更大。" 這句話主要涉及兩個基於預訓練語言模型的自動評估指標:BERTScore和BARTScore。讓我們首先簡單回顧一下這兩個指標的定義: 1. BERTScore: a. 使用預訓練的BERT模型提取候選摘要和參考摘要中每個token的word embedding。 b. 計算候選摘要中每個token與參考摘要中最相似token的cosine similarity,作為該token的分數。 c. 對所有token的分數取平均,得到最終的BERTScore。 2. BARTScore: a. 使用預訓練的BART模型對候選摘要和參考摘要分別進行編碼。 b. 計算候選摘要的編碼向量與參考摘要編碼向量之間的餘弦相似度,作為BARTScore。 現在,讓我們分析為什麼作者發現優化BERTScore比優化BARTScore更具挑戰性: 1. 粒度不同:BERTScore是在token級別上計算相似度,而BARTScore是在整個摘要的編碼向量級別上計算相似度。這意味著BERTScore對局部的詞匹配更敏感,而BARTScore更關注全局的語義相似性。 2. 對應關係:在計算BERTScore時,每個候選token都需要在參考摘要中找到一個最相似的token進行匹配。這種硬性的對應關係可能過於嚴格,尤其是當候選摘要和參考摘要在用詞上有較大差異時。相比之下,BARTScore沒有顯式地建立token級別的對應,而是直接比較兩個摘要的整體語義表示。 3. 語言模型的差異:BERTScore使用的是BERT模型,它主要通過Masked Language Modeling(MLM)任務進行預訓練,擅長捕捉局部的語境信息。而BARTScore使用的是BART模型,它通過Denoising Autoencoder任務進行預訓練,更擅長捕捉全局的語義信息。這種預訓練任務的差異也可能導致兩個指標對摘要質量的判斷有所不同。 4. 優化難度:由於BERTScore需要在token級別上進行優化,它對摘要生成過程中的每一步決策都很敏感。任何一個局部的改變都可能顯著影響BERTScore。相比之下,BARTScore對局部的改變更加robustness,因為它評估的是整體的語義相似性。這可能使得優化BERTScore變得更加困難,因為模型需要在更細粒度的層面上進行調整。 需要強調的是,儘管優化BERTScore相對更具挑戰性,但這並不意味著BERTScore是一個較差的指標。實際上,BERTScore和BARTScore在捕捉不同層面的摘要質量方面各有所長。將它們結合使用,可以得到更全面和平衡的評估結果。 總之,這句話揭示了不同類型的基於模型的自動評估指標在優化難度上的差異,以及這種差異背後的潛在原因。它提醒我們在選擇和優化評估指標時,需要考慮指標的特點、粒度和對應方式,以及底層語言模型的性質。同時,它也啟發我們在評估摘要質量時,應該綜合使用多個互補的指標,以獲得更可靠和全面的結果。 ::: :::info 這段話主要討論了兩個發現:聯合優化多個指標的效果,以及增加解碼方法對性能提升的影響。讓我們逐一分析: 1. 聯合優化多個指標: a. 作者嘗試同時優化ROUGE指標(如ROUGE-1、ROUGE-2、ROUGE-L)和基於模型的指標(如BERTScore、BARTScore)。 b. 結果表明,這種聯合優化策略可以改進所有指標的表現,即在ROUGE和基於模型的指標上都取得了提升。 c. 然而,聯合優化的結果仍然無法匹配只優化ROUGE指標時的結果。這表明,專門針對ROUGE指標進行優化可以獲得最大的ROUGE分數提升。 d. 這一發現告訴我們,雖然聯合優化多個指標可以帶來全面的性能提升,但如果我們的主要目標是在特定指標(如ROUGE)上取得最佳表現,專門針對該指標進行優化可能更有效。 2. 增加解碼方法的影響: a. 作者還研究了增加解碼方法對性能提升的影響。除了beam search和diverse beam search,他們還嘗試了top-k採樣和top-p採樣兩種解碼方法。 b. 在表1中,作者觀察到,當使用更多解碼方法生成候選摘要時,oracle分數(即所有候選摘要中的最高分數)會提高。這表明,增加解碼方法的多樣性可以擴大搜索空間,提高潛在的最優摘要質量。 c. 然而,有趣的是,當將top-k採樣和top-p採樣加入到SummaReranker的訓練和推理過程中時,性能提升出現了飽和。儘管oracle分數有所提高,但SummaReranker並沒有將這種潛在的提升轉化為實際的性能提升。 d. 這一發現表明,儘管增加解碼方法的多樣性理論上可以提高的最優摘要質量,但重排模型(如SummaReranker)可能難以充分利用這種增加的多樣性。這可能是因為更多的解碼方法也引入了更多的噪聲和低質量摘要,給重排任務帶來了額外的挑戰。 總體來說,這段話揭示了兩個重要的發現:第一,聯合優化多個指標可以帶來全面的性能提升,但專門針對特定指標進行優化可能更有效;第二,增加解碼方法的多樣性雖然可以提高潛在的最優摘要質量,但重排模型可能難以將這種潛在的提升轉化為實際的性能提升。這些發現為我們設計和優化摘要系統提供了重要的啟示,同時也揭示了摘要評估和優化任務的複雜性和挑戰性。 ::: - To assert statistical significance of performance gains, we perform a t-test between SummaReranker scores and scores from the base model with each of the decoding methods being used, and mark with † results where the p-value is smaller than 0.05 for all these decoding methods. :::info "為了確定性能提升的統計顯著性,我們對SummaReranker的分數和使用每種解碼方法的基礎模型的分數進行t檢驗,並用†標記p值小於0.05的所有解碼方法的結果。" 這段話描述了作者如何驗證SummaReranker相對於基礎模型的性能提升是否具有統計學意義。讓我們分步驟解釋: 1. 性能提升的統計顯著性: a. 在實驗中,作者觀察到SummaReranker在各種評估指標上都取得了更高的分數,相比於基礎的摘要生成模型(如PEGASUS、BART)。 b. 然而,僅僅觀察到分數的提高並不足以斷定這種提升是真實可靠的。有可能觀察到的提升只是偶然因素導致的,而不是SummaReranker本身的優越性。 c. 為了排除偶然因素,作者需要進行統計顯著性檢驗。透過統計檢驗,我們可以量化觀察到的提升是由偶然因素引起的機率有多大。如果這個機率很小(通常設定為小於5%,即p值<0.05),我們就可以比較有信心地認為,觀察到的提升是真實可靠的,反映了SummaReranker的實際優勢。 2. t檢驗的使用: a. 作者選擇了t檢驗作為統計顯著性檢驗的方法。t檢驗是一種常用的統計學工具,用於比較兩組數據的均值是否有顯著差異。 b. 在這裡,作者將SummaReranker生成的摘要的分數作為一組數據,將基礎模型生成的摘要的分數作為另一組數據,然後使用t檢驗來比較這兩組數據的均值是否有顯著差異。 c. 如果t檢驗的結果表明,兩組數據的均值差異不太可能是偶然因素導致的(即p值<0.05),那麼我們就可以推斷,SummaReranker相對於基礎模型的性能提升是真實可靠的,具有統計學意義。 3. 對每種解碼方法進行t檢驗: a. 作者不僅對單一的解碼方法進行了t檢驗,而是對每一種使用的解碼方法都進行了t檢驗。 b. 這樣做的目的是全面評估SummaReranker在不同解碼方法下的性能提升是否都具有統計顯著性。因為不同的解碼方法可能會生成質量不同的候選摘要,從而影響SummaReranker的性能表現。 c. 只有當對每一種解碼方法,SummaReranker相對於基礎模型的性能提升都通過了t檢驗(即p值都<0.05),我們才能更有信心地認為,SummaReranker的優越性是穩定的,不依賴於特定的解碼方法。 d. 在結果報告中,作者用†符號標記了那些在所有解碼方法上都通過t檢驗的性能提升,以示強調。 總的來說,這段話反映了作者嚴謹的實驗方法和統計分析。通過對每種解碼方法都進行t檢驗,並設定嚴格的顯著性閾值(p<0.05),作者力求全面而嚴格地評估SummaReranker的性能提升,排除偶然因素的干擾,提供可靠的實驗結論。這種嚴謹的態度對於保證研究結果的可信度和可重複性至關重要。 ::: - We also show experts utilization (obtained with softmax weights from the gates) for the model optimized on all five metrics in Fig. 2. Notably, some experts specialize in certain metrics (for instance, expert 0 on R-2 and expert 4 on R-L). ![Screenshot 2024-05-16 at 02.00.57](https://hackmd.io/_uploads/SyWO__G7A.png) - We train SummaReranker using the three ROUGE metrics {R-1, R-2, R-L} as objective, and decoding methods {beam search, diverse beam search} to generate the candidates. :::success 1. On XSum, SummaReranker improves a base PEGASUS with beam search candidates by 1.31%, setting a new state-of- the-art of 48.12/24.95/40.00 R-1/2/L. 2. On Reddit TIFU, we improve a base PEGASUS with beam search and diverse beam search (30 candidates) by 9.34%, reaching 29.83/9.50/23.47 R-1/2/L, and a base BART with beam search by 4.22%, reaching 28.99/9.82/22.96 R-1/2/L. 3. Across datasets, training on a combination of beam search and diverse beam search candidates is consistently effective. ::: ### 4.5 Ranking Evaluation - Beyond summary properties, we investigate the performance of re-ranking itself with rank-based evaluation measures. - <span class='red'>A perfect re-ranker should always single out the best summary from the rest, yielding oracle results.</span> - To evaluate how SummaReranker ranks the best summary, we compute the best summary candidate recall at different thresholds. :::info 1. 最佳摘要候選回召率: a. 回召率(Recall)是一個常用的訊息檢索和排序系統評估指標。在這裡,它指的是SummaReranker能夠在候選摘要列表的前K個位置中,成功識別出最佳摘要的比例。 b. 具體來說,對於每個測試集中的文檔,都有一個人工標註的最佳參考摘要。SummaReranker的任務就是從所有候選摘要中,識別出這個最佳摘要,並將其排在前面。 c. 如果SummaReranker能夠經常地將最佳摘要排在候選列表的前K個位置(K是一個預設的閾值),那麼它的最佳摘要候選回召率就高,反之則低。 2. 不同閾值下的回召率: a. 作者計算了不同閾值K下的最佳摘要候選回召率。閾值K決定了我們在候選摘要列表的前多少個位置中尋找最佳摘要。 b. 例如,當K=1時,我們只檢查候選列表的第一個位置;當K=3時,我們檢查候選列表的前三個位置;當K=5時,我們檢查候選列表的前五個位置,以此類推。 c. 對於每個閾值K,我們計算在所有測試集文檔中,有多大比例的文檔,其最佳摘要被SummaReranker成功地識別並排在了前K個位置。這個比例就是閾值K下的最佳摘要候選回召率。 d. 透過計算不同閾值下的回召率,我們可以全面評估SummaReranker在不同嚴格程度下的性能表現。閾值越小,要求越嚴格,回召率通常也越低;閾值越大,要求越寬鬆,回召率通常也越高。 3. 回召率曲線的意義: a. 作者通常會繪製一個回召率曲線,橫軸為不同的閾值K,縱軸為相應的最佳摘要候選回召率。 b. 一個理想的SummaReranker應該能夠在很小的閾值下(如K=1,2,3)就達到很高的回召率,這意味著它非常擅長將最佳摘要排在候選列表的最前面。 c. 如果SummaReranker的回召率曲線在各個閾值下都顯著高於基礎模型,那麼我們可以認為SummaReranker在識別和排序最佳摘要方面,具有明顯的優勢。 d. 回召率曲線提供了一個直觀而全面的方式,來評估和比較不同摘要系統在排序質量上的性能差異。 總的來說,這句話反映了作者系統而量化的評估方法。透過計算不同閾值下的最佳摘要候選回召率,並繪製回召率曲線,作者可以全面評估SummaReranker在識別和排序最佳摘要方面的性能,並與其他基礎系統進行直觀的比較。這種評估方法有助於揭示SummaReranker在排序質量上的優勢和特點,為系統的改進和應用提供重要參考。 ::: - Since several candidates might get the same metric scores (Appendix C), the best candidate re-call at threshold k for the random uniform ranking baseline is not the standard R@k = m / k anymore but becomes instead: $$R@k = \frac{\binom{m}{m_{best}} - \binom{m-k}{m_{best}}}{\binom{m}{m_{best}}}$$ , where m$_{best}$ is the number of best candidates. :::info $$R@k = \frac{\binom{m}{m_{best}} - \binom{m-k}{m_{best}}}{\binom{m}{m_{best}}}$$ 這個公式表示的是隨機排序下的最佳摘要候選回召率(Random Best Candidate Recall)。讓我們逐步分析這個公式的各個組成部分: 1. $m$: a. $m$表示候選摘要的總數。在SummaReranker的設置中,每個輸入文檔都有$m$個由基礎模型生成的候選摘要。 b. 例如,如果使用beam search解碼,beam size設置為5,那麼每個文檔就有$m=5$個候選摘要。 2. $m_{best}$: a. $m_{best}$表示在$m$個候選摘要中,與參考摘要完全匹配的摘要的數量,即最佳摘要的數量。 b. 在理想情況下,$m_{best}=1$,即$m$個候選摘要中只有一個是最佳摘要。但在實際上,有可能多個候選摘要與參考摘要同樣匹配,導致$m_{best}>1$。 3. $\binom{m}{m_{best}}$: a. 這是一個組合數,表示從$m$個候選摘要中選擇$m_{best}$個最佳摘要的方式數。 b. 在隨機排序的情況下,每一種選擇最佳摘要的方式都是等可能的。因此,$\binom{m}{m_{best}}$表示了隨機排序下,最佳摘要出現的所有可能情況數。 4. $\binom{m-k}{m_{best}}$: a. 這也是一個組合數,表示從$m$個候選摘要中選擇$m_{best}$個最佳摘要,且這些最佳摘要都不在前$k$個位置的方式數。 b. 在隨機排序下,這種情況對應於最佳摘要全部出現在候選列表的後$m-k$個位置的情況。 5. $\frac{\binom{m}{m_{best}} - \binom{m-k}{m_{best}}}{\binom{m}{m_{best}}}$: a. 這一項表示的是,在所有可能的最佳摘要出現情況中,有多大比例的情況,最佳摘要至少有一個出現在了候選列表的前$k$個位置。 b. 分子$\binom{m}{m_{best}} - \binom{m-k}{m_{best}}$表示,在所有$\binom{m}{m_{best}}$種情況中,扣除了最佳摘要全部出現在後$m-k$個位置的$\binom{m-k}{m_{best}}$種情況,剩下的就是最佳摘要至少有一個出現在前$k$個位置的情況數。 c. 分母$\binom{m}{m_{best}}$則表示所有可能的情況總數。因此,這一項的值就是我們所需的機率,即隨機排序下,最佳摘要至少有一個出現在前$k$個位置的機率,也就是隨機排序下的最佳摘要候選回召率。 總的來說,公式(6)給出了一個隨機排序下最佳摘要候選回召率的理論計算方法。這個隨機回召率提供了一個基準,用於評估實際排序系統(如SummaReranker)的性能。如果實際系統的回召率顯著高於隨機回召率,那麼我們可以認為該系統在識別和排序最佳摘要方面,具有顯著優於隨機的智能。公式(6)的意義在於,它量化了這種"顯著優於隨機"的標準,為系統性能評估提供了理論基礎。 ::: ![Screenshot 2024-05-16 at 10.40.20](https://hackmd.io/_uploads/BkbEflmQC.png =65%x) :::success 1. A PEGASUS with diverse beam search ranking of summary candidates (dashed lines) is not significantly better than the corresponding random baseline from eq. (6) (dotted lines) on CNN/DM and Reddit TIFU. 2. However, it improves on it on XSum, confirming the observation made in Table 6 that it is harder to train a re-ranker on this dataset. 3. On all three datasets, SummaReranker (solid lines) significantly pushes the recall at all thresholds. ::: ### 4.6 Qualitative Evaluation - We demonstrate that re-ranking improvements in quantitative metrics also translate to qualitatively better summaries. ![Screenshot 2024-05-16 at 10.49.14](https://hackmd.io/_uploads/HJgS4xm7C.png) - SummaReranker is able to include a whole sentence which was missed by the base summary. - We also conduct a human evaluation. We asked three different humans to evaluate 50 randomly sampled test summaries for each dataset. - Humans were shown the source document alongside the top beam search summary from PEGASUS and the corresponding summary candidate selected by SummaReranker. - They could choose a tie, because in some cases the base summary and the re-ranked one are very similar, or even identical. ![Screenshot 2024-05-16 at 11.01.37](https://hackmd.io/_uploads/HJ77DeQQR.png =60%x) ## 5. Discussion ### Abstractiveness - Given that <span class='red'>we are not modifying the base model nor its training procedure, we analyze whether our re-ranking system favors more abstractive candidates</span>. ![Screenshot 2024-05-16 at 11.03.54](https://hackmd.io/_uploads/Hy2jwlXXC.png =60%x) - We display the percentage of novel n-grams for n in {1,2,3,4}, for a base PEGASUS with beam search (blue) and diverse beam search (purple) decoding, and when adding SummaReranker in both cases (green and red, respectively). :::info 這邊作者在分析SummaReranker的抽象性(abstractiveness)時使用的一個指標,即新穎n-grams的百分比。讓我們逐步拆解這個分析: 1. 新穎n-grams的定義: a. 一個n-gram是一個由n個連續單詞組成的序列。例如,"the cat sat"是一個3-gram。 b. 如果一個n-gram在生成的摘要中出現,但在原始文檔中沒有出現,那麼我們稱之為一個新穎(novel)的n-gram。 c. 新穎n-grams的百分比,就是生成摘要中新穎n-grams的數量,除以摘要中所有n-grams的數量。這個百分比反映了生成摘要的抽象程度:百分比越高,說明摘要中包含了越多原文中沒有的新訊息,抽象程度越高。 2. 不同解碼方法下的新穎n-grams百分比: a. 作者首先分析了基礎PEGASUS模型在不同解碼方法下生成的摘要的新穎n-grams百分比。 b. 兩種解碼方法分別是beam search(藍色)和diverse beam search(紫色)。Beam search是一種貪婪搜索,總是選擇當前最優的候選;diverse beam search則鼓勵生成多樣化的候選。 c. 透過比較這兩種解碼方法下的novel n-grams百分比,我們可以了解不同解碼策略對摘要抽象程度的影響。 3. 加入SummaReranker後的新穎n-grams百分比: a. 接下來,作者分析了在beam search和diverse beam search的基礎上,分別加入SummaReranker後(綠色和紅色),novel n-grams百分比的變化。 b. 這個分析可以讓我們了解SummaReranker對摘要抽象程度的影響:如果加入SummaReranker後,novel n-grams百分比顯著提高,那麼說明SummaReranker傾向於選擇更加抽象的摘要。 4. 不同n值的考慮: a. 作者分別計算了n=1,2,3,4時的新穎n-grams百分比。 b. 不同的n值反映了不同粒度的語言單元。n=1對應於單詞級別,n=2對應於短語級別,n=3和n=4則對應於更長的語言片段。 c. 透過分析不同n值下的新穎n-grams百分比,我們可以全面了解摘要的抽象程度,既有整體的評估,也有詳細的分析。 總的來說,這段話描述了作者使用新穎n-grams百分比來分析SummaReranker對摘要抽象程度的影響。透過比較不同解碼方法下,以及加入SummaReranker前後的新穎n-grams百分比,作者可以定量評估SummaReranker在提高摘要抽象性方面的效果。同時,透過考慮不同的n值,作者提供了一個全面而細緻的分析視角。這種定量分析方法有助於深入理解SummaReranker的工作機制和優勢,為系統的優化和應用提供重要參考。 ::: :::success 1. As first raised in (See et al., 2017), summary candidates are much less abstractive than ground truth summaries on CNN/DM. 2. Our re-ranker selects more abstractive candidates according to all n-grams metrics, even more so with diverse beam search, which is already more abstractive than beam search. 3. XSum summary candidates are already almost as abstractive as the ground truth and it is harder to obtain significant abstractiveness gains through our re-ranking. ::: ### Speed/Performance trade-off - On top of base model training and candidate generation, SummaReranker inference cost is **linear** in the number of candidates. - A single candidate takes on average 38ms to be scored. - The performance gains from mixing several decoding methods to generate summary candidates are not scaling consistently (all four decoding methods are not better than just beam search and diverse beam search). :::info 這邊討論了在生成摘要候選時,使用多種解碼方法的效果。讓我們逐步分析: 1. 混合多種解碼方法的動機: a. 在生成摘要候選時,我們通常使用一些啟發式的解碼算法,如beam search,從模型的輸出分佈中採樣出高質量的候選。 b. 不同的解碼方法有不同的特點。例如,beam search傾向於選擇高機率的候選,而diverse beam search則鼓勵選擇多樣化的候選。 c. 一個自然的想法是,混合使用多種解碼方法,可以生成更加豐富多樣的候選集合,提高摘要的質量上限。 2. 使用四種解碼方法的結果: a. 作者在實驗中嘗試了四種解碼方法:beam search、diverse beam search、top-k sampling和top-p sampling。 b. 然而,實驗結果表明,使用全部四種解碼方法生成的候選,並不總是優於只使用beam search和diverse beam search生成的候選。 c. 這意味著,儘管理論上使用更多解碼方法可以提高候選集合的質量上限,但實際上,這種性能提升並不總是能夠實現。 3. 性能提升不一致的原因: a. 一個可能的原因是,儘管top-k sampling和top-p sampling可以生成一些beam search和diverse beam search生成不出的候選,但這些候選的質量並不necessarily高。 b. 另一個可能的原因是,由於候選集合的大小增加,摘要的搜索空間變得更加龐大和複雜,這給SummaReranker的學習和inference帶來了更大的挑戰。 c. 此外,不同解碼方法生成的候選可能存在一定的冗餘和重疊,這限制了候選集合多樣性的提升空間。 4. 這一發現的意義: a. 這一發現提醒我們,在尋求提高系統性能時,單純地增加解碼方法或候選數量並不總是有效的。我們需要仔細權衡候選集合的質量和多樣性,以及系統的學習和推理能力。 b. 這也啟發我們,在設計摘要系統時,除了關注解碼方法本身,還需要考慮解碼方法與其他組件(如重排模型)的協同效應。最佳的系統設計往往需要在多個方面進行精細的權衡和優化。 總的來說,這句話揭示了一個有趣的實驗發現:在生成摘要候選時,使用更多的解碼方法並不總是帶來一致的性能提升。這個發現challenges了直觀的想法,即"更多的候選等於更好的摘要",並促使我們更加全面地思考提高摘要質量的策略。它表明,提高摘要系統性能需要在候選生成、重排學習、推理效率等多個方面進行綜合考慮和權衡,這對於設計高效、鲁棒的摘要系統具有重要的指導意義。 ::: - SummaReranker performance when randomly subsampling k ∈ {1, . . . , 15} candidates. On CNN/DM, re-ranking as few as two candidates is sufficient to improve on the baseline PEGASUS. - On XSum, it needs three to eight, and on Reddit TIFU three to four. :::success As a rule of thumb, it is better to score all candidates when possible, but six to eight candidates provide a good trade-off between speed and performance across datasets. ::: ### Further Work - We are limited by the maximum context window of the language model encoder (512 in the case of RoBERTa-large). - <span clas='red'>Applying SummaReranker to long-document summarization, such as scientific articles summarization would need better long-range modeling.</span> - In §3, we weighted metric-dependent losses uniformly. We leave to further work the exploration of more complex weight balancing or multi-task learning objectives. :::info 1. 第3節中的損失函數設計: a. 在第3節中,作者介紹了SummaReranker的多任務學習框架。模型同時優化多個摘要評估指標(如ROUGE-1、ROUGE-2、ROUGE-L等)。 b. 對於每個指標,模型計算一個獨立的損失值。這些損失值反映了模型在每個指標上的表現優劣。 c. 為了將多個指標的損失值結合成一個總的訓練目標,作者採用了最簡單的策略:對所有指標的損失值賦予統一的權重,然後求平均。 2. 統一權重的局限性: a. 雖然統一權重的策略簡單直觀,但它可能並不是最優的選擇。 b. 不同的評估指標可能對摘要質量有不同的重要性。一些指標可能更關鍵,應該被賦予更大的權重;而另一些指標可能相對次要,權重應該較小。 c. 此外,不同指標的損失值可能具有不同的量綱和分佈特性。簡單地對它們賦予統一權重,可能無法很好地平衡它們在總損失中的貢獻。 3. 更複雜的權重平衡方法: a. 為了克服統一權重的局限性,一種可能的改進方向是探索更複雜的權重平衡方法。 b. 例如,我們可以根據每個指標的重要性,為其損失值分配不同的權重。重要性可以根據先驗知識或數據分析來確定。 c. 另一種方法是動態調整權重。在訓練過程中,根據模型在每個指標上的表現變化,自適應地調整各個損失的權重,以實現更平衡的優化。 4. 多任務學習目標的改進: a. 除了權重平衡,另一個改進方向是設計更先進的多任務學習目標函數。 b. 例如,我們可以引入任務之間的相關性建模,讓模型學習到不同指標之間的內在聯繫,從而實現更協同的優化。 c. 另一種可能是引入動態任務優先級,根據訓練過程中模型在不同任務上的進展,動態調整任務的優化順序和資源分配。 5. 進一步工作的意義: a. 作者指出,由於探索更複雜的權重平衡方法和多任務學習目標需要大量的實驗和分析,因此他們把這些改進留給了進一步的工作。 b. 這表明,設計最優的多任務學習框架是一個富有挑戰性的問題,需要在未來的研究中繼續探索和優化。 c. 同時,這也啟發我們,在應用多任務學習時,權重平衡和目標函數的選擇是值得仔細考慮的。合適的設計可以顯著提升模型的性能和泛化能力。 總的來說,這段話反映了作者在設計SummaReranker的損失函數時所採用的簡化策略,即對不同指標的損失賦予統一的權重。同時,作者也意識到了這種策略的局限性,並指出探索更複雜的權重平衡方法和多任務學習目標是一個值得進一步研究的方向。這啟發我們在應用多任務學習時,要全面考慮任務的特性和相關性,設計更加智能和自適應的優化策略。這對於充分發揮多任務學習的潛力,訓練出高性能的模型具有重要意義。 ::: ## 6. Conclusion - We introduced SummaReranker, the first **multi-task** re-ranking framework for abstractive summarization. - Encoding the source with the candidate, <span class='red'>our model predicts whether the summary candidate maximizes each of the metrics optimized for</span>. - SummaReranker works well across diverse datasets, models, decoding methods and summarization evaluation metrics. - In addition, we also show that they are more abstractive and more likely to be preferred by human evaluators over base model outputs.