GPT-2論文閱讀:Language Models are Unsupervised Multitask Learners

本文解析 OpenAI 2019 年發布的里程碑式論文,該論文首次提出了 GPT-2 模型,揭示了語言模型作為無監督多任務學習器的革命性潛力。文章的核心觀點是:語言模型在無監督訓練過程中,可以隱式地學習多種任務,無需特定任務微調或監督信號。

文章鏈接:Language Models are Unsupervised Multitask Learnershttps://cdn.openai.com/better-language-models/language_models_are_unsupervised_multitask_learners.pdf

Abstract(摘要)

自然語言處理任務,如問答、機器翻譯、閱讀理解、摘要生成,通常通過在特定任務的數據集上進行監督學習來解決。我們證明,當在一個包含數百萬網頁、名為WebText的新數據集上訓練時,語言模型開始在沒有顯式監督的情況下學習這些任務。當給定一個文檔加上問題時,語言模型生成的答案在CoQA數據集上達到55 F1分——在不使用超過127,000個訓練示例的情況下,匹配或超過了4個基線系統中的3個。語言模型的容量對于零樣本任務遷移的成功至關重要,增加容量以對數線性方式跨任務提升性能。我們最大的模型GPT-2是一個擁有15億參數的Transformer,在零樣本設置下,在8個測試語言建模數據集中的7個上取得了最先進的結果,但仍然對WebText欠擬合。模型的采樣結果反映了這些改進,并包含連貫的文本段落。這些發現為構建通過自然發生演示學習執行任務的語言處理系統指明了一條有希望的道路。

1. Introduction(介紹)

機器學習系統現在(在期望上)擅長于通過結合大型數據集、高容量模型和監督學習來完成它們被訓練的任務(Krizhevsky et al.,2012)(Sutskever et al.,2014)(Amodei et al.,2016)。然而,這些系統很脆弱,對數據分布(Recht et al., 2018)和任務規范(Kirkpatrick et al.,2017)的微小變化很敏感。當前的系統更像是狹窄的專家,而非有能力的通才。我們希望朝著更通用的系統邁進,這些系統可以執行許多任務——最終無需為每個任務手動創建和標注訓練數據集。

創建機器學習系統的主要方法是收集一個展示期望任務正確行為的訓練示例數據集,訓練一個系統來模仿這些行為,然后在獨立同分布(IID)的保留示例上測試其性能。這對于發展狹窄專家效果很好。但是,圖說模型(Lake et al.,2017)、閱讀理解系統(Jia& Liang,2017)和圖像分類器(Alcorn et al., 2018)在多樣化和各種可能輸入上表現出的經常不穩定的行為,突顯了這種方法的一些缺點。

我們懷疑,在單一領域數據集上進行的單任務訓練的普遍性,是導致當前系統缺乏泛化能力的主要原因。利用當前架構向魯棒系統取得進展,很可能需要在廣泛的領域和任務上進行訓練和性能測量。最近,提出了幾個基準,如GLUE(Wang et al., 2018) 和 decaNLP(McCann et al., 2018),以開始研究這個問題。

多任務學習(Caruana, 1997)是提高通用性能的一個有前景的框架。然而,自然語言處理中的多任務訓練仍處于早期階段。最近的工作報告了適度的性能改進(Yogatama et al.,2019),迄今為止最雄心勃勃的兩項努力分別訓練了總共10對和17對(數據集,目標)(McCann et al., 2018)(Bowman et al.,2018)。從元學習的角度來看,每對(數據集,目標)都是從數據集和目標分布中采樣的單個訓練示例。當前的機器學習系統需要成百上千個示例來歸納泛化良好的函數。這表明,利用當前方法實現多任務訓練的承諾可能需要同樣多的有效訓練對。繼續將數據集的創建和目標的設計擴展到當前技術可能需要的程度以“暴力”突破(brute force our way there),將非常困難。這促使我們探索執行多任務學習的額外設置。

圖1. WebText語言模型在不同NLP任務上的零樣本任務性能,作為模型規模的函數。?? 閱讀理解結果基于CoQA(Reddy et al., 2018),翻譯結果基于WMT-14 Fr-En(Artetxe et al., 2017),摘要結果基于CNN and Daily Mail(See et al., 2017),問答結果基于Natural Questions(Kwiatkowski et al., 2019)。第3章節包含每個結果的詳述。

當前在語言任務上表現最佳的系統利用預訓練和監督微調的組合。這種方法由來已久,并呈現出向更靈活遷移形式發展的趨勢。首先,學習詞向量并將其用作任務特定架構的輸入(Mikolov et al., 2013)(Collobert et al., 2011),然后遷移循環網絡的上下文表示(Dai& Le, 2015)(Peters et al., 2018),最近的研究表明任務特定架構不再必要,遷移多個自注意力塊就足夠了(Radford et al., 2018)(Devlin et al., 2018)。

這些方法仍然需要監督訓練來執行任務。當只有極少或沒有監督數據可用時,另一項工作展示了語言模型執行特定任務的潛力,例如常識推理(Schwartz et al., 2017)和情感分析(Radford et al., 2017)。

在本文中,我們將這兩條工作線聯系起來,并延續更通用的遷移方法的趨勢。我們證明語言模型可以在零樣本設置下執行下游任務——無需任何參數或架構修改。我們通過強調語言模型在零樣本設置下執行廣泛任務的能力來證明這種方法具有潛力。根據任務的不同,我們取得了有希望的、有競爭力的和最先進的結果。

2. Approach(方法)

我們方法的核心是語言建模。語言建模通常被構架為從一組示例(x_1,x_2,...,x_n)中進行無監督分布估計,每個示例由可變長度的符號序列(s_1,s_2,...,s_n)組成。由于語言具有自然的順序性,通常將符號上的聯合概率分解為條件概率的乘積(Jelinek& Mercer, 1980)(Bengio et al., 2003):

