top of page

大模型長文本如何評估:四大主流評測資料集的任務設計、資料集建構方案

大語言模型(LLM)雖然在各種語言任務中表現搶眼,但通常僅限於處理上下文視窗大小範圍內的文本。


有越來越多的基準被提出來測試LLM的長文本理解能力。





目前具有代表性的長文本評測主要包括Zero-SCROLLS、L-Eval、LongBench以及LooGLE四個基準。


本文對這些資料集進行梳理,供大家一起參考,包括任務的設計、任務資料集的建構方案,這些都很有借鑒性。



ZeroSCROLLS 自動將不同來源的數據集處理成平均 10k 字的統一輸入格式。它作為一個零測試基準,包含十個自然語言任務的測試集,每個任務都要求對不同類型的長文本進行推理。



  1. 摘要任務:使用了SCROLLS中的三個摘要數據集(GovReport、SummScreenFD和QM-Sum),並增加了第四個數據集(SQuALITY)。

  2. 問答:包括SCROLLS的三個問答數據集(Qasper、NarrativeQA和QuAL-ITY)和MuSiQue,後者專注於多跳問答。

  3. 聚合任務:創建了兩個新任務,要求對輸入信息的不同部分進行上下文聯繫和信息聚合。


1) Summarization摘要任務

該工作採用了 SCROLLS 中的三個摘要資料集(GovReport、SummScreenFD和QM-Sum),並增加了第四個資料集(SQuALITY)。


GovReport 和 SummScreenFD 是全文檔摘要任務,而 QMSum 和 SQuALITY 則以查詢為重點。


其中:

  • GovReport:包含國會研究服務處和美國政府問責辦公室的長篇報告及其專家書面摘要。

  • SummScreenFD:包含從維基百科和TVMaze收集的電視節目集劇本及其摘要。

  • QMSum:一個基於查詢的會議記錄摘要資料集。該資料集包含學術會議、工業產品會議以及威爾士和加拿大議會的會議記錄。除了會議筆錄,每個實例還包含一個查詢,目的是將摘要集中在特定主題上。

  • SQuALITY:一個以問題為中心的摘要資料集,給定古騰堡計劃中的一個故事,任務是根據一個指導性問題生成該故事或其某些方面的摘要。


摘要任務對應的prompt如下:



2) Question Answering

該工作採用了 SCROLLS 的三個問題解答資料集(Qasper、NarrativeQA 和 QuAL-ITY),並增加了 MuSiQue,該資料集側重於多跳問答。


其中:

  • Qasper:包含來自語義學者開放研究語料庫(S2ORC)的 NLP 論文。NLP 從業人員根據摘要提出問題,另一組從業人員根據文章內容進行回答。

  • NarrativeQA:包含對古騰堡計劃(ProjectGutenberg)中的書籍和各種網站中的電影劇本的提問和回答。為了創建問題和答案,標注人員者從維基百科中獲得了書籍和電影的摘要。 每個問題由一個或多個標注人員回答。

  • QuALITY:包含來自古騰堡計劃、開放美國國家語料庫等的故事和文章。每篇文章都包含一個故事和一個選擇題;問題編寫者在指導下編寫需要閱讀故事的大部分內容才能正確作答的問題。

  • MuSiQue:一個多跳問題解答資料集,輸入是 20 個維基百科段落和一個需要在不同段落之間進行多次跳轉的問題。在原始資料集中,每個問題都有一個無法回答的孿生問題,即正確答案不存在於段落中。該工作為 ZeroSCROLLS 隨機抽取了 100 個無法回答的問題和 400 可以回答的問題。


3) Aggregation

該工作創建了兩個新任務,從結構上看,這兩個任務要求對輸入信息的不同部分進行上下文關聯和信息聚合。其中:


SpaceDigest

一項新的情感聚合任務。給定 Space 資料集中的50條酒店評論(不含評分),任務是確定正面評論的百分比。


該工作從原始資料集中評分最高的500家酒店中為每家酒店創建一個實例(50條評論),只保留嚴格意義上的正面評論(評分為5分或4分)或負面評論(評分為2分或1分),剔除評分為3分的矛盾評論。


為了驗證人類是否能很好地完成這項任務,該工作給5名標注人員提供了一個縮略版的實例(每個實例包含10條評論),並要求他們寫出正面評論的百分比。


每位標注人員需要分配到10個實例(每位注釋者100條評論,總計500條)。


BookSumSort

一項基於Book-Sum資料集的新任務,該資料集包含各種來源的小說、戲劇和長詩的章節(或部分)摘要。


