雖然像ChatGPT這樣的大型語言模型(LLMs)在自然語言處理(NLP)任務中表現出令人印象深刻的能力,但對其在這一領域潛力的系統性研究仍然較少。本研究旨在填補這一空白,探索以下問題:(1)LLMs目前在文獻中如何應用于NLP任務?(2)傳統的NLP任務是否已經被LLMs解決?(3)LLMs在NLP中的未來是什么?為了解答這些問題,我們首先提供了一個關于LLMs在NLP中全面概述的第一步。具體來說,我們首先介紹了一個統一的分類,包括(1)參數凍結應用和(2)參數微調應用,以提供一個統一的視角來理解LLMs在NLP中的當前進展。此外,我們總結了新的前沿領域及相關挑戰,旨在激發進一步的突破性進展。我們希望這項工作能為LLMs在NLP中的潛力和局限性提供寶貴的見解,同時也作為構建有效的LLMs在NLP中的實用指南。
近年來,大型語言模型(LLMs)通過擴大語言模型的規模,代表了人工智能領域的重大突破(Zhao et al., 2023a; Kaddour et al., 2023; Yang et al.; Hadi et al., 2023; Zhuang et al., 2023)。目前關于LLMs的研究,如GPT系列(Brown et al., 2020; Ouyang et al., 2022)、PaLM系列(Chowdhery et al., 2022)、OPT(Zhang et al., 2022a)和LLaMA(Touvron et al., 2023),顯示了令人印象深刻的零樣本性能。此外,LLMs還帶來了一些新興能力,包括指令遵循(Wei et al., 2022a)、鏈式思維推理(Wei et al., 2022c)和上下文學習(Min et al., 2022),這些能力引起了越來越多的關注(Wei et al., 2022b)。
為了回答上述問題,我們首次嘗試對LLMs在NLP中的應用進行全面而詳細的分析。本工作的總體目標是探索LLMs在NLP中的當前發展。為此,在本文中,我們首先介紹相關背景和預備知識。此外,我們引入了LLMs在NLP中的統一范式:(1)參數凍結應用,包括(i)零樣本學習和(ii)小樣本學習;(2)參數微調應用,包括(i)全參數微調和(ii)參數高效微調,旨在提供一個統一的視角來理解LLMs在NLP中的當前進展:
我們首先描述了一些典型的自然語言處理理解任務,包括語義分析(§3.1)、信息抽取(§3.2)、對話理解(§3.3)和表格理解(§3.4)。
自動程序修復(APR)試圖修補軟件缺陷并減少手動調試的工作。最近,隨著大型語言模型(LLMs)的進步,提出了越來越多的APR技術,顯著地促進了軟件開發和維護,并展示了卓越的性能。然而,由于基于LLM的APR領域的持續探索,研究人員很難理解當前的成就、挑戰以及潛在的機會。本項工作提供了第一個系統的文獻綜述,總結了2020年至2024年間LLMs在APR中的應用。我們分析了127篇關于LLMs、APR及其整合視角的相關論文。首先,我們分類了現有的流行LLMs,這些模型被應用于支持APR,并概述了三種部署策略。此外,我們詳細描述了一些從LLMs受益的特定修復場景,例如,語義錯誤和安全漏洞。進一步地,我們討論了幾個將LLMs整合到APR研究中的關鍵方面,例如,輸入形式和開放科學。最后,我們強調了仍需研究的一系列挑戰和未來研究的潛在指南。總體而言,我們的論文為APR社區提供了一個系統的研究概覽,幫助研究者全面理解成就并推動未來的研究。我們的工具在GitHub倉庫公開可用://github.com/iSEngLab/AwesomeLLM4APR。
軟件缺陷被公認為不可避免且具有破壞性,為全球用戶帶來安全問題,并每年造成數十億美元的經濟損失【11, 156】。對開發者而言,手動修復檢測到的軟件缺陷既非小事也耗時【13】。自動程序修復(APR)在軟件開發和維護中扮演著至關重要的角色,旨在無需人工干預下修復軟件缺陷。自2009年基礎工作GenProg【80, 155】以來,過去幾十年中APR已被廣泛研究【43, 105】,研究者們提出了多種APR技術,包括基于啟發式的【64, 80, 98, 177】、基于約束的【31, 99, 169, 171】以及基于模式的【76, 91, 92】。最近,受到深度學習(DL)進步的啟發,越來越多基于學習的APR技術被提出,這些技術利用神經網絡模型自動學習修復缺陷的模式【18, 66, 84, 85, 96, 142, 174, 175, 199, 200】。得益于DL模型從大量代碼庫中學習隱藏修復模式的強大能力,基于學習的APR在過去幾年中取得了顯著的表現【182】,吸引了學術界和工業界的廣泛關注【69, 70, 73】。 最近,大型語言模型(LLMs)已成功應用于廣泛的源代碼相關任務【147, 184】,如代碼生成【82, 148, 150, 201】、代碼總結【132, 133, 146】和測試生成【4, 24, 57, 108, 128】。得益于龐大的模型參數和廣闊的訓練數據,LLMs展示了令人印象深刻的性能,并從根本上改變了軟件工程(SE)社區的研究范式。在APR領域,從先驅研究開始,例如TFix【7】、CIRCLE【176】和AlphaRepair【163】,社區已經見證了利用LLMs的修復研究的爆炸性增長,已經取得了相當的優勢,并進一步顯示了未來研究的重大潛力。然而,LLMs在APR中的整合是一個相當復雜的任務,使得有興趣的研究者難以理解現有工作。例如,現有基于LLM的APR研究涵蓋了不同的研究視角(例如,經驗性【162】、技術性【163】和基準研究【187】)、修復階段(例如,補丁生成【186】和正確性評估【183】)、修復場景(例如,靜態警告【69】和語法錯誤【70】)、模型架構(例如,僅編碼器【185】和僅解碼器【100】)以及模型使用范式(例如,微調【176】、少量樣本【108】和零樣本【186】)。盡管該領域的探索仍在進行中,目前的文獻中缺乏關于LLMs在APR中應用的詳盡和系統的綜述,這使得研究人員難以理解現有工作的多樣化設計選擇和進行后續研究。 本文。為了彌補這一差距,我們的工作提供了第一個系統的文獻綜述,關于迅速出現的基于LLM的APR研究的部署。基于此,社區可以全面了解現有基于LLM的APR技術的優勢、劣勢和空白。我們討論了在最先進的APR研究中廣泛采用的LLMs是哪些,以及它們如何被整合到修復工作流中。我們收集了127篇相關論文,并從LLMs、APR和整合視角進行了系統分析。通過我們的分析,我們揭示了當前的挑戰,并指出了基于LLM的APR研究可能的未來方向。總體來說,這項工作為LLM基于APR社區正在進行的進展提供了一個徹底的概覽,幫助研究者在這個迅速發展的領域中導航,并推動創新實踐。 貢獻。總結來說,本工作做出了以下貢獻: * 調查方法論。我們進行了第一個系統的文獻綜述,涵蓋了127篇高質量的APR論文,這些論文利用近期的LLMs應對2020年至2024年4月的修復挑戰。 * 趨勢分析。我們就發布趨勢、出版地點分布和貢獻類型對選定的APR研究進行了詳細分析。 * LLMs視角。我們總結了46種用于支持程序修復的LLMs,并提供了APR領域不同LLM類別的典型使用和趨勢的概述。 * APR視角。我們描述了LLMs應用的常見修復場景,涵蓋了18種錯誤類型,如安全漏洞和編程問題。 * 整合視角。我們討論了一些關鍵因素,包括數據集、輸入表現形式和開放科學,這些因素影響LLMs整合到APR中的性能。 * 挑戰與機遇。我們總結了在APR領域應用LLMs的一些關鍵挑戰,并指出了未來基于LLM的APR研究的一些潛在指南。
論文組織。第2節介紹了關于APR和LLMs的一些基本概念。然后,根據上述貢獻,第3節列出了我們的研究問題(RQs)和收集與我們工作相關論文的研究方法。第4節調查了基于LLM的APR研究的趨勢和分布。第5節總結了現有APR研究所使用的LLMs。第6節闡述了LLMs應用的主要修復場景,并對每項工作進行了簡要描述。第7節討論了LLMs與APR整合過程中的一些關鍵因素,包括數據集、輸入表現形式、補丁正確性和開放科學。第8節討論了一些挑戰和實用指南。第9節得出結論。 我們試圖通過總結相關研究并進一步提供后續研究的指南,提供近期LLMs在APR應用的全面概覽。為了實現這一點,這個系統的文獻綜述回答了以下研究問題(RQs): * RQ1:利用LLMs的APR研究的趨勢是什么?
(1) LLMs在修復軟件缺陷方面顯示出蓬勃的發展趨勢,從2020年到2024年間共有127篇論文。 (2) 在APR中使用LLMs的會議論文數量顯著超過期刊論文,其中ICSE和TOSEM分別是最受歡迎的會議和期刊場所。 (3) 基于LLM的APR論文發表在不同的研究領域,包括軟件工程(SE)、人工智能(AI)和安全性。 (4) 有18種編程語言已被基于LLM的APR應用,其中Java、Python、C和C++是最常被目標的。 (5) LLMs已被應用于一些代表性較低的編程語言,如Verilog和Rust。 (6) 收集的大多數研究主要集中于引入新技術和進行實證研究,而有兩篇論文執行了用戶研究,以了解從業者對利用各種LLMs解決修復缺陷任務的態度和經驗。 * RQ2:哪些受歡迎的LLMs已被應用于支持APR?
(1) 我們總結了46種不同的LLMs,這些模型已被用于修復缺陷,并且可以根據模型架構分為三類,即僅編碼器、編碼器-解碼器和僅解碼器。 (2) 僅解碼器的LLMs是最常使用的模型架構,其中四種最受歡迎的LLMs均為僅解碼器模型。 (3) ChatGPT、GPT-4、CodeT5和Codex是現有基于LLM的APR研究中最受歡迎的LLMs,分別被使用了37次、25次、23次和21次。 (4) 我們總結了三種典型的利用LLMs中封裝的廣泛知識來處理特定程序修復任務的方法,即微調、少量樣本和零樣本。 * RQ3:哪些修復場景已由LLMs促進?
總體來看,我們觀察到LLMs已在文獻中的廣泛修復場景中得到應用,涉及18種錯誤類型。在一些由傳統APR主導的常見場景中,例如語義錯誤,研究者繼續投入大量努力研究LLMs的應用。此外,由于LLMs從所有可能的互聯網數據中學到的通用知識,基于LLM的APR已擴展到一些以前未探索的罕見場景,如硬件缺陷和Web UI。 * RQ4:哪些關鍵因素有助于LLMs在APR中的整合?
(1) 我們總結了78種不同的數據集,這些數據集被用來基準測試LLMs在修復缺陷中的應用。 (2) 在基于LLM的APR中,Defects4J、QuixBugs、BFP、CVEfixes和Big-Vul是最常使用的。 (3) 我們將所有收集的論文中的輸入形式分類為五組:原始修復輸入、提示輸入、掩碼輸入、對話式輸入和結構感知輸入。 (4) 提示輸入是在應用LLMs進行程序修復時最常用的形式,這表明設計有效的提示對于利用LLMs的自然語言處理能力尤為重要。 (5) 我們總結了一些利用LLMs預測補丁正確性的研究。 (6) 所有收集的論文中有62.99%已經開源了其工具,而在頂級SE出版物中,這一比例增加到了86.84%。
大型語言模型(LLMs)已在自然語言處理(NLP)領域催生了重大進展,然而它們面臨著諸如幻覺錯誤和對特定領域知識需求等挑戰。為了緩解這些問題,最近的方法學已將從外部資源檢索到的信息與LLMs整合,顯著提升了它們在NLP任務中的表現。這篇綜述論文針對缺乏對檢索增強語言模型(RALMs)、包括檢索增強生成(RAG)和檢索增強理解(RAU)的全面概述,提供了它們的范式、演變、分類和應用的深入考察。文章討論了RALMs的基本組件,包括檢索器、語言模型和增強組件,以及它們的互動如何導致多樣化的模型結構和應用。RALMs在從翻譯和對話系統到知識密集型應用的廣泛任務中顯示出其實用性。綜述還包括了幾種評估RALMs的方法,強調在評估中穩健性、準確性和相關性的重要性。同時也指出了RALMs的限制,特別是在檢索質量和計算效率方面,提供了未來研究的方向。總之,這篇綜述旨在提供對RALMs的結構化洞見、其潛力以及NLP未來發展的途徑。論文還附帶了一個包含已調研工作和進一步研究資源的Github倉庫://github.com/2471023025/RALM_Survey。
自然語言處理(NLP)是計算機科學和人工智能領域內的一個重要研究方向,致力于研究使人與計算機之間能夠使用自然語言有效溝通的理論和方法學框架。作為一個多學科領域,NLP整合了語言學、計算機科學和數學,旨在實現人類語言與計算機數據之間的相互轉換。其最終目標是賦予計算機處理和“理解”自然語言的能力,從而便于執行自動翻譯、文本分類和情感分析等任務。NLP的復雜性體現在它包括的眾多步驟上,如詞匯分割、詞性標注、解析、詞干提取、命名實體識別等,這些都增加了在人工智能系統中復制人類語言理解的難度。
傳統的自然語言處理任務通常使用基于統計的算法(Hogenboom et al., 2010)(Serra et al., 2013)(Aussenac-Gilles and S?rgel, 2005)和深度學習算法,如卷積神經網絡(CNN)(Yin et al., 2017)、遞歸神經網絡(RNN)(Banerjee et al., 2019)、長短時記憶網絡(LSTM)(Yao and Guan, 2018)等。最近,隨著變壓器架構(Vaswani et al., 2017)作為自然語言處理的代表性技術的出現,其受歡迎程度顯著提高。變壓器架構作為一個突出的大語言模型(Lewis et al., 2019)(Raffel et al., 2020)在自然語言處理領域已經持續展示出優越的性能,吸引了越來越多研究者的關注,他們致力于研究其能力。
當前最流行的語言模型是GPT系列(Radford et al., 2019)(Brown et al., 2020)(Achiam et al., 2023)和Bert系列(Liu et al., 2019)(Devlin et al., 2018)(Sanh et al., 2019),這些模型已經在多種自然語言處理任務中表現出色。其中,自編碼語言模型特別擅長于自然語言理解任務,而自回歸語言模型更適合于自然語言生成任務。雖然增加參數(Touvron et al., 2023b)和模型調優(Han et al., 2023)可以提升LLMs的性能,但“幻覺”現象(Ji et al., 2023)仍然存在。此外,語言模型在有效處理知識密集型工作(Feng et al., 2023)和更新其知識的能力不足(Mousavi et al., 2024)方面的限制也一直很明顯。因此,許多研究者(Lewis et al., 2020)(Izacard and Grave, 2020b)(Khandelwal et al., 2019)采用了檢索技術來獲取外部知識,這可以幫助語言模型在多種任務中獲得更好的性能。
當前關于使用檢索增強來提升LLMs性能的綜述還很少。Zhao et al.(2023)提供了關于多模態RAG的全面概述。Zhao et al.(2024a)專注于人工智能生成內容(AIGC)領域的檢索增強生成技術的利用。這篇文章提供了最近RAG工作的全面概述,但它沒有覆蓋所有相關領域。此外,文章缺乏足夠的細節來提供整體發展的全面時間線。Gao et al.(2023)研究了對大模型的RAG的增強。這篇文章總結了一些最近的RAG工作,但它獨立地介紹了檢索器和生成器,這不利于后續工作的組件升級和互動。Li et al.(2022b)專注于文本生成。文章中的圖表較少,內容更抽象,不利于讀者的理解。
關于NLP中的檢索增強方法,僅有關于RAG的綜述只講述了部分故事。不僅與自然語言生成(NLG)相關的任務需要檢索增強技術,自然語言理解(NLU)任務也需要外部信息。迄今為止,全面綜述NLP全譜系中應用增強檢索技術的文章還很少。為了改善當前狀況,本文提出以下貢獻: (1) 本文不僅關注與RAG相關的工作,還重點強調了RALM,并與NLP的概念保持一致。與生成相關的工作與NLG對齊,而其余的工作與NLU對齊。 (2) RALM的兩個組成部分,檢索器和語言模型,都進行了詳細描述,這兩個組件的不同交互模式也首次被準確定義。 (3) 提供了RALM工作計劃的全面概述,總結了當前RALM的常見和新穎應用,并分析了相關限制。提出了這些限制的潛在解決方案,并推薦了未來研究方向。
圖1提供了RALM方法框架的總體概述。以下是本文的摘要:第2節定義RALM。第3節提供了RALM中檢索器的詳細分類和總結。第4節提供了RALM中語言模型的詳細分類和總結。第5節對RALM的特定增強進行了分類和總結。第6節是RALM檢索數據來源的分類和總結。第7節是RALM應用的總結。第8節是RALM評估和基準的總結。最后,第9節討論了現有RALM的限制和未來工作的方向。
RALMs的整合代表了NLP系統能力的重大進步。本綜述提供了對RALMs的廣泛回顧,突出了它們的架構、應用和所面臨的挑戰。通過檢索和整合外部知識,RALMs增強了語言模型,從而在包括翻譯、對話生成和知識圖譜補全等多種NLP任務中提升了性能。
盡管取得了成功,RALMs仍面臨幾個限制。值得注意的是,它們對對抗性輸入的魯棒性、檢索結果的質量、部署相關的計算成本以及應用領域多樣性的缺乏被認為是需要進一步關注的領域。為了解決這些問題,研究社區提出了幾種策略,例如改進評估方法、完善檢索技術和探索在性能與效率之間保持平衡的成本效益解決方案。 未來,RALMs的進步將依賴于增強其魯棒性、提高檢索質量和擴展其應用范圍。通過采用更復雜的技術并將RALMs與其他AI技術整合,這些模型可以被用來應對更廣泛的挑戰。在這一領域持續的研究和開發預計將帶來更具韌性、效率和多功能性的RALMs,從而推動NLP及其它領域所能達到的界限。隨著RALMs的不斷演進,它們有望賦予AI系統更深入的理解力和更接近人類的語言能力,從而在廣泛的領域中開辟新的可能性。
思維鏈(CoT)已經成為一種廣泛采用的提示方法,激發了大型語言模型(LLMs)的印象深刻的推理能力。受CoT的連續思維結構的啟發,已經開發了許多針對CoX(X鏈)的方法,以應對涉及LLMs的不同領域和任務中的各種挑戰。在本文中,我們提供了一個全面的關于LLMs在不同情境下的CoX方法的綜述。具體來說,我們根據節點的分類,即CoX中的X,以及應用任務對它們進行分類。我們還討論了現有CoX方法的發現和含義,以及潛在的未來方向。我們的綜述旨在為尋求將CoT理念應用于更廣泛場景的研究人員提供一個詳細且最新的資源。
大型語言模型(LLMs)在使用思維鏈(CoT)方法提示時表現出強大的推理能力(Wei et al., 2022; Yao et al., 2024; Besta et al., 2024a)。CoT的本質是將復雜問題分解為一系列中間子任務(Chu et al., 2023; Zhou et al., 2023)。通過逐步處理這些子任務,LLMs能夠關注重要的細節和假設,這大大提高了它們在廣泛推理任務中的表現(Huang and Chang, 2023; Chu et al., 2023)。此外,CoT的中間步驟提供了一個更透明的推理過程,便于對LLMs的解釋和評估(Yu et al., 2023b)。隨著CoT的成功,開發了許多X鏈(CoX)方法(Yu et al., 2023a)。這些方法不僅限于推理思維,最近的CoX方法還構建了包含各種組件的鏈,如反饋鏈(Lei et al., 2023; Dhuliawala et al., 2023)、指令鏈(Zhang et al., 2023d; Hayati et al., 2024)、歷史鏈(Luo et al., 2024; Xia et al., 2024d)等。這些方法已被應用于解決涉及LLMs的多樣化任務中的挑戰,包括多模態交互(Xi et al., 2023a; Zhang et al., 2024a)、幻覺減少(Lei et al., 2023; Dhuliawala et al., 2023)、基于LLM的代理規劃(Zhan and Zhang, 2023; Zhang et al., 2024c)等。
盡管這些CoX方法的普及度不斷提高,但它們尚未被集體審查或分類,我們對它們的潛力和細微差別的理解還存在差距。為此,本綜述旨在提供一個結構化概覽,捕捉CoX方法的本質和多樣性,以便進一步探索和創新。雖然幾項綜述已經探討了CoT(Chu et al., 2023; Yu et al., 2023b; Besta et al., 2024b),它們主要關注不同結構的推理思維,例如圖1(a)所示的思維鏈。與此相反,本文關注的是如圖1所示,超越推理思維的多面向組件設計的X鏈,提供CoT概念在更廣泛領域的見解。我們通過CoX中的X的分類和應用這些方法的任務來呈現一個全面的綜述。綜述概覽首先提供思維鏈的背景信息并定義X鏈為其概括(§2)。接下來,我們根據用于構建鏈的組件類型對CoX方法進行分類(§3)。此外,根據這些CoX方法的應用領域,我們按任務對它們進行分類(§4)。然后,我們討論現有CoX方法的見解并探索潛在的未來方向(§5)。綜述的詳細結構在圖2中呈現。
什么是X鏈?
在本節中,我們首先介紹一些關于思維鏈(Chain-of-Thought,CoT)提示的背景信息,然后定義一個廣義的X鏈(Chain-of-X,CoX)概念。
思維鏈(CoT)提示是一種方法論,能顯著增強大型語言模型(LLMs)的推理能力。CoT由Wei等人(2022)引入,涉及以結構化的格式<input, thoughts, output>提示LLMs,其中“thoughts”包括通向最終答案的連貫的中間自然語言推理步驟。CoT在需要復雜推理的任務中效果最為顯著。傳統的少樣本學習方法在這類場景中經常會失敗,因為它們傾向于直接提供答案而不包括必要的中間步驟。Rae等人(2021)強調了這一局限性,指出這些方法隨著模型大小的增加而顯得不足。相比之下,CoT提示通過融入中間推理步驟而表現出色。這些步驟通過邏輯推進引導模型,增強其解決算術、常識和符號推理等復雜問題的能力(Wang等人,2023d;Lyu等人,2023)。CoT的本質在于通過將復雜問題分解為可管理的中間步驟來解決問題(Zhou等人,2023)。Kojima等人(2022)也展示了通過提示“讓我們一步一步思考。”的零樣本CoT的強大性能。明確的推理步驟還為模型的思考過程提供了一個透明的路徑,允許進一步的評估和糾正(Yu等人,2023b)。 受CoT的順序分解特性啟發,最近開發了大量的X鏈(CoX)方法(Yu等人,2023a)。在這里,我們將CoX定義為CoT方法的一種廣義形式,用于超越LLM推理的多樣化任務。我們將CoX中的X稱為鏈結構的“節點”。除了CoT提示中的思考外,CoX中的X可以采取針對特定任務定制的各種形式,包括中間件(§3.1)、增強(§3.2)、反饋(§3.3)甚至模型(§3.4),如圖1所示。我們在圖2中總結了現有CoX方法中的節點類型。CoX的想法是構建一個與問題相關的組件序列,這些組件要么組合貢獻解決方案,要么迭代精煉復雜任務的輸出。同樣,我們為CoX定義了一個結構化格式<input, X1, ..., Xn, output>,其中n是鏈的長度。請注意,這種格式超越了像CoT這樣的提示策略,可以適應多種算法框架或結構,用于涉及LLMs的多樣化任務。例如,驗證鏈(Chain-of-Verification,Dhuliawala等人,2023)是一個幻覺減少框架,使用LLM生成初始響應,構建一系列驗證問題,并根據這些問題修訂其先前的響應。除了減少幻覺外,CoX方法還被應用于多種任務,如圖2所示,包括多模態互動(§4.1)、事實性與安全(§4.2)、多步驟推理(§4.3)、指令跟隨(§4.4)、LLMs作為代理(§4.5)和評估工具(§4.6)。
結論
本綜述探討了基于思維鏈概念構建的X鏈方法。通過根據節點和任務對它們進行分類,我們提供了一個全面的概覽,突出了CoX在增強大型語言模型(LLMs)能力方面的潛力,并為未來研究開辟了新的途徑。通過這項綜述,我們旨在激發對LLMs的X鏈范式進行更深入理解和更有創造性使用的進一步探索。
大型語言模型(LLMs)在靜態、預先收集的通用數據集上的訓練取得的最近成功,已經引發了眾多研究方向和應用。其中一個方向解決了將預訓練的LLMs整合到動態數據分布、任務結構和用戶偏好中的非平凡挑戰。這個問題的主要挑戰在于平衡模型適應性和知識保存。為特定需求量身定制的預訓練LLMs經常在之前的知識領域經歷顯著的性能退化——這一現象被稱為“災難性遺忘”。雖然在持續學習(CL)社區進行了廣泛研究,但在LLMs領域呈現出新的表現形式。在這篇綜述中,我們提供了一個關于大型語言模型在持續學習背景下當前研究進展的全面概覽和詳細討論。除了介紹初步知識外,這篇綜述被分為四個主要部分:我們首先描述了持續學習LLMs的概覽,包括兩個連續性方向:垂直連續性(或垂直持續學習),即從一般到特定能力的持續適應;和水平連續性(或水平持續學習),即跨時間和領域的持續適應(第3節)。在垂直連續性之后,我們總結了在現代CL背景下學習LLMs的三個階段:持續預訓練(CPT)、領域適應性預訓練(DAP)和持續微調(CFT)(第4節)。然后我們提供了LLMs的持續學習評估協議的概覽,以及當前可用的數據來源(第5節)。最后,我們討論了有關LLMs持續學習的引人深思的問題(第6節)。這篇綜述揭示了持續預訓練、適應和微調大型語言模型這一相對未受到足夠研究的領域,表明需要社區更多的關注。需要立即關注的關鍵領域包括開發實用且易于訪問的評估基準,以及專門設計的方法論,以對抗遺忘和在不斷演變的LLM學習范式中啟用知識轉移。在這項綜述中檢查的完整論文列表可在//github.com/Wang-ML-Lab/llm-continual-learning-survey找到。
近期大型語言模型(LLMs)的進步顯示了實現人工普遍智能(AGI)的巨大潛力。研究人員觀察到,隨著參數規模的增加,多步驟推理、小樣本上下文學習和指令跟隨等復雜能力有所提高。LLMs的發展具有重大影響和革命性,促使機器學習從業者重新考慮傳統的計算范式,用于處理一些曾經具有挑戰性的人類水平任務,如問答、機器翻譯和對話系統。然而,LLMs通常在包含通用領域的靜態、預先收集的數據集上進行訓練,導致性能隨時間逐漸降低,并且在不同內容領域之間也會降低。此外,單一的預訓練大模型無法滿足每個用戶的需求,需要進一步的微調。盡管重新收集預訓練數據和根據額外的具體需求重新訓練模型是一種潛在的解決方案,但這種方法在現實世界場景中代價高昂且不切實際。為了有效地適應LLMs到下游任務,同時盡量減少對以前知識領域的性能退化,研究者采用了持續學習的方法,也稱為終身學習或增量學習。持續學習受到人類大腦中觀察到的增量學習模式的啟發,涉及按順序在一系列任務上訓練機器學習模型,期望在所有任務中保持性能。在訓練過程中,模型對以前的數據有限或無法訪問,這在保留過去知識時構成了一個挑戰,因為在當前任務學習時,來自未見過的以前數據的優化約束是不存在的。這一挑戰,被稱為災難性遺忘,自持續學習研究開始以來一直是研究的中心焦點。多年來,研究者探索了各種技術來減輕機器學習模型中的遺忘,這些技術包括基于重放的方法、參數規范化和模型架構擴展。這些技術共同顯著推進了在不同任務、模型架構和學習范式中實現零遺忘的持續學習目標。在順序訓練和適應LLMs的背景下,CL的重要性也正在發生自身的語義轉變。為了更好地突出這一持續的轉變,在這篇綜述中,我們提供了一個關于LLMs在CL背景下當前研究進展的全面概覽和詳細討論。對于持續學習LLMs的總體情況,我們將其分為兩個需要由從業者解決的連續性方向(第3節):
在圖1中,繼垂直連續性之后,我們勾畫了現代CL中LLM學習的三個關鍵階段:持續預訓練(CPT)、領域適應性預訓練(DAP)和持續微調(CFT)(第4節)。在CPT中,現有研究主要調查三種類型的分布式轉變:時間、內容層次和語言層次。每種都呈現出獨特的焦點和挑戰。在DAP中,雖然它主要被視為為下游任務準備LLMs的過程,但頻繁地使用CL評估和技術。然而,這些技術的多樣性明顯不足,考慮到傳統CL社區的成熟度。在CFT中,我們關注的是學習LLMs的新興領域,涵蓋持續指令調整(CIT)、持續模型精煉(CMR)、持續模型對齊(CMA)和持續多模態LLMs(CMLLMs)等主題。接下來,我們呈現了一系列公開可用的評估協議和基準(第5節)。我們總結我們的綜述,討論了LLMs持續學習的最新出現的特性,傳統增量學習類型和LLMs持續學習中的記憶約束的角色變化,以及這個主題的潛在研究方向(第6節)。總結而言,本文提供了一份詳盡的現有持續學習研究LLMs的綜述,顯著區別于相關主題的現有文獻。我們的綜述突出了持續開發LLMs的研究領域,特別是在持續預訓練(CPT)和領域適應性預訓練(DAP)領域的研究。我們強調需要社區更多的關注,迫切需要包括開發實用、易于訪問且廣為認可的評估基準。此外,需要定制方法來解決在新興的大型語言模型學習范式中的遺忘問題。我們希望這篇綜述能提供一個系統而新穎的持續學習視角,在迅速變化的LLMs領域中,幫助持續學習社區為開發更有效、可靠和可持續的LLMs做出貢獻。
組織結構
本文的其余部分安排如下。我們首先在第2節介紹大型語言模型和持續學習的背景和初步知識。然后我們在第3節展示了大型語言模型的現代持續學習概覽。從垂直角度來看,它可以大致分為三個階段的LLMs持續訓練,我們將在第4節逐一介紹每個階段。在4.3節中,將介紹持續微調LLMs的獨特方面,包括持續指令調整(4.3.3節)、持續模型精煉(4.3.4節)、持續模型對齊(4.3.5節)和持續多模態大型語言模型(4.3.6節)。在第5節中,我們提供了公開可用的LLMs持續學習評估協議和基準的全面介紹。最后,在第6節中,我們討論了在大型語言模型時代持續學習的角色,包括大規模持續LLMs的新興能力(6.1節)、三種類型的持續學習(6.2節)、LLMs持續學習中的記憶角色(6.3節)以及未來的研究方向(6.4節)。 持續學習與大型語言模型相遇:概覽****大型語言模型(LLMs)在多個維度上都非常龐大,包括模型參數的大小、預訓練數據集、計算資源、項目團隊和開發周期。LLMs的巨大規模為開發團隊帶來了顯著的挑戰,特別是在快速變化的環境中保持更新。舉例來說,2023年,用戶發布的新推文的平均每日流量超過5億,即使是在這么大量數據的“小”子集上進行訓練也是不可承受的。在考慮到它們對下游應用的連鎖影響時,有效且可靠地適應LLMs變得更為關鍵。下游用戶通常缺乏收集和存儲大規模數據、維護大規模硬件系統以及自行訓練LLMs的專業知識。《可回收調整》是首個明確概述現代LLM生產流水線供應商-消費者結構的先導研究。在供應商側,模型在一系列大規模未標記數據集上持續進行預訓練。每次預訓練模型發布后,消費者需要利用更新、更強大的上游模型以獲得更好的下游性能。為了提高下游消費者微調的效率,他們最初對持續預訓練的LLMs進行了幾項關鍵觀察,聚焦于模式連接性和功能相似性。此外,他們提出在上游預訓練LLM進行重大更新后,復用過時的微調組件。基于《可回收調整》引入的概念框架,我們在本綜述中提出了一個包含各種研究的現代生產流水線的全面框架,涉及持續LLM預訓練、適應和部署,如圖1所示。我們的框架與現有研究的不同之處在于融入了兩個連續性方向:垂直連續性和水平連續性。
結論
在這項工作中,我們提供了一份關于持續LLMs的綜述,從持續學習的角度總結了它們在訓練和部署方面的最新進展。我們根據它們在我們提出的現代分層持續學習LLMs的更廣框架內的位置,對問題和任務進行了分類。雖然這一領域在社區中的興趣廣泛且日益增長,但我們也注意到幾個缺失的基石,包括算法多樣性以及對大模型行為(如知識遺忘、轉移和獲取)的基本理解。通過全面而詳細的方法,我們希望這篇綜述能激勵更多從業者探索持續學習技術,最終有助于構建健壯和自我進化的人工智能系統。
基于Transformer的大型語言模型取得了巨大成功。然而,在推理過程中產生的顯著內存和計算成本,使得在資源受限的設備上部署大型模型變得具有挑戰性。在本文中,我們從算法角度調查了大型語言模型的壓縮和高效推理方法。就分類而言,類似于較小的模型,大型語言模型的壓縮和加速算法仍可以分為量化、剪枝、蒸餾、緊湊架構設計、動態網絡。然而,與較小模型相比,大型語言模型有兩個突出的特點:(1)大多數壓縮算法在壓縮后需要進行微調甚至重新訓練模型。大型模型最顯著的方面是與模型微調或訓練相關的非常高成本。因此,許多針對大型模型的算法,如量化和剪枝,開始探索無需調整的算法。(2)大型模型強調的是通用性和泛化能力,而不是在單一任務上的性能。因此,許多算法,如知識蒸餾,關注于如何在壓縮后保持其通用性和泛化能力。由于這兩個特點在早期的大型模型中并不十分明顯,我們進一步將大型語言模型區分為中等模型和“真正”的大型模型。此外,我們還提供了一些成熟框架的介紹,這些框架可以支持大型模型的高效推理,支持基本的壓縮或加速算法,極大地便利了用戶的模型部署。
大型語言模型(LLMs)已成為人工智能領域中一個重要且受歡迎的話題。與以往的語言模型相比,LLMs(例如ChatGPT、LLaMA、Claude)對未見數據顯示出了更強的泛化能力。此外,它們甚至展現出了較小模型所不具備的能力(即,突現能力),如多步驟推理和指令跟隨能力。這些進展展示了LLMs的巨大潛力。然而,在推理過程中的高昂內存和計算預算也阻礙了LLMs的部署。例如,一個帶有float32權重的10B模型消耗37GB內存,更不用說隨著序列長度增加,推理內存成本會以平方速度進一步增加。為了在資源受限的設備上,甚至是移動設備上部署模型,許多LLMs采用模型壓縮方法,如量化,以減少推理內存和計算成本。深度學習模型的模型壓縮是一個比LLMs出現得早得多的領域。它假設我們已經有了一個預定義的(甚至是預訓練的)模型。模型壓縮致力于減少模型在推理過程中的內存和計算成本,以便模型可以在各種資源受限的設備上運行。從算法上講,常見的模型壓縮方法包括:
許多之前的模型壓縮方法經常需要在壓縮后對模型進行微調。然而,由于微調LLMs的巨大預算,研究人員不得不探索免微調或至少更高效的微調方法。
與處理單一任務(如神經機器翻譯)不同,大型語言模型強調跨各種任務和未見數據的通用性和泛化能力,甚至是突現能力。因此,壓縮后的大型語言模型需要更仔細地驗證其通用性和泛化能力。 面對這些挑戰,提出了許多專門針對LLMs的壓縮方法。在本文中,我們將對這些方法進行全面綜述。為了更好地展示這些方法,我們進一步將參數約為十億或更少的語言模型,如BERT、GPT2,稱為中等模型,盡管它們通常被視為大型語言模型。參數超過十億的模型,如LLaMA、Claude、ChatGPT等,保持大型語言模型的名稱。原因是中等模型受上述兩個挑戰的影響較小,即中等模型相對容易進行微調,展示較少的突現能力。結果,許多針對中等模型的壓縮方法仍與較小模型的方法相似。 以下各節的組織如下:第2節將介紹一些初步知識。然后,我們將在第3、4、5、6、7、8節分別討論剪枝、知識蒸餾、量化、緊湊架構設計和動態網絡。
量化
量化是指將輸入值(在一個大的(通常是連續的)集合中)映射到輸出值(在一個小的(通常是有限的)集合中)的過程(例如,見圖2)。量化是減少內存成本和提高LLMs推理速度的最直接方法,特別是在支持低位數據類型(如INT4)快速操作的硬件上。值得注意的是,量化在神經網絡訓練和推理中都取得了令人印象深刻的成功,而本綜述的焦點僅在推理部分。量化方法相比其他壓縮方法(如剪枝和蒸餾)有幾個優勢。1)高壓縮比:將LLMs中的權重從32位浮點數量化為4位整數,可以將模型大小大幅壓縮至大約1/8,這對于內存受限的過程(如LLMs推理)至關重要。2)低成本:許多量化方法不需要重新訓練整個LLMs,使其對于計算資源有限的研究人員更加可行。3)高靈活性:量化與大多數其他壓縮方法兼容,為進一步提高性能引入了異常的機會。為了幫助讀者更好地理解量化方法,我們首先在3.1小節介紹標準量化方法和一些基本概念。然后,在3.2節,我們將簡要總結LLMs出現之前一些針對中等大小語言模型(如BERT,GPT2等)的最重要工作。3.3節和3.4節涵蓋了專注于LLMs推理的量化方法的最新進展。考慮到重新訓練擁有數十億參數的模型的困難,我們根據技術是否需要重新訓練,將LLMs量化方法分為兩部分。不需要重新訓練的方法(即,訓練后量化,PTQ)在3.3節討論,而需要重新訓練的方法(即,量化感知訓練,QAT)在3.4節討論。最后,在3.5節,我們討論了一些展現未來研究潛力但在前面章節中未覆蓋的高級話題。
剪枝
作為一種常規技術,用于壓縮和加速神經網絡,剪枝通過消除模型中非必需的權重或結構,同時保持網絡性能幾乎等同于它們原始狀態。盡管剪枝在卷積神經網絡(CNNs)中顯示出顯著結果,但與量化和蒸餾等其他壓縮技術相比,其對于LLMs的有效性較不穩健。剪枝效果減弱的原因來自于微調過程。由于模型參數數量龐大,微調的高成本使得實現剪枝的全部效果變得更加困難。然而,剪枝是壓縮模型的關鍵技術,需要進一步探索以增強和完善其在LLMs中取得改進結果的有效性。在接下來的部分,我們將在4.1節提供剪枝方法和基本概念的概覽。隨后,在4.2節,我們將詳細闡述為中等大小語言模型(即,參數達到數十億的模型)量身定制的剪枝技術,鑒于它們與LLMs的結構相似性。4.3節將深入探討專門為LLMs設計的剪枝方法論。最后,在4.4節,我們將介紹一些輔助技術,這些技術雖然不是剪枝方法,但與剪枝相關,用于改進LLMs的剪枝結果,并討論LLMs剪枝領域未來進步的挑戰。
知識蒸餾知識蒸餾(KD)是一種常用的模型壓縮和加速技術。具體實施過程包括將復雜教師模型獲得的知識轉移到一個更簡單的學生模型中,從而實現教師模型知識的更簡潔高效的表示。在5.1節中,我們將介紹知識蒸餾的一些基本概念,并提供知識蒸餾方法的簡要分類。然后我們將在5.2節總結使用中等大小語言模型(具有大約10億參數的語言模型)的各種知識蒸餾方法,并根據蒸餾發生在預訓練階段、微調階段還是兩者都有進行分類。最后,我們將在5.3節提供大型語言模型(具有超過10億參數的語言模型)知識蒸餾的詳細概述,將它們分類為黑盒蒸餾和白盒蒸餾。
緊湊架構設計是一種追求效率和簡化的設計哲學,其目標是通過優化網絡結構和算法,在減少計算資源和內存使用的同時,實現模型效率的顯著提升。具體而言,它可以分為微觀和宏觀兩個研究層次。本節將重點優化注意力計算和Transformer架構設計。由于Transformer層目前是LLM的主要組成部分,并且對于大型和中等大小模型來說沒有區別,因此我們在這里不會特別按模型大小分類方法。
動態網絡
擴大語言模型的規模已被證明是提升其在自然語言處理(NLP)任務上性能的有效方法。然而,擴展帶來的大量計算成本和內存需求構成了LLMs進步的主要挑戰。為了解決這些問題,同時仍然利用規模增加的好處,動態神經網絡(DyNNs)只針對每個輸入處理網絡的一個子集,使整個模型在資源受限的環境下更加靈活和高效地滿足計算需求。在NLP領域和LLMs領域,當前對DyNNs的研究主要包括以下三種方法:提前退出、級聯推理和專家混合(MoE)。提前退出旨在動態地在深度神經網絡(DNNs)的早期層次終止推理過程,從而減少計算成本并提高響應時間。直覺是,對于不太復雜的詞匯,往往可以在網絡的較早層次中準確完成預測。這些方法通常在網絡內部集成了一系列內部分類器,這些分類器在推理過程中提供提前退出的信號。已經提出了各種退出標準。這一系列工作主要關注并應用于小型或中型語言模型,如Bert。并且準確度可能不足以支持一般LLMs在更復雜和現實的場景中的應用。級聯推理利用不同大小的一系列語言模型處理不同復雜度級別的請求。Tabi提出了一個具有多級推理模型和基于概率的調度器的推理系統,以確定輸入查詢的處理策略,并平衡準確度和效率。FrugalGPT學會適應性地分類來自不同數據集和任務的查詢,并將它們引導至合適的LLMs API組合。EcoAssistant和另一個研究利用查詢緩存引用歷史數據以加快響應速度,并使用LLMs的層級結構來處理那些不匹配的新查詢。Mixture-of-Thoughts考慮了來自較弱LLMs的答案一致性作為問題難度的指標,以決定是否利用更強大的LLMs。一般來說,這一系列工作最近才出現,并顯示出發展更高效LLM系統的有希望的方向。與上述兩種方法相比,MoE的研究有著橫跨多個機器學習領域(包括NLP)的廣泛歷史。MoE通過多個子網絡水平擴展前饋網絡(FFN),其中只有一個或少數幾個會在單次前向傳播中被激活。它被廣泛地整合到今天的LLMs架構中,以提供高效而強大的服務。因此,在本節的剩余部分,我們將深入探討MoE的領域。7.1節首先介紹MoE的基本概念,接著是對將MoE整合到LLMs中的當代研究的廣泛綜述,包括算法和架構設計、訓練策略和實際應用。7.2節提供了一些代表性研究的簡要回顧,這些研究將MoE與之前討論的模型壓縮和加速技術集成在一起,突出了其在開發更全面和成本效益更高的LLM系統中的潛力。
隨著基于Transformer的模型的快速發展,出現了各種模型。由于不同的應用場景,它們在延遲、吞吐量、內存等方面有著額外的需求,這使得我們難以部署模型。在本節中,我們介紹了一些最近開發的針對LLM的推理加速框架,這些框架有效地提高了不同場景下模型的效率,如表6所示。我們根據通用性將框架分為通用框架和專用框架。這里還有一些特定于訓練的加速框架[351]、[352]、[353]、[354]、[355]、[356]、[357],由于本文關注于推理,我們不會具體討論它們。如果您想要部署訓練好的模型以快速獲得高效推理,可以參考這些框架[358]、[359]、[360]、[361]、[362]、[363]。
結論
在本文中,我們從算法角度對大型語言模型的壓縮和高效推理進行了全面調查,包括量化、剪枝、蒸餾、緊湊架構設計、動態網絡。此外,我們還介紹了一些為大型語言模型量身定制的流行壓縮和加速框架。然而,正如我們在引言中提到的,與較小模型相比,大型模型的壓縮和加速面臨更多挑戰。盡管現有算法已經做出了重大努力來應對這些挑戰,但許多算法仍然依賴于為壓縮小型模型而設計的框架,壓縮大型模型的挑戰依然存在。未來,需要進一步探索,以開發更高效、更有效的壓縮算法,同時確保大型模型的通用性和泛化能力。
將大型語言模型(LLMs)與圖表示學習(GRL)的整合標志著分析復雜數據結構的一次重要進化。這種合作利用LLMs的復雜語言能力來提高圖模型的上下文理解和適應性,從而擴大了GRL的范圍和潛力。盡管越來越多的研究致力于將LLMs整合到圖領域,但顯著缺乏一篇深入分析這些模型內核組成部分和操作的全面綜述。我們的綜述通過提出一種新穎的分類法來填補這一空白,該分類法從新的技術角度將這些模型分解為主要組成部分和操作技術。我們進一步將近期文獻分解為兩個主要組成部分,包括知識提取器和組織器,以及兩種操作技術,包括整合和訓練策略,揭示了有效的模型設計和訓練策略。此外,我們識別并探索了這一新興但尚未充分探索的領域中潛在的未來研究方向,提出了持續進步的路徑。
這篇綜述論文深入探討了大型語言模型(LLM)的可解釋性領域,這是自然語言處理中的一個關鍵且充滿挑戰的方面。隨著LLM在各種應用中扮演著關鍵角色,它們的“黑盒”特性引發了關于透明度和道德使用的擔憂。本文強調增強LLM可解釋性的必要性,旨在解決公眾對這些模型的信任問題以及技術社區對深入理解這些模型的需求。我們專注于預訓練的基于Transformer的LLM,例如LLaMA(Touvron et al., 2023),它們由于規模和復雜性,呈現出獨特的解釋挑戰。我們的綜述歸類了現有的解釋性方法,并討論了它們在提高模型透明度和可靠性方面的應用。我們還討論了代表性的評估方法,強調它們的優勢和局限性。這篇綜述的目標是在理論理解和實際應用之間架起一座橋梁,為未來LLM可解釋性領域的研究和發展提供洞見。
**1 引言 **
在迅速發展的自然語言處理領域,大型語言模型(LLM)已成為一個基石,展現出在各種任務中的卓越能力。盡管它們效果顯著,LLM通常被視為“黑盒”系統,這在解釋性和透明度方面提出了重大挑戰。這種不透明性可能導致意想不到的后果,例如生成有害或誤導性內容(Gehman et al., 2020),以及模型幻覺的出現(Weidinger et al., 2021)。這些問題凸顯了增強解釋性的緊迫性,不僅是為了理解,更是為了負責任和倫理的應用。 在LLM中,解釋性具有兩個關鍵功能。對于終端用戶,它通過以非技術方式闡明模型的推理過程,增強了對其能力和潛在缺陷的理解,從而培養信任(Zhao et al., 2023)。對于開發者和研究人員,它提供了對意外偏見和改進領域的洞察,作為提升模型在下游任務上性能的工具(Bastings et al., 2022; Meng et al., 2023a; Li et al., 2023b)。然而,LLM的規模為解釋性帶來了獨特的挑戰。更大的模型、更多的參數和廣泛的訓練數據使得解釋變得更加困難。傳統的解釋方法,如SHAP值(Lundberg and Lee, 2017),對于這些大規模模型變得不太實用(Zhao et al., 2023)。此外,全面理解LLM特有現象,包括在上下文中的學習(Halawi et al., 2023; Hendel et al., 2023; Todd et al., 2023; Wang et al., 2023),以及解決模型幻覺(Ji et al., 2023; Chuang et al., 2023)和固有偏見(dev, 2023; An and Rudinger, 2023; Schick et al., 2021)等問題,對于模型設計的持續改進至關重要。 在這篇文獻綜述中,我們關注預訓練的基于Transformer的LLM的解釋性方法,這些模型通常被稱為基礎模型。這些模型通常在訓練數據上進行擴展,并擁有數十億個參數,例如GPT-2(Radford et al., 2019)、GPT-J(Chen et al., 2021)、GPT-3(Brown et al., 2020)、OPT(Yordanov et al., 2022)和LLaMA系列(Touvron et al., 2023)。在第2節中,我們根據文獻綜述對研究問題進行分類。基于這種分類,在第3節中,我們回顧了解釋性方法,隨后在第4節中討論了如何利用這些洞察。我們進一步在第5節中討論評估方法和指標。我們的目標是綜合并批判性地評估當代研究,旨在彌合理論理解與從復雜語言模型中提取的洞見的實際應用之間的差距。
2 概述
大型語言模型(LLM)領域正在迅速發展,使得解釋性不僅成為理解這些復雜系統的工具,而且對它們的改進至關重要。本節對當前的解釋性方法進行分類,強調在倫理和可控生成方面的挑戰,并提出未來探索的研究問題。 方法分類 我們在圖1中呈現了對解釋性方法及其應用的結構化分類。圖1展示了對預訓練語言模型(LM)解釋性方法的結構化分類。我們將這些方法分為兩大領域:局部分析和全局分析。局部分析涵蓋了特征歸因和Transformer塊分析,深入探討模型的詳細操作。另一方面,全局分析包括基于探針的方法和機制性解釋性,提供對模型行為和能力的全面理解。除了理解之外,我們還探索這些洞察在增強LLM能力方面的應用,重點關注模型編輯、能力增強和受控生成。
3 大型語言模型的解釋性
3.1 局部分析 LLM中的局部解釋旨在闡明模型如何為特定輸入生成特定預測,例如情感分類或令牌預測。本節將局部解釋方法分為兩類:特征歸因分析和對單個Transformer(Vaswani et al., 2017)組件的分析。
3.2 全局分析 與側重于闡明單個模型預測的局部分析不同,全局分析旨在理解和解釋模型隱藏狀態激活中編碼的知識或語言屬性。本節探討全局分析的兩種主要方法:審視模型表示的探針方法和機制性解釋性(Transformer Circuits, 2022),這是一種新興的觀點,旨在逆向工程深度神經網絡的內部工作機制。
4 利用解釋性
在本節中,我們討論如何將解釋性作為一個工具來調試和改進模型。雖然各種方法旨在通過微調或重新訓練來提高模型的能力,但我們專注于那些特別基于模型解釋性的強大基礎設計的方法。
4.1 模型編輯
盡管我們能夠訓練出熟練的大型語言模型(LLM),但確保它們的相關性和糾正錯誤的方法仍然難以捉摸。近年來,編輯LLM的技術出現了激增。其目標是在不對其他輸入的性能產生負面影響的情況下,高效地修改LLM在特定領域內的知識或行為(Yao et al., 2023)。
4.2 增強模型能力
雖然大型語言模型(LLM)在各種自然語言處理任務中表現出多樣性,但來自解釋性的洞察可以顯著增強這些能力。本節重點介紹了解釋性在最近的工作中顯示出顯著影響的兩個關鍵任務:改進長文本的利用(Xiao et al., 2023; Liu et al., 2023; Pope et al., 2022)和增強上下文中學習(In-Context Learning, ICL)的性能(Hendel et al., 2023; Halawi et al., 2023; Wang et al., 2023)。
4.3 可控生成
盡管大型語言模型在文本生成方面取得了卓越的表現,但有時它們在生成事實內容方面表現不佳。利用解釋性為構建推理時快速技術提供了機會,這些技術旨在提高生成模型的事實性、校準性和可控性,使其更符合人類偏好。
5 評估
近期,像GPT-4(OpenAI, 2023)這樣的大型語言模型展現了生成其預測的自然語言解釋的令人印象深刻的能力。然而,這些解釋是否真正幫助人類理解模型的推理過程,目前尚不明確(Zhao et al., 2023)。為了更好地評估解釋性方法(如歸因)的性能,需要專門設計的評估方法。此外,還需要校準的數據集和指標來評估解釋性在下游任務中的應用,例如真實性評估。 5.1 評估解釋的合理性 評估歸因解釋合理性的一種常見技術是移除K%估計重要性最高或最低的令牌,以觀察其對模型輸出的影響(Chen et al., 2020; Modarressi et al., 2023)。另一種評估解釋合理性的方法涉及間接方法,例如衡量模型編輯的性能,尤其是對于嚴重依賴解釋準確性的“定位-然后編輯”編輯方法。近期研究(Yao et al., 2023; Zhao et al., 2023)表明,擁有評估數據集對于評估LLM中的事實編輯至關重要。此目的常用的兩個數據集是ZsRE(Levy et al., 2017),一個通過反向翻譯生成問題改寫的問答(QA)數據集,以及CounterFact(Meng et al., 2023a),一個更具挑戰性的數據集,包含了與正確事實相比起始得分較低的反事實。 5.2 評估真實性 模型真實性是衡量生成模型可信度的重要指標。我們期望模型輸出既有信息量又事實正確且忠實。理想情況下,人類評注員會根據標準答案標記模型答案為真或假,但這通常成本較高。(Lin et al., 2022)提出使用兩個微調過的GPT-3-13B模型(GPT-judge)對每個答案進行真實或假的及有信息量或無信息量的分類。使用GPT-judge進行評估是TruthfulQA基準測試的標準做法,這是一個廣泛使用的數據集,對抗性構建以衡量語言模型在生成答案時的真實性(Askell et al., 2021; Li et al., 2023b; Chuang et al., 2023)。TruthfulQA的主要指標是真實*信息量,真實和信息量得分的乘積。這個指標不僅捕捉了有多少問題被真實地回答,還通過評估每個答案的信息量,防止模型無差別地回復“我無可奉告”。
6 結論
在本文中,我們提供了關于LLM的可解釋性及其應用的全面概述。我們總結了基于解釋目標的局部和全局分析方法。此外,我們討論了利用解釋來增強模型和評估這些方法的使用。理解LLM的主要未來研究方向包括開發針對不同語言模型的解釋方法,以及通過利用解釋性知識使LLM更值得信賴且與人類價值觀更一致。隨著LLM的不斷進步,可解釋性將變得極其重要,以確保這些模型是透明的、公平的和有益的。我們希望這篇文獻綜述為這一新興研究領域提供了有用的概述,并突出了未來研究的開放問題和方向。
在快速發展的自然語言生成(NLG)評估領域中,引入大型語言模型(LLMs)為評估生成內容質量開辟了新途徑,例如,連貫性、創造力和上下文相關性。本綜述旨在提供一個關于利用LLMs進行NLG評估的全面概覽,這是一個缺乏系統分析的新興領域。我們提出了一個連貫的分類體系來組織現有的基于LLM的評估指標,提供了一個結構化的框架來理解和比較這些方法。我們的詳細探索包括批判性地評估各種基于LLM的方法論,以及比較它們在評估NLG輸出時的優勢和局限性。通過討論尚未解決的挑戰,包括偏見、穩健性、領域特定性和統一評估,本綜述旨在為研究人員提供洞見,并倡導更公平、更先進的NLG評估技術。
自然語言生成(NLG)處于現代AI驅動通信的前沿,近期在大型語言模型(LLMs)方面的進展徹底改變了NLG系統的能力(Ouyang et al., 2022; OpenAI, 2023)。這些模型,依靠深度學習技術和大量的訓練數據,展現出在廣泛應用中生成文本的卓越能力。隨著NLG技術的快速發展,建立可靠的評估方法以準確衡量生成內容的質量變得越來越重要。
傳統的NLG評估指標,如BLEU(Papineni et al., 2002)、ROUGE(Lin, 2004)和TER(Snover et al., 2006),主要關注表面層面的文本差異,通常在評估語義方面存在不足(Freitag et al., 2020)。這一局限性已被指出阻礙了研究進展,并可能導致誤導性的研究結論。此外,其他使用神經嵌入來計算分數的方法(Liu et al., 2016; Sellam et al., 2020; Zhang et al., 2020),盡管在評估諸如語義等價性和流暢性方面有所考慮,但它們的靈活性有限,適用范圍受限(Freitag et al., 2021a)。此外,這些傳統方法與人類判斷的一致性較低(Liu et al., 2023c),且對分數的解釋性不足(Xu et al., 2023)。這些缺點突顯了NLG領域需要更細膩和全面的評估方法的需求。
大型語言模型(LLMs)涌現的能力為基于LLM的NLG評估提供了有前景的途徑,例如Chain-of-Thought(CoT)(Wei et al., 2022b)、零次學習指令跟隨(Wei et al., 2022a)、更好地與人類偏好相一致(Ouyang et al., 2022)等。這些特性使LLMs成為評估NLG輸出的有力工具,與傳統方法相比提供了更為復雜和更好地與人類一致的評估(Liu et al., 2023c;Kocmi and Federmann, 2023;Fu et al., 2023)。例如,LLMs可以生成合理的解釋來支持最終評分(Xu et al., 2023),而利用人類反饋的強化學習(RLHF)可以使LLMs的偏好更好地與人類一致(Ouyang et al., 2022;Zheng et al., 2023)。如圖1所示,這些方法的關鍵策略涉及指示LLMs使用提示來從不同方面評估生成的文本,無論是否有參考資料和來源。然而,眾多基于LLM的NLG評估方法,針對不同的任務和目標,缺乏統一的概述。
鑒于LLMs在NLG評估領域的工作量不斷增加,迫切需要一個綜合總結來導航這一領域內的復雜性和多樣化方法。本綜述旨在提供這一有前景領域的全面概述,呈現一個用于組織現有工作的連貫分類體系。我們詳細勾勒了關鍵研究及其方法論,并深入分析了這些方法的各種優點、局限性和獨特屬性。此外,我們探索了該領域內尚未解決的挑戰和開放性問題,從而為未來的學術探索勾畫出潛在的途徑。這一全面探索旨在激發讀者對LLM在NLG評估中方法的細微差別和不斷變化的動態有深入的了解。
本綜述的組織:我們呈現了利用LLMs進行NLG評估的首個全面綜述。首先,我們建立了NLG評估的正式框架,并提出了一個分類體系來分類相關工作(第2節)。隨后,我們深入并詳細闡述這些工作(第3節)。此外,我們對評估LLM評估者有效性的各種元評估基準進行了系統回顧(第4節)。鑒于這一領域的快速發展,我們確定并討論了一些可能指導未來研究的潛在開放問題(第5節)。在結束這一系統綜述時,我們倡導通過開發更公正、更穩健、更專業和統一的基于LLM的評估者來推動這一領域的發展。此外,我們強調整合其他評估方法,如人類判斷,以實現更全面和多面的評估框架。
在大型語言模型(LLMs)迅速發展的背景下,越來越多的研究將重點放在利用這些模型作為NLG任務的評估者。這種關注特別源于LLMs的高容量生成能力,導致出現了使用它們來對NLG文本進行質量評估的工作——我們將這種范式稱為生成性評估。這一類別大致分為基于提示的評估和基于微調的評估,其核心在于LLM評估者的參數是否需要微調。基于提示的評估通常涉及使用精心設計的提示指導強大的基礎LLMs來評估生成的文本。另一方面,基于微調的評估依賴于專門為NLG評估校準的開源LLMs。這兩種方法都適用于不同的評估協議,用于衡量生成文本的質量。
當前方法考慮不同的評分協議來判斷生成假設文本的質量。一些嘗試部署LLM評估者產生連續的標量分數,代表單個生成文本的質量——稱為? 基于分數的評估。其他方法計算基于提示、來源或參考文本(可選)的生成文本的生成概率作為評估指標,稱為? 基于概率的評估。在多樣化的領域中,某些工作將NLG評估轉化為分類任務,使用類似李克特量表的多級別對文本質量進行分類。在這種情況下,LLM評估者通過將生成的文本分配到特定的質量級別來評估其質量——稱為? 李克特風格評估。同時,? 成對比較方法涉及使用LLM評估者比較一對生成文本的質量。此外,? 組合評估方法利用多個不同LLMs或提示的LLM評估者,協調評估者之間的溝通以產生最終評估結果。最后,一些最新的研究探索了? 高級評估方法(考慮細粒度標準或結合連續思考或上下文學習的能力),旨在獲得更全面和細致的評估結果。
本節深入探討了這兩個主要類別的評估方法,每種方法都伴隨其相應的評估協議。表2提供了當前基于提示和基于微調評估方法的全面概述。該表詳細說明了它們各自的適應任務、基礎模型、評分協議和評估方面,以便于清晰參考。
基于LLM的評估者已在多種NLG任務中找到應用。與此同時,眾多現有和近期引入的元評估基準用于驗證這些評估者的有效性。這些基準包括了對生成文本質量的人類注釋,以及評估自動評估者和人類偏好之間一致性的程度。根據涉及的任務,這些基準可以被分類為單一場景示例,如機器翻譯和摘要,以及多場景基準。本節將提供這些NLG任務及其相關元評估基準的概述。
結論
在本綜述中,我們詳盡地調查了LLMs在NLG評估中的作用。我們全面的分類體系按三個主要維度對作品進行分類:評估功能、評估參考和評估任務。這個框架使我們能夠系統地分類和理解基于LLM的評估方法論。我們深入探討了各種基于LLM的方法,審視它們的優勢并比較它們的差異。此外,我們總結了NLG評估的普遍元評估基準。
在我們的研究中,我們強調了這一快速發展領域的進步和現存挑戰。盡管LLMs在評估NLG輸出方面提供了開創性的潛力,但仍有一些未解決的問題需要關注,包括偏見、穩健性、混合評估方法的整合,以及LLM評估者內部對特定領域和統一評估的需求。我們預計,解決這些挑戰將為更通用、有效和可靠的NLG評估技術鋪平道路。這樣的進步將顯著促進NLG評估的發展以及LLMs的更廣泛應用。
本文提供了一個關于大型語言模型(LLMs)在軟件工程(SE)中應用的新興領域的調查。它還提出了將LLMs應用于軟件工程師面臨的技術問題的開放性研究挑戰。LLMs的新興屬性帶來了創新性和創造力,其應用覆蓋了軟件工程活動的全譜,包括編碼、設計、需求、修復、重構、性能提升、文檔和分析。然而,這些同樣的新興屬性也帶來了重大的技術挑戰;我們需要能夠可靠地剔除錯誤的解決方案,如幻覺。我們的調查揭示了混合技術(傳統的SE與LLMs相結合)在開發和部署可靠、高效和有效的基于LLM的SE中的關鍵作用。本文調查了基于LLM的SE的最近發展、進展和實證結果;即大型語言模型(LLMs)在軟件工程(SE)應用的應用。我們使用這次調查來突出這個迅速發展但尚屬初級階段的研究文獻中的空白。基于文獻中的空白和技術機會,我們還確定了軟件工程研究社區的開放問題和挑戰。盡管對這樣一個迅速擴張的領域的任何調查都既不能渴望也不能聲稱是全面的,但我們希望這次調查能為這個令人興奮的新軟件工程子學科——基于LLM的軟件工程提供一個有用且相對完整的早期概述。盡管該領域的科學和技術結構仍在形成中,但我們已經可以識別出趨勢、對未來研究的有益方向以及需要解決的重要技術挑戰。特別是,我們已經能夠辨別出與軟件工程內的現有趨勢和既定方法及子學科的重要連接(和共鳴)。盡管總的來說,我們找到了很多樂觀的理由,但仍然存在重要的技術挑戰,這些挑戰很可能在未來幾年內影響研究議程。許多作者都從科學和軼事的角度指出,LLMs普遍存在幻覺問題[1],而且它對基于LLM的SE也帶來了特定的問題[2]。與人類智慧一樣,幻覺意味著LLM可以產生虛構的輸出。在軟件工程的背景下,這意味著創造的工程制品可能是錯誤的,但看起來是合理的;LLMs可能引入錯誤。然而,與LLMs的許多其他應用不同,軟件工程師通常有可自動化的真實依據(軟件執行),大部分軟件工程制品都可以基于此進行評估。此外,軟件工程研究社區已經花了很多時間開發自動化和半自動化技術,以檢查人類可能產生的錯誤結果。這意味著,對于這個學科和研究社區,當面對像幻覺這樣的問題所帶來的挑戰時,有大量的經驗和專業知識可以借鑒。
顯然,自動化測試技術 [3]–[5] 將在確保正確性中發揮核心作用,就像它們已經為人工設計的制品所做的那樣。在生成全新的功能和系統時,由于缺乏可自動化的oracle [6](一種自動技術,用于確定給定輸入刺激的輸出行為是否正確),自動測試數據生成受到限制。考慮到LLMs的幻覺傾向,Oracle問題仍然非常相關,對它的解決方案將變得更加有影響力。但是,一些SE應用關心現有軟件系統的適應、改進和開發,對于這些應用,有一個現成的可自動化的oracle:原始系統的功能行為。在本文中,我們稱其為“自動回歸Oracle”,這種方法已在遺傳改進領域得到證明是有益的 [7]。自動回歸Oracle簡單地使用軟件系統的現有版本作為參考,以對任何后續的適應和更改的輸出進行基準測試。當然,有“烘焙”功能錯誤的風險,因為自動回歸Oracle無法檢測系統應該做什么,只能捕捉它當前做什么。因此,自動回歸Oracle只能測試功能退化,所以它最適合于需要保持現有功能的用例。例如,對于性能優化和語義保持不變的重構。LLM的輸入將成為越來越多研究的焦點,我們可以預期關于prompt工程和prompt優化文獻的迅速發展 [8]。在這次調查中,我們突出了關于軟件工程的幾個特定方面的prompt工程的現有工作和開放挑戰。LLM的輸出不僅可以限于代碼,還可以包括其他軟件工程制品,如需求、測試用例、設計圖和文檔。總的來說,LLM的基于語言的特性使其能夠生成任何語言定義的軟件工程制品。我們通常認為軟件工程制品是LLM的主要輸出,但它不是唯一的輸出。與主要輸出一起提供的解釋也是LLM的重要輸出。我們的調查突出了需要進行更多的研究的需求,不僅要優化prompt工程(專注于LLM的輸入),還要優化與主要輸出一起提供的解釋的工作。LLMs本質上是非確定性的:相同的prompt在不同的推斷執行中產生不同的答案(除非溫度設為零,這在多次執行中經常被發現是次優的)[9]。此外,無論溫度設置如何,prompt的微妙變化都可能導致非常不同的輸出[9]。除了激勵‘prompt工程’和輸出處理,這種非確定性行為為基于LLM的軟件工程的科學評估帶來了挑戰:如果每次我們運行整個工程過程時結果都會變化,我們如何確定所提議的技術是否超越了現有的技術?這是一個在經驗軟件工程[10]和基于搜索的軟件工程(SBSE)[11]的背景下已經被深入研究的問題。特別是,SBSE與基于LLM的軟件工程有很多相似之處,在存在嘈雜、非確定性和不完整的結果[12]、[13]的情況下實現穩健的科學評估都與之有關。因此,已經有一個成熟的軟件工程文獻專門研究適用于基于LLM的科學評估所需的穩健的科學評估技術。例如,參數和非參數的推斷統計技術現在經常被用來在SBSE學科中提供在高度非確定性算法存在的情況下的穩健的科學結論。為了找出與LLM相關的計算機科學論文,我們過濾了出版物,將其細分為以下子類別:人工智能 (cs.AI)、機器學習 (cs.LG)、神經和進化計算 (cs.NE)、軟件工程 (cs.SE) 和編程語言 (cs.PL)。我們使用查詢“Large Language Model”、“LLM”和“GPT”在標題或摘要中進行篩選(我們手動排除了重載縮寫,例如將GPT誤認為是通用規劃工具),結果是L列。最后,我們使用相同的查詢來識別基于LLM的軟件工程論文,這些論文位于軟件工程 (cs.SE) 和編程語言 (cs.PL) 類別中。這些查詢本質上是近似的,因此我們只局限于基于總體趨勢得出的結論,而這些總體趨勢有強有力的證據支持,而不是觀察到的數字的具體細節。盡管如此,我們報告了觀察到的原始數字,以支持其他人的復制。
圖2展示了arXiv上發布的計算機科學論文數量(|A|,以藍色表示)和LLM相關論文的數量(|L|,以橙色表示)的增長。特別是與軟件工程和LLM相關的論文以綠色表示(|L ∩ S|)。考慮到總體發表量的快速增長,我們為縱軸使用了對數刻度。不出所料,我們看到了計算機科學出版物數量的整體增長。同時,鑒于LLM最近受到的關注增多,LLM相關論文數量的指數增長也相對不足為奇。或許更有趣的是LLM在軟件工程應用中的快速采納,如圖中的綠色所示。為了更詳細地檢查這一趨勢,我們在圖3中畫出了LLM出版物(L)與所有計算機科學出版物(A)的比例(以藍色表示),以及基于LLM的軟件工程出版物(L ∩ S)與所有LLM出版物的比例(以橙色表示)。如圖所示,自2019年以來,基于LLM的軟件工程論文的比例已經急劇上升。目前,所有關于LLM的論文中已有超過10%與基于LLM的軟件工程有關。由于這一增長,我們可以預期將有更多其他的基于LLM的軟件工程調查。文獻的快速擴展使得進一步的全面軟件工程研究不太可能適應單篇論文的空間限制,但我們可以預期會有許多關于感興趣的子領域的全面調查,以及針對系統評審中的主要文獻提出具體研究問題的系統文獻回顧(SLRs)。例如,Hou等人[14]提供了一個出色的最新SLR,涵蓋了2017年至2023年的229篇研究論文,報告了所處理的軟件工程任務、數據收集和預處理技術,以及優化LLM性能的策略(例如提示工程)。本文的其余部分按照主要的頂級軟件開發活動和研究領域進行組織。圖1顯示了軟件開發活動、研究領域和我們論文結構之間的映射。
大型的、預訓練的基于Transformer的語言模型,如BERT,已經極大地改變了自然語言處理(NLP)領域。我們對最近的研究進行了調研,這些研究使用了大型語言模型來解決NLP任務,通過預訓練、微調、提示或文本生成方法。我們還提出了使用預訓練語言模型生成數據的方法,用于訓練增強或其他目的。最后,我們討論了局限性,并提出了未來研究的方向。
引言
近年來,大型預訓練的基于Transformer的語言模型(PLMs),如BERT (Devlin et al., 2019)和GPT (Radford et al., 2018)系列模型席卷了自然語言處理(NLP),在許多任務中實現了最先進的性能。
這些大型PLM推動了NLP的范式轉變。以分類任務p(y|x)(將文本輸入x分類為標簽y)為例:傳統統計NLP方法通常設計手工特征來表示x,然后應用機器學習模型(如SVM (Cortes and Vapnik, 1995)、邏輯回歸)來學習分類函數。深度學習模型通過深度神經網絡(LeCun et al., 2015)。注意,每個新的NLP任務都需要重新學習潛在特征表示,而且在許多情況下,訓練數據的大小限制了潛在特征表示的質量。考慮到語言的細微差別對所有NLP任務來說都是共同的,我們可以假設我們可以從一些通用任務中學習一個通用的潛在特征表示,然后在所有NLP任務中共享它。語言建模需要學習如何在給定前一個單詞的情況下預測下一個單詞,這是一項具有大量自然出現的文本的通用任務,可以預訓練這樣一個模型(因此得名預訓練語言模型)。事實上,最新的、正在進行的范式轉換從引入PLMs開始: 對于大量的NLP任務,研究人員現在來利用現有的PLMs通過對感興趣的任務進行微調,提示PLMs執行期望的任務,或者將任務重新構造為文本生成問題,并應用PLMs來解決相應的問題。這三種基于PLM的范式的進步不斷地建立了新的最先進的性能。
本文調研了最近利用PLM進行NLP的工作。我們將這些工作組織成以下三種范式:
先進行預訓練,然后進行微調(§2): 先對大量未標記語料庫進行通用預訓練,然后對感興趣的任務進行少量的任務特定微調。
基于提示的學習(§3):提示一個PLM,這樣解決NLP任務就會減少到類似于PLM的訓練前任務(如預測一個遺漏的單詞),或一個更簡單的代理任務(如文本包含)。提示通常可以更有效地利用PLM中編碼的知識,從而產生“少樣本”的方法。
NLP作為文本生成(§4): 將NLP任務重新定義為文本生成,以充分利用生成語言模型(如GPT-2 (Radford et al., 2019)和T5 (Raffel et al., 2020)中編碼的知識。
生成式PLMs也可以用于文本生成任務。我們向讀者推薦關于文本生成的優秀調研,如Li et al. (2021b) 和Yu et al. (2021b)。除非另有說明,本文主要關注非生成性任務(如分類、序列標注和結構預測),這些任務仍然涵蓋廣泛的NLP任務,包括文本的語法或語義解析、信息抽取(IE)、問答(QA)、文本蘊涵(TE)、情感分析、等等。除了這三種范式之外,還有另一種互補的方法:間接使用上述任何一種PLM范式來改善目標NLP任務的結果:
數據生成(§5): 運行PLM自動生成NLP任務的數據。生成的數據可以是銀色標記的數據,通常生成的PLM是針對任務進行微調的,或者是一些輔助數據,如反例、澄清、上下文或其他。在第一種情況下,銀色標記數據可以添加到現有的標記數據中。在第二種情況下,輔助數據以某種方式支持目標任務。
論文組織如下: 第2節提供了PLM的背景,并描述了第一種范式,即預訓練然后微調。第三節討論第二種范式,即基于提示的學習。第4節總結了第三種范式,即作為文本生成的NLP。在第5節中,我們將描述通過PLM為廣泛的NLP任務生成數據的方法。我們將在第6節討論局限性并提供未來研究的方向,并在第7節進行總結。
范式1: 先訓練,然后微調
傳統統計NLP的工作重點是在標記數據集上訓練特定任務的模型,而這種模式轉變為在一個共享的、“基本”的預訓練任務上訓練一個大型模型,然后在第二步中將其調整(“微調”)到各種任務。預訓練任務幾乎總是一種語言建模任務,它可以利用大量的未標記數據來學習有利于一系列NLP任務的表示(Rogers et al., 2020)。在本節中,我們首先提供關于預訓練的大型語言模型(PLMs)的入門知識,然后描述使用凍結或微調PLM進行NLP任務的方法。
范式2: 基于提示的學習
我們使用提示指的是在輸入或輸出中添加自然語言文本(通常是短語)的做法,以鼓勵預訓練的模型執行特定任務(Yuan et al., 2021)。使用提示符有幾個優點。提示,特別是上下文學習(例如Brown et al., 2020),可能不需要更新PLM的參數,與微調方法相比,或在2.4.4中描述的基礎上,減少了計算需求。提示還能促使新任務的制定與預訓練的目標更好地結合,從而更好地利用預訓練獲得的知識。更緊密的匹配還支持少樣本方法(Liu et al., 2021b),特別是對于具有小訓練數據集的任務;一個好的提示可以值幾百個標簽數據點(Le Scao and Rush, 2021)。最后,提示允許以一種不受監督的方式探索PLM,以評估PLM對特定任務所獲得的知識(如Petroni et al., 2019)。
下面我們討論三種基于提示的學習方法:從指令和演示中學習、基于模板的學習和從代理任務中學習。圖3顯示了這三種方法的說明。
范式3 NLP即文本生成
基于生成式Transformer的PLMs10(如GPT、BART和T5)的成功,最近激發了人們對利用生成式PLM解決各種非生成式NLP任務的興趣。這些任務包括但不限于傳統的判別任務,如分類和結構預測。例如,圖4說明了Raffel等人(2020)所描述的這種“文本到文本”方法。與傳統的NLP任務判別模型不同,這些任務被重新表述為文本生成問題,從而可以直接用生成式PLM解決。生成的輸出序列通常包括給定任務所需的標簽或其他輔助信息,從而能夠準確地重構預期的類標簽(即避免映射中的歧義),并促進生成/解碼過程(即為預測提供足夠的上下文)。
總結
在這篇文章中,我們介紹了三種使用預訓練語言模型進行自然語言處理的趨勢。我們對每一種方法都進行了深入的描述,并對其應用前景進行了總結。此外,我們還描述了使用預先訓練過的語言模型來自動生成用于提高NLP任務性能的數據。我們希望這一調研將為讀者提供關鍵的基本概念和對范式轉變的全面看法。