p(x)=\prod_{i=1}^{n}p\left ( s_n|s_1,...,s_{n-1} \right )

這種方法允許從?p(x)?以及任何形式為?p\left ( s_{n-k},...,s_n|s_1,...,s_{n-k-1} \right )?的條件分布中進行可處理的采樣和估計。近年來,在計算這些條件概率的模型表達能力方面取得了顯著改進,例如像Transformer(Vaswani et al.,2017)這樣的自注意力架構。

學習執行單個任務可以在概率框架中表示為估計一個條件分布?p\left (output|input \right )?。由于一個通用系統應該能夠執行許多不同的任務,即使對于相同的輸入,它也不應僅以輸入為條件,還應以要執行的任務為條件。也就是說,它應該建模?p\left (output|input,task \right )。這在多任務和元學習設置中已被各種形式化。任務條件設定通常在架構層面實現,例如(Kaiser et al., 2017)中的任務特定編碼器和解碼器;或在算法層面實現,例如MAML(Finn et al., 2017)的內外環優化框架。但正如McCann et al.(2018)所例證的那樣,語言提供了一種靈活的方式來將任務、輸入和輸出全部指定為符號序列。例如,一個翻譯訓練示例可以寫成序列(translate to french, english text, french text)。同樣,一個閱讀理解訓練示例可以寫成(answer the question, document, question, answer)。McCann et al.(2018)證明了可以訓練一個單一模型,即MQAN,在這種格式的示例上推斷和執行許多不同的任務。

原則上,語言建模也能夠學習McCann et al.(2018)的任務,而無需明確監督哪些符號是要預測的輸出。由于監督目標與無監督目標相同,但僅評估序列的一個子集,無監督目標的全局最小值也是監督目標的全局最小值。在這個稍微理想化的設置中,回避了(Sutskever et al.,2015)中討論的將密度估計作為原則性訓練目標的擔憂。問題反而變成了我們是否能夠在實踐中優化無監督目標直至收斂。初步實驗證實,足夠大的語言模型能夠在這個類玩具的設置中進行多任務學習,但學習速度比顯式監督方法慢得多。

雖然從上述定義良好的設置到“野外語言”的混亂性是一個巨大的跨越,但Weston(2016)在對話的背景下主張,有必要開發能夠直接從自然語言中學習的系統,并通過前向預測教師的輸出來演示了一個概念證明——在沒有獎勵信號的情況下學習問答任務。雖然對話是一種有吸引力的方法,但我們擔心它過于受限。互聯網包含大量被動可用的信息,無需交互式通信。我們的推測是,具有足夠容量的語言模型將開始學習推斷和執行自然語言序列中演示的任務,以便更好地預測它們,無論其獲取方法如何。如果語言模型能夠做到這一點,那么實際上它就是在執行無監督多任務學習。我們通過分析語言模型在零樣本設置下在各種任務上的表現來測試這一點是否成立。

2.1. Training Dataset(訓練集)

大多數先前的工作在單一文本領域訓練語言模型,例如新聞文章(Jozefowicz et al.,2016)、維基百科(Merity et al., 2016)或小說(Kiros et al., 2015)。我們的方法激勵構建盡可能大且多樣化的數據集,以便在不同領域和上下文中盡可能多地收集任務的自然語言演示。

一個充滿希望且幾乎無限的多樣化文本來源是網絡抓取數據,例如Common Crawl。雖然這些存檔比當前的語言建模數據集大好幾個數量級,但它們存在嚴重的數據質量問題。Trinh& Le(2018)在他們關于常識推理的工作中使用了Common Crawl,但注意到大量文檔“其內容大多難以理解”。我們在最初使用Common Crawl的實驗中觀察到了類似的數據問題:

“I'm not the cleverest man in the world, but like they say in French: Je ne suis pas un imbecile[I'm not a fool].
In a now-deleted post from Aug. 16, Soheil Eid, Tory candidate in the riding of Joliette, wrote in French:"Mentez mentez,il en restera toujours quelque chose," which translates as,"Lie lie and something will always remain."
“I hate the word‘perfume,” Burr says.‘It’s somewhat better in French:‘parfum.’
If listened carefully at 29:55, a conversation can be heard between two guys in French:“-Comment on fait pour aller de l'autre cote?-Quel autre cote?", which means“- How do you get to the other side?- What side?"
If this sounds like a bit of a stretch, consider this ques-tion in French: As-tu aller au cinéma?, or Did you go to the movies?, which literally translates as Have-you to go to movies/theater?
“Brevet Sans Garantie Du Gouvernement”, translated to English:“Patented without government warranty”.

表 1. 在WebText訓練集中各處發現的英法互譯自然發生演示示例。

Trinh& Le(2018)的最佳結果是使用Common Crawl的一個小子樣本實現的,該子樣本僅包含與其目標數據集Winograd Schema Challenge最相似的文檔。雖然這是提高特定任務性能的實用方法,但我們希望避免事先對要執行的任務做出假設。

相反,我們創建了一個新的網絡抓取數據集,強調文檔質量。為此,我們僅抓取經過人工篩選/過濾的網頁。手動過濾整個網絡抓取數據會異常昂貴,因此作為一個起點,我們抓取了Reddit(一個社交媒體平臺)上所有獲得至少3個karma的外鏈。這可以被視為一種啟發式指標,用于判斷其他用戶是否認為該鏈接有趣、有教育意義或只是好笑。

所得的數據集WebText包含了來自這4500萬個鏈接的文本子集。為了從HTML響應中提取文本,我們結合使用了Dragnet(Peters&Lecocq, 2013)和Newspaper內容提取器。本文呈現的所有結果均使用了WebText的一個初步版本,該版本未包含2017年12月之后創建的鏈接,并且在去重和一些基于啟發式的清理之后包含略超過800萬個文檔,總計40GB文本。我們從WebText中移除了所有維基百科文檔,因為它是其他數據集的常見來源,并且由于與測試評估任務存在重疊的訓練數據可能會使分析復雜化。