在這項任務中,提供了一系列章節摘要,目標是依照BookSum中原始摘要的順序對其進行重新排序。透過人工從BookSum中挑選出125本書的摘要來創建任務,並且只保留高品質的例子。每篇摘要都經過人工編輯,刪除了引言、序言、概述等內容,以及任何其他可能顯示摘要確切位置的信息。


例如,「第8章以簡單描述......開始」被修改為「本章以簡單描述......開始」,「隨著戲劇的開場,希波呂托斯宣布......」則改為「希波呂托斯宣布......」。每個摘要列表包含3至86個章節的摘要,中位數為15個,平均每個實例包含18.8個章節。


這項工作從每個列表中隨機選擇4種排列方式,創建了500個實例。




L-Eval (標準化長文本語境語言模型評估) 從較小的類似公共數據集中重新標注數據和指令,優化了評估程序和基線,涵蓋多種題型,如選擇題、真假題、數學題等。在長度方面,L-Eval的平均輸入長度從4k到60k不等。


L-Eval 包含多種題型,如:

  • 選擇題(TOFEL、QuALITY、Coursera)

  • 真假題(SFiction)

  • 數學題(GSM)

  • 代碼理解(CodeU)

  • 目標導向對話(Multi-Doc2Dial)

  • 提取式QA(CUAD、NQ)

  • 摘要性QA(LongFQA、NarrativeQA、Qasper)

  • 單篇文件摘要(GovReport、BigPatent、SummScreen、SummScreen、QMSum)

  • 多文件摘要(Multi-News、SPACE)

  • 研究寫作(Openreview)


在數據分布方面,L-Eval 中的長文檔涉及法律、金融、學術論文、講座、長篇對話、新聞、著名 Python 代碼庫、長篇小說和會議等多個領域。


在長度方面,L-Eval 的平均輸入長度從 4k 到 60k 不等,最大樣本包含近 20 萬個 token。這種多樣性代表了現實世界中不同任務可能需要不同長度的上下文和指令的情況,不同任務的引用長度也有很大差異。

  1. 從零開始的數據標注:包括四個從頭標注的數據集。

  2. 從公共數據集重新標注數據:對5個公開數據集進行了重新標注。

  3. 數據過濾與校正:對現有數據集進行手動過濾和校正。


1) 從零開始的數據標注

L-Eval 共有 4 個從頭標注的數據集:Coursera、SFcition、CodeU 和 LongFQA。


原始資源分別是來自 Coursera 的視頻、以前的開源數據集、著名 Python 庫的源代碼以及公開的通話記錄。


為了降低標注的難度,該工作選擇了四門與大數據和機器學習相關的公開課程。輸入的長文檔是視頻的字幕。問題和真實答案由作者標注。Coursera 的教學方式是選擇題。為了增加任務的難度,該工作設置了多個正確選項。


CodeU 是代碼理解數據集,要求 LLM 推斷冗長 Python 程序的輸出。該工作主要使用 Numpy 的源代碼,並構建了一個字串處理代碼庫。


為了防止 LLM 根據其參數知識回答問題,該工作替換了原始函數名。LLM 應首先找到函數被調用的位置,並確定調用了哪些函數。


LongFQA 注意到金融領域缺乏長語境問題解答數據集,因此根據 6 家公司網站投資者關係部分的公開盈利電話記錄來標注 QA 對。



2) 從公共數據集重新標注數據

該工作在 L-Eval 中對 5 個公開數據集進行了重新標注。


其中:


GSM(16-shot) 源自 GSM8k 數據集。考慮到如果 LCLM 在較長的語境中仍能保持其推理能力,那麼使用更多高質量的例子將對數學問題的解決產生積極影響。該工作用較長的「思維鏈」(Chain-of-Thought)構建了 16 個上下文例子,其中 8 個例子來自「思維鏈」集線器(Chain-of-Thought-hub),8 個例子由該工作自己構建。


在 QuALITY 中注入了新的合成指令來測試全局上下文建模,例如「該工作能從這個故事中最長的句子中推斷出什麼?」和「故事中有多少個單詞?」


Openreview 數據集包含從 openreview.net 收集的論文。該工作要求模型撰寫摘要部分,總結相關工作,最後給出反饋,包括給作者的寶貴建議和一些問題。



3) 數據過濾與校正

剩下的 12 個任務來源於現有數據集。然而,L-Eval 在數據收集後需要更多的人力,因為該工作發現以前的長序列數據集的標注質量波動很大,有很多無法回答的問題與上下文無關。這些錯誤很難通過以往工作中的自動預處理腳本來糾正。


在 L-Eval 中,所有樣本都是在數據收集後手動過濾和校正。具體地,該工作使用 Claude-100k 作為助手來過濾錯誤的 QA 和無法回答的問題。


首先,該工作將冗長的文件輸入 Claude,並要求它提供答案和解釋。如果 Claude 給出的答案與基本事實嚴重不符,或者說該工作無法從上下文中推斷出答案,就會對其進行重新標注或直接刪除。




LongBench 提供了一個雙語和多任務數據集,用於全面評估長語境理解能力。



  1. 單文檔問答:包括NarrativeQA和Qasper。

  2. 多文檔問答:來自三個基於維基百科的多跳QA數據集。

  3. 摘要:包括原始GovReport數據集和QMSum數據集。

  4. 少樣本學習:包括多種分類、摘要和閱讀理解任務。

  5. 合成任務:設計了三個合成任務來測試特定場景和模式下的模型能力。

  6. 代碼補全任務:評估模型在處理冗長代碼輸入時的能力。


1) 單文檔問答(Single-Doc QA)

針對單文檔QA,這項工作主要關注擁有較長文檔的實例。包括:NarrativeQA,這個數據集由長故事和測試閱讀理解能力的問題組成。此外,還從Qasper中採樣,該數據集特點是對NLP論文進行問答,並由NLP從業人員進行標注。

為了更好地測試模型在不同領域的長語境理解能力,這項工作手工整理了中英文的MultiFieldQA數據集。

具體來說,首先從多個來源收集文件和文章,包括法律文件、政府報告、百科全書、學術論文等。邀請了三位博士生為每篇文章的問題和答案進行標注,為了便於自動評估,標注時盡量給出明確的答案。

在標注過程中,確保答案可以從文件中推斷出來,並且證據的位置相當隨機,以避免偏差,例如,避免與答案相關的語句經常出現在開頭或結尾。


2) 多文檔問答(Multi-Doc QA)

多文檔問答要求模型從多個文檔中提取和組合信息以獲得答案,這通常比單文檔問答更具挑戰性。


英文測試樣本來自三個基於維基百科的多跳QA數據集:HotpotQA、2WikiMultihopQA和MuSiQue。


HotpotQA涉及一些由母語人士直接撰寫的2-hop問題,給出兩個相關的段落。


2WikiMultihopQA包含多達5跳的問題,這些問題是通過人工設計的模板合成的,以確保這些問題無法通過捷徑解決。


MuSiQue中的問題由涉及最多4跳推理的簡單問題精心組成,然後由標注人員進行解析,以避免走捷徑並確保語言的自然性。原始數據集中的每個問題都有2-4個提供一步推理證據的輔助段落和幾個分散注意力的段落作為補充。


為了調整數據以進行長文本評估,這項工作利用維基百科中包含支持段落或干擾段落的完整段落作為語境。首先,在上下文中包含支持性段落,然後添加盡可能多的干擾性段落,直到總長度達到最大長度。最後,這些段落被隨機排序,形成多文檔上下文。


除了這三個英文數據集之外,還構建了一個基於DuReader的中文數據集。為了使其適用於評估長語境能力,這項工作不僅為每個問題提供若干與該問題相關的文檔,還從全部文檔集中任意選擇若干文檔作為干擾項,直到每個問題與20個文檔相關聯。


3) 摘要(Summarization)

與通常可以利用上下文中的局部信息來解決的質量保證任務相比,摘要要求對整個上下文有更全面的了解。


原始GovReport數據集是美國政府問責局和國會研究服務部的詳細報告的大規模集合,每份報告都附有人工撰寫的摘要,內容涵蓋各種國家政策問題。


QMSum數據集包含了232個會議的查詢-摘要對標注,涉及多個領域,包括產品會議、學術會議和委員會會議。這項工作將查詢視為輸入I,將會議內容視為上下文C,將摘要視為答案A。


MultiNews是多文檔摘要數據集,由2-10篇討論同一事件或話題的新聞文章組成,每篇文章都配有人工撰寫的摘要,總結了多篇源文章中的關鍵信息。在LongBench中,這項工作在第i篇新聞文章前加入「Documenti」,並將其串聯到上下文C中。


VCSUM是一個大規模的中文會議摘要數據集,由239個真實會議組成,持續時間超過230小時,可支持多種摘要任務。在LongBench中,選擇VCSUM中的長片段作為評估樣本。



4) 少量樣本學習(Few-shot Learning)