2.2. Input Representation(輸入表示)

一個通用的語言模型(LM)應該能夠計算(并生成)任何字符串的概率。當前的大規模LM包括預處理步驟,例如小寫轉換、分詞和詞匯表外(out-of-vocabulary)詞符,這些步驟限制了可建模字符串的空間。雖然像Gillick et al.(2015)等工作所例示的那樣,將Unicode字符串作為UTF-8字節序列處理可以優雅地滿足這一要求,但當前的字節級LM在大型數據集(如One Billion Word Benchmark(Al-Rfou et al., 2018))上無法與詞級LM競爭。我們在嘗試在WebText上訓練標準字節級LM時也觀察到了類似的性能差距。

字節對編碼(BPE)(Sennrich et al., 2015)是字符級和詞級語言建模之間的一種實用折中方案,它有效地在頻繁符號序列的詞級輸入和不頻繁符號序列的字符級輸入之間進行插值。盡管其名稱如此,參考的BPE實現通常操作在Unicode碼點(code point)上,而非字節序列。這些實現需要包含完整的Unicode符號空間才能建模所有Unicode字符串。這會導致在添加任何多符號詞符之前,基礎詞匯表就超過130,000個。這相比于BPE通常使用的32,000到64,000個詞符的詞匯表來說是大得無法接受的。相比之下,字節級的BPE版本僅需要大小為256的基礎詞匯表。然而,直接將BPE應用于字節序列會導致次優的合并,因為BPE使用基于頻率的貪婪啟發式方法來構建詞符詞匯表。我們觀察到BPE包含了常見單詞(如“dog”)的許多變體,因為它們以多種形式出現,例如“dog.”、“dog!”、“dog?”。這導致了對有限詞匯表槽位和模型容量的次優分配。為了避免這種情況,我們阻止BPE跨任何字節序列的字符類別進行合并。我們為空格添加了一個例外,這顯著提高了壓縮效率,同時僅對跨多個詞匯表詞符的單詞添加了最小的碎片化。

這種輸入表示使我們能夠結合詞級LM的經驗優勢與字節級方法的通用性。由于我們的方法可以為任何Unicode字符串分配概率,這使我們能夠評估我們的LM在任何數據集上,而無論其預處理、分詞或詞匯表大小如何。

2.3. Model(模型)

我們使用基于Transformer(Vaswani et al., 2017)的架構作為我們的LM。該模型在很大程度上遵循了OpenAI GPT模型(Radford et al., 2018)的細節,并做了一些修改。層歸一化(Ba et al., 2016)被移到每個子塊的輸入處,類似于預激活殘差網絡(He et al., 2016),并且在最終的自注意力塊之后添加了一個額外的層歸一化。使用了一種修改后的初始化方法,該方法考慮了模型深度在殘差路徑上的累積。我們在初始化時將殘差層的權重按?\frac{1}{\sqrt{N}} 的比例縮放,其中?N?是殘差層的數量。詞匯表擴展到50,257。我們還將上下文大小從512個詞符增加到1024個詞符,并使用更大的批大小為512。

參數數量層數d_model
117M12768
345M241024
762M361280
1542M481600

??表 2. 4種模型規模的架構超參數。?

3. Experiments(實驗)

我們訓練并評估了四個大小近似對數均勻分布的語言模型(LM)。架構總結在表2中。最小的模型等同于原始GPT,第二小的模型等同于BERT(Devlin et al., 2018)中最大的模型。我們最大的模型,稱為GPT-2,其參數數量比GPT多一個數量級。每個模型的學習率均在WebText的5%保留樣本上手動調整以獲得最佳困惑度(perplexity)。所有模型仍然對WebText欠擬合,并且隨著訓練時間增加,保留困惑度仍在持續改善。

3.1. Language Modeling(語言建模)

作為邁向零樣本任務遷移的第一步,我們感興趣的是了解WebText LM在其主要訓練任務——語言建模上,在零樣本領域遷移中的表現如何。由于我們的模型在字節級別運行,不需要有損的預處理或分詞,我們可以在任何語言模型基準上評估它。語言建模數據集的結果通常以一種經過縮放或指數化的量來報告,該量表示每個規范預測單位(通常是一個字符、一個字節或一個詞)的平均負對數概率。我們通過根據WebText LM計算數據集的概率對數,然后除以規范單位的數量來評估相同的量。對于其中許多數據集,WebText LM將面臨顯著分布外(out-of-distribution)的測試,必須預測經過激進標準化的文本、分詞偽影(如斷開的標點和縮略詞)、打亂的句子,甚至是字符串<UNK>(這在WebText中極為罕見——在400億字節中僅出現26次)。我們使用可逆的反分詞器(de-tokenizers)來去除盡可能多的這些分詞化/預處理偽影,在表3中報告了我們的主要結果。由于這些反分詞器是可逆的,我們仍然可以計算數據集的概率對數,并且可以將它們視為領域適應的簡單形式。我們觀察到,使用這些反分詞器,GPT-2的困惑度提高了2.5到5。