為了確保任務的多樣性,這項工作將分類、總結和閱讀理解任務納入了少量樣本學習場景中。該工作納入了兩個具有細粒度類別標籤的分類數據集,包括 TREC 和 LSHT,前者是涉及 50 個細粒度類的問題分類任務,後者是涉及 24 個類的中文新聞分類任務。


在摘要任務方面,使用 SAMSum 數據集,該數據集包含有標注摘要的信使式對話。TriviaQA 包含標有證據段落的問答對,該工作將其用作閱讀理解任務。該工作將 TriviaQA 中字數少於 1,000 字的段落過濾為潛在範例。


對於 TREC、LSHT、SAMSum 和 TriviaQA,範圍分別為 [100,600]、[10,40]、[10,100]、[2,24]。



5) 合成任務(Synthetic Task)

合成任務通過精心設計來測試模型在特定場景和模式下的能力。在 LongBench 中,該工作設計了三個合成任務。


PassageRetrieval-en 和 PassageRetrieval-zh 基於英文維基百科和 C4 數據集構造,對於每個數據條目,該工作隨機抽取 30 個段落,並選擇其中一個使用 GPT-3.5-Turbo 進行總結。該任務要求模型識別精心製作的摘要所對應的原始段落。


PassageCount 任務要求模型利用完整的上下文來完成任務。對於每項數據,從英文維基百科中隨機選取幾個段落,將每個段落隨機重複若干次,最後將段落打亂,要求模型確定給定集合中唯一段落的數量。具體地,該工作隨機選擇 M 作為段落數的上限。然後,從 [2,M] 範圍內隨機抽取唯一段落数 N,從 N 個唯一段落中進行隨機抽樣(替換),得到最終的 M 個段落。



6) 代碼補全任務(Code Completion)

代碼自動補全是自動補全系統的一項重要任務,它可以根據先前的代碼輸入和上下文幫助用戶補全代碼。


這項任務會對模型構成巨大挑戰,尤其是在處理冗長的代碼輸入或甚至是資源庫級數據時。這主要是因為模型需要根據代碼元素內部的關係(如類和函數定義之間的關係)在長距離序列中建立注意力。因此,該工作認為這是一項適合評估模型長語境建模能力的任務。


其中:


LCC 數據集取自原始的長代碼完成數據集。原始數據集是根據長度過濾 GitHub 上一個文件中的代碼而構建的。該數據包括作為上下文的前幾行長代碼和作為答案的下一行代碼。


考慮到版本庫級別的代碼補全設定,這就需要彙總跨文件的代碼信息。為此,該工作採用了 RepoBench-P 數據集。


RepoBench-P 數據集收集自 Github 代碼庫,首先根據模塊導入語句從其他文件中檢索相關代碼片段。然後將這些代碼片段與當前文件中的前幾行代碼串聯起來作為上下文,並用於預測下一行代碼。


該工作從原始數據集中選擇了最具挑戰性的 XF-F(跨文件優先)設定,在這種設定中,文件內上下文沒有提供模塊的先前使用情況來幫助預測。


對於每份原始數據,該工作會對包含真實跨文件代碼片段(人工標注為最佳預測上下文)的跨文件代碼片段進行打亂,並將其合併為上下文。





LooGLE 包含了更具挑戰性的長依賴任務,如事件時間線重排、理解/推理和計算。


  1. 數據集的選擇和構建:包括科學論文、維基百科文章、電影和電視劇本。

  2. 長依賴任務:涵蓋摘要和長依賴性問答。

  3. 短依賴任務:包括問答(QA)任務和Cloze任務。


LooGLE中創建了兩類主要任務:短依賴任務和長依賴任務。針對短依賴性任務,從維基百科文章和劇本中生成短問答(QA)。針對長依賴性任務,包括針對 arXiv 論文的摘要和針對長文檔理解的人工設計 QA 任務。


QA 有四個主要子任務:多重資訊檢索、時間軸重排、計算、理解和推理。該工作精細地生成任務/問題,以定制每個資料來源的內在特徵,從而更好地進行長文理解評估。



1) 數據集的選擇和構建

該 LooGLE 基準由 3 個數據源組成:科學論文、維基百科文章、電影和電視劇本,它們都涵蓋了不同的主題和類別,所有文件都是 2022 年後的文件,長度超過 10k。


其中,針對 arXiv 論文。採用隨機抽取的方法,從 arXiv網站上的 10,000 個大量條目中抽取數據。這些條目從 2022 年 1 月到 2023 年 4 月不等。然後提取它們的摘要,使其成為該工作總結任務的主要來源。該工作在保證數據質量方面相當嚴格,所以刪去參考文獻部分,清理數學公式中的亂碼,並剔除字數少於 10,000 字的文件。經過全面檢查,該工作最終收集到了 516 篇可靠的研究論文。


對於維基百科文章,首先從官方網站下載並解析了以 .bz 文件格式存在的最新頁面文章。然後,利用來自 HuggingFace的開源維基百科數據集(202203.en)子集,保留了 2022 年之後字數超過 10k 的文章。由於轉儲文件中的某些頁面可能已不存在,並被重定向到相關頁面,因此只保留重定向後的頁面(免責摘要、引文和參考文獻)。


對於電影和電視劇本,所有劇本均來自三個網站,包括 2022 年之後上映的電影和電視劇。


2) 長依賴任務

摘要 Summarization

直接使用每篇論文的摘要作為生成摘要的參考。摘要有效地捕捉了每篇論文的主要內容和關鍵信息。


每個文件的平均字數在 10,000 到 20,000 之間,需要生成 5 到 10 個問題。此外,參與者不得使用大型語言模型和 ChatGPT 等工具進行文章閱讀、數據生成和標注。


長依賴性問答 Long dependency QA

花費了大量精力手動編製了約 1.1k 個真正的長依賴性質量保證對。該工作手動設計了 4 個長依賴性任務:多重資訊檢索、時間軸重排、計算、理解和推理。




a) 多重資訊檢索 Multiple information retrieval


與傳統的短期檢索任務完全不同,對於一個特定的答案,整個文本中通常存在多種多樣的證據。這項任務要求從廣泛分佈的冗長文本中提取大量資訊,然後匯總證據,得出最終答案。證據的呈現方式非常明顯,可以直接在原文的句子或章節中找到。


b) 計算 Computation


與前一項任務類似,它首先需要從大量文本中進行多重資訊檢索。文本中的大部分證據都以數字數據的形式出現,通常以問題的形式出現,如詢問數量、頻率、持續時間、具體數字等。


要做出準確的回答,必須深刻理解問題及其與所提供的數字數據之間的關聯。這一過程在很大程度上依賴於掌握大量背景資訊的能力,同時還涉及一定程度的數學推理能力。


c) 時間軸重排 Timeline reorder


這項任務採用了較為傳統的形式,其中包括「請將下列事件的時間軸重新排序」的指令,以及一組以排列順序呈現的事件。任務的目的是將這些事件按照時間順序排列在全文中。


這些事件直接來源於原文,可以是摘錄的片段,也可以是概括的事實資訊。要成功完成這項任務,就必須記住或全面理解文件的中心故事情節,並評估模型在時間意識方面的熟練程度。


d) 理解和推理 Comprehension and reasoning


這項任務不僅要求對問題有深刻的理解,還要求進行複雜的推理,以辨別尋找適當證據的內在含義。最常見的問題模式涉及對因果關係、影響、貢獻、態度以及與各種事件相關的基本屬性的探究。


這項任務的答案在原文中並不明顯。它們往往需要多步推理來模擬內在的聯繫和依賴關係,從而有助於通過複雜的分析過程獲得答案。



2) 短依賴任務

短依賴任務包括問答(QA)任務和填空(Cloze)任務。為了產生簡短的依賴關係問題解答對,該工作利用了 GPT3.5-turbo-16k。這些簡短的依賴關係問答對通常不需要大量的證據檢索,可以從本地化的片段中提取。



該工作將每篇文章分為多個片段,並採用迭代方法來提示語言模型(LLM)根據這些片段生成 QA 對,包括文章中的相關支持證據。


隨後對 QA 對進行人工審核,通過過濾非必要的上下文和刪除多餘的描述來完善部分答案。這一嚴格的整理過程是為了確保所生成的 QA 對的高質量和相關性。



3) 填空任務(Cloze)

最初,該工作將每個劇本分成不同長度的片段。然後,該工作使用 GPT3.5-turbo-16k 生成與源片段一致的事實摘要,並在提示中包含一些限制條件(見附錄 D)。


之後,使用 BERT-large 對生成的摘要進行命名實體識別(NER),將類型限制為人名、地點和組織。



最後,從摘要中隨機選擇一定數量(不超過 5 個)的實體作為佔位符進行屏蔽,標記為「""」。該目標是根據長上下文預測被屏蔽的實體。



總結


本文針對長文本評估梳理了 Zero-SCROLLS、L-Eval、LongBench以及LooGLE 四個具代表性的基準。

這些數據集對於了解和評估大型語言模型在處理長文本上的能力提供了有價值的參考。詳細信息可參考上述提供的參考文獻鏈接。



資料來源


40 次查看0 則留言

Comments


bottom of page