WebText LM在跨領域和數據集上遷移良好,在零樣本設置下在8個數據集中的7個上提高了技術水平。在僅包含100萬到200萬訓練詞符的小型數據集上觀察到了巨大的改進,例如Penn Treebank和WikiText-2。在為測量長期依賴關系而創建的數據集上也觀察到了巨大的改進,例如LAMBADA(Paperno et al., 2016)和兒童圖書測試(Children's Book Test)(Hill et al., 2015)。我們的模型在One Billion Word Benchmark(Chelba et al., 2013)上仍然顯著差于先前的工作。這很可能是由于它既是最大的數據集,又進行了最具破壞性的預處理——1BW的句子級打亂移除了所有長期結構。

LAMBADA (PPL)LAMBADA (ACC)CBT-CN (ACC)CBT-NE (ACC)WikiText2 (PPL)PTB (PPL)enwik8 (BPB)text8 (BPC)WikiText103 (PPL)1BW (PPL)
??SOTA??99.859.2385.782.339.1446.540.991.0818.321.8
??117M??35.1345.9987.6583.429.4165.851.161.1737.5075.20
??345M??15.6055.4892.3587.122.7647.331.011.0626.3755.72
??762M??10.8760.1293.4588.019.9340.310.971.0222.0544.575
??1542M??8.6363.2493.3089.0518.3435.760.930.9817.4842.16

??表 3. 在許多數據集上的零樣本結果。?? 這些結果均未進行任何訓練或微調。PTB和WikiText-2結果來自(Gong et al., 2018)。CBT結果來自(Bajgar et al., 2016)。LAMBADA準確率結果來自(Hoang et al., 2018),LAMBADA困惑度結果來自(Grave et al., 2016)。其他結果來自(Dai et al., 2019)。

3.2. Children's Book Test(兒童圖書測試)

圖2. 兒童圖書測試(Children's Book Test)上的性能表現,作為模型容量的函數。?? 人類表現數據來自 Bajgar et al. (2016),替代了原始論文中低得多的估值。

兒童圖書測試(CBT)(Hill et al., 2015)是為了檢驗LM在不同類別詞上的表現而創建的:命名實體、名詞、動詞和介詞。該測試不是報告困惑度作為評估指標,而是報告在一個自動構建的完形填空測試(cloze test)上的準確率,其中任務是從10個可能的選項中預測哪個詞是省略詞的正確選擇。遵循原始論文中介紹的LM方法,我們計算每個選項以及根據LM在該選項條件下的句子其余部分的概率,并預測具有最高概率的選項。如圖2所示,隨著模型規模的增大,性能穩步提升,并縮小了與人類在該測試上表現的大部分差距。數據重疊分析顯示,CBT測試集中的一本書,Rudyard Kipling的《The Jungle Book》,存在于WebText中,因此我們報告在驗證集上的結果,該驗證集沒有顯著重疊。GPT-2在常見名詞上達到了新的最先進結果93.3%,在命名實體上達到89.1%。應用了反分詞器以去除CBT中的PTB風格分詞偽影。

3.3. LAMBADA

LAMBADA數據集(Paperno et al., 2016)測試系統對文本中長期依賴關系建模的能力。任務是預測句子的最后一個詞,該句子需要至少50個詞符的上下文才能使人類成功預測。GPT-2將最先進水平從99.8(Grave et al.,2016)提升到8.6困惑度,并將LM在此測試上的準確率從19%(Dehghani et al.,2018)提高到52.66%。對GPT-2錯誤的調查顯示,大多數預測是句子的有效延續,但不是有效的結尾詞。這表明LM沒有利用額外的有用約束,即該詞必須是句子的結尾。添加停用詞過濾器(stop-word filter)作為該約束的近似,進一步將準確率提高到63.24%,將該任務的整體最先進水平提高了4%。先前的最先進水平(Hoang et al., 2018)使用了不同的受限預測設置,其中模型的輸出被限制為僅出現在上下文中的詞。對于GPT-2,這種限制是有害的而非有益的,因為19%的答案不在上下文中。我們使用了該數據集的一個未經預處理的版本。

3.4. Winograd Schema Challenge(Winograd模式挑戰)

圖3. Winograd模式挑戰(Winograd Schema Challenge)上的性能表現,作為模型容量的函數。?

Winograd模式挑戰(Levesque et al., 2012)旨在通過測量系統解決文本中歧義的能力來衡量其執行常識推理的能力。最近Trinh& Le(2018)證明了使用LM在該挑戰上取得的顯著進展,通過以更高的概率預測歧義的解決方案。我們遵循他們的問題公式化方法,并在圖3中使用完整和部分評分技術可視化我們模型的性能。GPT-2將最先進準確率提高了7%,達到70.70%。該數據集非常小,只有273個示例,因此我們建議閱讀Trichelair et al.(2018)以幫助理解此結果。

3.5. Reading Comprehension(閱讀理解)

對話問答數據集(CoQA)(Reddy et al., 2018)包含來自7個不同領域的文檔,與提問者和回答者關于文檔的自然語言對話配對。CoQA測試閱讀理解能力以及模型回答依賴于對話歷史的問題(例如“Why?”)的能力。

當以文檔、相關對話歷史以及最終詞符“A:”為條件時,GPT-2的貪婪解碼在開發集上達到55 F1分。這匹配或超過了4個基線系統中的3個,而不使用這些基線訓練所需的超過127,000個人工收集的問題-答案對。監督的最先進水平,一個基于BERT的系統(Devlin et al., 2018),接近人類89 F1的性能。雖然GPT-2在沒有任何監督訓練的情況下的性能令人興奮,但對其答案和錯誤的一些檢查表明,GPT-2經常使用簡單的基于檢索的啟發式方法,例如在回答“who”問題時使用文檔中的一個名字。

3.6. Summarization(總結)

我們在CNN和Daily Mail數據集(Nallapati et al., 2016)上測試了GPT-2執行摘要生成的能力。為了誘導摘要行為,我們在文章后添加文本“TL;DR:”,并使用?k=2?的Top-k隨機采樣(Fan et al., 2018)生成100個詞符,這減少了重復并鼓勵比貪婪解碼更具抽象性的摘要。我們使用這100個詞符中的前3個生成句子作為摘要。雖然定性地看,生成結果類似于摘要,如表14所示(注:原文表14未提供,此處指代模型生成示例),但它們通常關注文章中最近的內容,或者混淆了具體細節,例如在一次車禍中涉及了多少輛汽車,或者標志是在帽子還是襯衫上。在通常報告的ROUGE 1,2,L指標上,生成的摘要僅開始接近經典神經基線的性能,并且僅略優于從文章中隨機選擇3個句子。當移除任務提示時,GPT-2的性能在聚合指標上下降了6.4分,這證明了用自然語言在語言模型中調用任務特定行為的能力。

R-1R-2R-LR-AVG
??Bottom-Up Sum??41.2218.6838.3432.75
??Lede-3??40.3817.6636.6231.55
??Seq2Seq+Attn??31.3311.8128.8323.99
??GPT-2 TL;DR:??29.348.2726.5821.40
??Random-3??28.788.6325.5220.98
??GPT-2 no hint??21.584.0319.4715.03

??表 4. 在CNN和Daily Mail數據集上以ROUGE F1指標衡量的摘要性能。?? Bottom-Up Sum是來自(Gehrmann et al., 2018)的最先進模型。

3.7. Translation(翻譯)

我們測試GPT-2是否已經開始學習如何將一種語言翻譯成另一種語言。為了幫助它推斷這是期望的任務,我們將語言模型以“english sentence = french sentence”格式的示例對上下文為條件,然后在最后的提示“english sentence =”之后,我們使用貪婪解碼從模型中采樣,并使用第一個生成的句子作為翻譯。在WMT-14英法測試集上,GPT-2得到5 BLEU分,這略差于使用先前無監督詞翻譯工作中推斷的雙語詞典進行的逐詞替換(Conneau et al.,2017b)。在WMT-14法英測試集上,GPT-2能夠利用其非常強大的英語語言模型表現明顯更好,達到11.5 BLEU分。這優于(Artetxe et al., 2017)和(Lample et al.,2017)中的幾個無監督機器翻譯基線,但仍然遠差于當前最佳無監督機器翻譯方法(Artetxe et al., 2019)的33.5 BLEU分。此任務的性能令我們驚訝,因為我們有意將非英語網頁從WebText中移除作為過濾步驟。為了確認這一點,我們在WebText上運行了一個字節級語言檢測器,僅檢測到10MB的法語數據,這大約是先前無監督機器翻譯研究中常見的單語法語語料庫的500倍小。

3.8. Question Answering(問題回答)

測試語言模型內部包含哪些信息的一個潛在方法是評估它生成事實型問題正確答案的頻率。之前在諸如A Neural Conversational Model(Vinyals& Le, 2015)等所有信息存儲在參數中的神經系統中展示這種行為時,由于缺乏高質量評估數據集而報告了定性結果。最近引入的Natural Questions數據集(Kwiatkowski et al., 2019)是更定量地測試這一點的一個有希望的資源。與翻譯類似,語言模型的上下文以示例問題-答案對為種子,這有助于模型推斷數據集的簡短答案風格。當使用在SQUAD等閱讀理解數據集上常用的精確匹配指標評估時,GPT-2正確回答了4.1%的問題。作為一個比較點,最小的模型沒有超過一個極其簡單的基線的1.0%準確率,該基線為每個問題類型(who, what, where等)返回最常見的答案。GPT-2正確回答的問題數量是其5.3倍,這表明模型容量迄今為止是神經系統在此類任務上表現不佳的主要因素。GPT-2分配給其生成答案的概率校準良好,在最自信的1%問題上,GPT-2的準確率為63.1%。表5顯示了GPT-2在開發集問題上最自信的30個答案。GPT-2的性能仍然遠低于將信息檢索與抽取式文檔問答相結合的開放領域問答系統所達到的30%到50%的范圍(Alberti et al., 2019)。

QuestionGenerated AnswerCorrectProbability
Who wrote the book the origin of species?Charles Darwin83.4%
Who is the founder of the ubuntu project?Mark Shuttleworth82.0%
Who is the quarterback for the green bay packers?Aaron Rodgers81.1%
Panda is a national animal of which country?China76.8%
Who came up with the theory of relativity?Albert Einstein76.4%
When was the first star wars film released?197771.4%
What is the most common blood type in sweden?A70.6%
Who is regarded as the founder of psychoanalysis?Sigmund Freud69.3%
Who took the first steps on the moon in 1969?Neil Armstrong66.8%
Who is the largest supermarket chain in the uk?Tesco65.3%
What is the meaning of shalom in english?peace64.0%
Who was the author of the art of war?Sun Tzu59.6%
Largest state in the us by land mass?California59.2%
Green algae is an example of which type of reproduction?parthenogenesis56.5%
Vikram samvat calender is official in which country?India55.6%
Who is mostly responsible for writing the declaration of independence?Thomas Jefferson53.3%
What us state forms the western boundary of montana?Montana52.3%
Who plays ser davos in game of thrones?Peter DinklageX52.1%
Who appoints the chair of the federal reserve system?Janet YellenX51.5%
State the process that divides one nucleus into two genetically identical nuclei?mitosis50.7%
Who won the most mvp awards in the nba?Michael Jordanx50.2%
What river is associated with the city of rome?the Tiber48.6%
Who is the first president to be impeached?Andrew Johnson48.3%
Who is the head of the department of homeland security 2017?John Kelly47.0%
What is the name given to the common currency to the european union?Euro46.8%
What was the emperor name in star wars?Palpatine46.5%
Do you have to have a gun permit to shoot at a range?No46.4%
Who proposed evolution in 1859 as the basis of biological development?Charles Darwin45.7%
Nuclear power plant that blew up in russia?Chernobyl45.7%
Who played john connor in the original terminator?Arnold Schwarzenegger45.2%

??表 5. GPT-2在Natural Questions開發集上生成的最自信的30個答案,按其由GPT-2分配的概率排序。?? 根據第4章節描述的程序,這些問題均未出現在WebText中。

4. Generalization vs Memorization(泛化與記憶

計算機視覺的最新研究表明,常見的圖像數據集包含相當數量的近似重復圖像。例如,CIFAR-10在訓練圖像和測試圖像之間有3.3%的重疊(Barz& Denzler, 2019)。這導致機器學習系統的泛化性能被過度報告。隨著數據集規模的增加,發生類似現象的可能性也隨之增加,這表明在WebText上可能也發生著類似的情況。因此,分析有多少測試數據也出現在訓練數據中是很重要的。

為了研究這一點,我們創建了包含WebText訓練集詞符的8-gram(n元組)的布隆過濾器(Bloom filters)。為了提高召回率,字符串被歸一化為僅包含小寫字母數字單詞,并以單個空格作為分隔符。布隆過濾器的構造使得誤報率(false positive rate)的上限為?1081?。我們通過生成100萬個字符串進一步驗證了較低的誤報率,其中零個被過濾器找到。

這些布隆過濾器使我們能夠計算,給定一個數據集,該數據集中也存在于WebText訓練集中的8-gram的百分比。表6顯示了針對常見LM基準測試集的重疊分析。常見LM數據集的測試集與WebText訓練集有1-6%的重疊,平均重疊率為3.2%。有些令人驚訝的是,許多數據集與其自身的訓練分割有更大的重疊,平均重疊率為5.9%。

我們的方法優化了召回率(recall),雖然對重疊的手動檢查顯示了許多常見短語,但也有許多較長的匹配是由于重復數據造成的。這并非WebText獨有。例如,我們發現WikiText-103的測試集中有一篇文章也在訓練數據集中。由于測試集中只有60篇文章,因此至少有1.6%的重疊。可能更令人擔憂的是,根據我們的程序,1BW與其自身的訓練集有近13.2%的重疊。

對于Winograd模式挑戰,我們只發現10個模式與WebText訓練集有任何8-gram重疊。其中,2個是虛假匹配。在剩余的8個中,只有一個模式出現在任何會泄露答案的上下文中。

對于CoQA,新聞領域約15%的文檔已在WebText中,模型在這些文檔上的表現大約好3 F1分。CoQA的開發集指標報告了五個不同領域的平均性能,我們測量到由于不同領域的重疊導致的性能提升約為0.5-1.0 F1。然而,由于CoQA是在WebText鏈接截止日期之后發布的,WebText中并未包含實際的訓練問題或答案。

在LAMBADA上,平均重疊率為1.2%。對于重疊率大于15%的示例,GPT-2的表現大約好2個困惑度。當排除所有有任何重疊的示例重新計算指標時,結果從8.6困惑度變為8.7困惑度,準確率從63.2%降至62.9%。這種整體結果的微小變化很可能是由于只有1/200的示例具有顯著重疊。

總體而言,我們的分析表明,WebText訓練數據與特定評估數據集之間的數據重疊為報告的結果提供了雖小但一致的益處。然而,對于大多數數據集,我們注意到的重疊并不比標準訓練集和測試集之間已經存在的重疊顯著更大,如表6所強調的那樣。

理解并量化高度相似的文本如何影響性能是一個重要的研究問題。更好的去重技術,如可擴展的模糊匹配(fuzzy matching),也可能有助于更好地回答這些問題。目前,我們建議在創建新的NLP數據集的訓練和測試分割時,使用基于n-gram重疊的去重作為一個重要的驗證步驟和健全性檢查(sanity check)。

確定WebText LM的性能是否歸因于記憶(memorization)的另一種潛在方法是檢查它們在自己保留集(held-out set)上的表現。如圖4所示,在WebText的訓練集和測試集上的表現是相似的,并且隨著模型規模的增大而共同提升。這表明即使是GPT-2在許多方面仍然對WebText欠擬合。

GPT-2還能夠撰寫關于發現會說話的獨角獸的新聞文章。表13提供了一個示例。

PTBWikiText-2enwik8text8Wikitext-1031BW
??Dataset train??2.67%0.66%7.50%2.34%9.09%13.19%
??WebText train??0.88%1.63%6.31%3.94%2.42%3.75%

??表 6. 測試集8-gram與訓練集重疊的百分比。

圖4. 在WebText上訓練的語言模型(LMs)的性能表現,作為模型規模的函數。

5. Related Work(相關工作)

這項工作的很大一部分測量了在更大數據集上訓練的更大語言模型的性能。這與Jozefowicz et al.(2016)的工作類似,后者在10億詞基準測試(1 Billion Word Benchmark)上擴展了基于RNN的語言模型。Bajgar et al.(2016)也通過從古騰堡計劃(Project Gutenberg)創建更大的訓練數據集來補充標準訓練數據集,從而提高了兒童圖書測試(Children's Book Test)的結果。Hestness et al.(2017)對隨著模型容量和數據集規模的變化,各種深度學習模型的性能如何變化進行了徹底分析。我們的實驗雖然在任務間噪音更大,但表明類似的趨勢也適用于目標的子任務,并延續到10億+(1B+)參數的領域。

生成模型中引人入勝的學習功能此前已有記錄,例如RNN語言模型中的細胞執行行寬跟蹤和引號/評論檢測 Karpathy et al.(2015)。對我們的工作更具啟發意義的是Liu et al.(2018)的觀察,即訓練用于生成維基百科文章的模型也學會了在不同語言之間翻譯名字。

先前的工作探索了過濾和構建大型網頁文本語料庫的替代方法,例如iWeb語料庫(Davies, 2018)。

在語言任務的預訓練方法方面已有廣泛研究。除了引言中提到的那些,GloVe(Pennington et al., 2014)將詞向量表示學習擴展到整個Common Crawl。文本深度表示學習的一項有影響力的早期工作是Skip-thought向量(Kiros et al., 2015)。McCann et al.(2017)探索了從機器翻譯模型衍生的表示的使用,Howard& Ruder(2018)改進了(Dai& Le, 2015)的基于RNN的微調方法。(Conneau et al., 2017a)研究了自然語言推理模型學習的表示的遷移性能,(Subramanian et al., 2018)探索了大規模多任務訓練。

(Ramachandran et al.,2016)證明了seq2seq模型受益于使用預訓練的語言模型作為編碼器和解碼器進行初始化。最近的工作表明,當為困難的生成任務(如閑聊對話和基于對話的問答系統)進行微調時,LM預訓練也是有幫助的(Wolf et al.,2019)(Dinan et al.,2018)。

6. Discussion(討論)

大量研究致力于學習(Hill et al.2016)、理解(Levy& Goldberg, 2014)和批判性評估(Wieting& Kiela, 2019)監督和無監督預訓練方法的表示。我們的結果表明,??無監督任務學習??是另一個值得探索的有前景的研究領域。這些發現可能有助于解釋預訓練技術在下游NLP任務中廣泛成功的原因,因為我們證明了,在極限情況下,其中一種預訓練技術開始??直接學習執行任務??,而無需監督適應或修改。

在閱讀理解方面,GPT-2在零樣本設置下的性能與監督基線具有競爭力。然而,在其他任務上,例如摘要生成,雖然它在定性上執行了任務,但根據定量指標,其性能仍處于初級階段。雖然作為研究成果具有啟發性,但在實際應用方面,GPT-2的零樣本性能??距離可用仍有很大差距??。

我們研究了WebText LM在多個經典NLP任務上的零樣本性能,但還有許多其他任務可以評估。毫無疑問,在許多實際任務中,GPT-2的性能仍然不比隨機好。即使在我們評估的常見任務上,例如問答和翻譯,語言模型只有在擁有足夠容量時才開始優于簡單基線。

雖然零樣本性能為GPT-2在許多任務上的潛在性能建立了基線,但通過微調所能達到的上限尚不清楚。在某些任務上,GPT-2完全抽象的??輸出方式??與目前在許多問答和閱讀理解數據集上最先進的基于抽取式指針網絡(Vinyals et al.,2015)的輸出有顯著不同。鑒于之前GPT微調的成功,我們計劃在諸如decaNLP和GLUE等基準上進行微調研究,特別是因為尚不清楚GPT-2的額外訓練數據和容量是否足以克服BERT(Devlin et al., 2018)所證明的單向表示的低效性。

7. Conclusion(結論)

當在足夠大且多樣化的數據集上訓練大型語言模型時,它能夠在許多領域和數據集上表現良好。GPT-2在零樣本設置下遷移到8個測試語言建模數據集中的7個上達到了最先進的性能。模型能夠在零樣本設置下執行的??多樣化任務??表明,訓練用于最大化足夠多樣化文本語料庫似然的高容量模型,開始學習如何在無需顯式監督的情況下執行數量驚人的任務。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/913045.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/913045.shtml
英文地址,請注明出處:http://en.pswp.cn/news/913045.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

R 語言安裝使用教程

一、R 語言簡介 R 是一種用于統計分析、數據挖掘和可視化的編程語言和環境。它在學術界和數據分析領域中廣泛使用&#xff0c;擁有豐富的統計函數庫和繪圖功能。 二、安裝 R 語言 2.1 下載 R 安裝包 前往 CRAN 官網下載適合你操作系統的安裝程序&#xff1a; 官網地址&…

智能Agent場景實戰指南 Day 1:智能Agent概述與架構設計

【智能Agent場景實戰指南 Day 1】智能Agent概述與架構設計 引言 歡迎來到"智能Agent場景實戰指南"系列的第一天&#xff01;今天我們將深入探討智能Agent的基本概念和架構設計。在這個大模型時代&#xff0c;智能Agent已成為連接AI技術與實際業務場景的關鍵橋梁&am…

Plan-Grounded Large Language Models forDual Goal Conversational Settings

Plan-Grounded Large Language Models for Dual Goal Conversational Settings - ACL Anthologyhttps://aclanthology.org/2024.eacl-long.77/ 1. 概述 引導用戶完成諸如烹飪或 DIY 之類的手動任務(Choi 等,2022),對于當前的大型語言模型(LLMs)來說是一個新穎且具有挑戰…

python打卡day57@浙大疏錦行

知識點回顧 序列數據的處理&#xff1a; 處理非平穩性&#xff1a;n階差分處理季節性&#xff1a;季節性差分自回歸性無需處理 模型的選擇 AR(p) 自回歸模型&#xff1a;當前值受到過去p個值的影響MA(q) 移動平均模型&#xff1a;當前值收到短期沖擊的影響&#xff0c;且沖擊影…

YOLOv11性能評估全解析:從理論到實戰的指標指南

深入剖析目標檢測核心指標,掌握模型優化的關鍵密碼 為什么需要性能評估指標? 在目標檢測領域,YOLO系列模型以其卓越的速度-精度平衡成為行業標桿。當我們訓練或使用YOLOv11模型時,一個核心問題始終存在:如何量化模型的性能? 性能評估指標正是回答這個問題的關鍵工具,它…

【Linux內核及內核編程】Linux2.6 后的內核特點

2003 年發布的 Linux 2.6 內核是一個里程碑&#xff0c;它標志著 Linux 從 “極客玩具” 向全場景操作系統的蛻變。如果說 2.4 內核是 Linux 進入企業級市場的起點&#xff0c;那么 2.6 及后續版本則是一場從內到外的 “現代化革命”&#xff0c;不僅讓 Linux 在服務器、桌面、…

GO 語言學習 之 結構體

在 Go 語言中&#xff0c;結構體&#xff08;struct&#xff09;是一種用戶自定義的數據類型&#xff0c;它可以包含多種不同類型的數據組合在一起。結構體為組織和管理相關數據提供了一種有效的方式&#xff0c;常用于表示現實世界中的對象或概念。如果你懂C/C&#xff0c;那么…

ubuntu 啟動SSH 服務

在Ubuntu系統中&#xff0c;啟動SSH服務需要確保SSH服務已經安裝&#xff0c;并且正確配置。以下是詳細步驟&#xff1a; 一、檢查SSH服務是否已安裝 檢查SSH服務是否安裝 打開終端&#xff08;Terminal&#xff09;。 輸入以下命令來檢查SSH服務是否已安裝&#xff1a; bash…

【3.4 漫畫分布式共識算法】

3.4 漫畫分布式共識算法 ?? 人物介紹 小明:對分布式共識算法好奇的開發者架構師老王:分布式系統專家,精通各種共識算法?? 共識算法概述 小明:“老王,分布式系統中為什么需要共識算法?” 架構師老王:“想象一下,你有多個服務器需要就某個決定達成一致,比如選出一…

程序計數器(PC)是什么?

程序計數器&#xff08;PC&#xff09;是什么&#xff1f; 程序計數器&#xff08;PC&#xff09;詳解 程序計數器&#xff08;Program Counter, PC&#xff09; 是CPU中的一個關鍵寄存器&#xff0c;用于存儲下一條待執行指令的內存地址。它控制程序的執行流程&#xff0c;是…

影樓精修-智能修圖Agent

今天給大家介紹一篇令人驚喜的論文《JarvisArt: Liberating Human Artistic Creativity via an Intelligent Photo Retouching Agent》 論文地址&#xff1a;https://arxiv.org/pdf/2506.17612 Code&#xff08;暫無代碼&#xff09;&#xff1a;https://github.com/LYL1015/…

帕金森與健康人相關數據和處理方法(一些文獻的記錄)

主要的帕金森腦電數據進行一些分類分析的文章。 帕金森病 2004 年至 2023 年腦電圖研究的文獻計量分析對于研究的分析以及關鍵研究和趨勢從腦電圖信號中檢測帕金森病&#xff0c;采用離散小波變換、不同熵度量和機器學習技術使用機器學習和深度學習方法分析不同模態的數據以診…

優象光流模塊,基于python的數據讀取demo

優象光流模塊&#xff0c;型號UP-FLOW-LC-302-3C&#xff0c;準備將其應用于設備的運行速度測量&#xff0c;物美價廉。 廠家提供的數據格式表&#xff1a; 實測用python的serial包readline()函數讀取到的幀數據&#xff1a; 與官方的給定略有出入&#xff0c;不過主要字節的順…

模型部署與推理--利用libtorch模型部署與推理

文章目錄 1從pytorch導出pt文件2下載并配置libtorch3推理4結果&#xff1a;時間對比&#xff1a;推理結果&#xff1a; 參考 以deeplabv3plus為例講解怎么利用libtorch部署在c上模型。關于libtorch和pt文件請參考我之前的博客。 1從pytorch導出pt文件 if __name__ __main__: …

芯得EP.21丨基于極海APM32F4的TencentOS Tiny實時操作系統移植詳解

《APM32芯得》系列內容為用戶使用APM32系列產品的經驗總結&#xff0c;均轉載自21ic論壇極海半導體專區&#xff0c;全文未作任何修改&#xff0c;未經原文作者授權禁止轉載。 如遇技術問題&#xff0c;可前往 極海半導體開發者論壇 1 前言 最近在了解TencentOS的特性&#xf…

【Docker基礎】Docker數據持久化與卷(Volume)介紹

目錄 1 Docker數據持久化概述 1.1 為什么需要數據持久化 1.2 Docker數據管理方式對比 2 Docker卷(Volume)核心概念 2.1 數據卷基本特性 2.2 卷類型詳解 2.2.1 命名卷(Named Volumes) 2.2.2 匿名卷(Anonymous Volumes) 2.2.3 主機綁定卷(Host Volumes) 3 數據卷操作全…

yolo8,10,11之處理不平衡類別問題

一、前言 使用 yolo11進行目標檢測時&#xff0c;發現訓練數據集存在類別數量不平衡的情況&#xff0c;查閱了一下資料&#xff0c;可采取以下方法。 二、樣本增強 少數類的框是獨立存在于圖片中&#xff0c;則可通過顏色、亮度、幾何變換等方法人為增加少數類的樣本數&#x…

基于 51 單片機做的二十四點小游戲

用 51 單片機做的二十四點小游戲 一、任務要求 設計一個模擬紙牌 24 點玩法的單片機模擬器&#xff0c;由單片機隨機發出四個牌點&#xff0c;測試者在實驗板按鍵上輸入計算過程&#xff0c;單片機判斷計算結果是否正確&#xff0c;并評定測試者的成績。 【基本要求】&#…

Hadoop WordCount 程序實現與執行指南

Hadoop WordCount 程序實現與執行指南 下面是使用Python實現的Hadoop WordCount程序,包含完整的Mapper和Reducer部分。 這個程序可以在PyCharm中本地測試,也可以部署到遠程Hadoop集群上運行。 mapper.py import sys# 從標準輸入讀取數據 for line in sys.stdin:# 移除行首…

數據可視化:5 分鐘讀懂其核心價值與技術實踐

為什么數據可視化成為企業數字化轉型的“必修課”&#xff1f;在信息爆炸的時代&#xff0c;企業每天產生海量數據&#xff0c;從客戶行為到銷售業績&#xff0c;從供應鏈運作到市場趨勢。如何從這些原始數據中快速提煉有價值的信息&#xff1f;如何將復雜數據轉化為直觀易懂的…