提示 (Prompting) 已成為將大型語言模型(LLMs)適配到特定自然語言處理任務的主流范式。盡管這種方法為LLMs的上下文學習開啟了大門,但它帶來了模型推理的額外計算負擔和人力努力的手工設計提示,特別是在使用冗長和復雜的提示來指導和控制LLMs行為時。結果,LLM領域見證了高效提示方法的顯著增長。在本文中,我們提供了這些方法的全面綜述。從高層次來看,高效提示方法大致可以分為兩種途徑:具有高效計算的提示和具有高效設計的提示。前者涉及各種壓縮提示的方式,后者采用自動提示優化的技術。我們介紹了提示的基本概念,回顧了高效提示的進展,并突出了未來研究方向。
大型語言模型(LLMs)已顯著推進了各種自然語言處理(NLP)任務的最新進展,例如對話、機器翻譯和摘要生成(Brown et al., 2020; Touvron et al., 2023; Bubeck et al., 2023)。提示是人機交互的一個重要媒介,用于向LLMs明確傳達清晰的任務描述,然后通過類比學習生成用戶期望的響應。提示的內容在不同上下文中會有所變化,特別是包含指令、問題、帶有特定輸出格式的多重演示,以及額外要求,如復雜的推理過程和角色扮演命令。在本文中,“提示”一詞指的是用戶輸入給LLMs的內容。
然而,隨著LLMs的上下文學習(ICL)能力變得更強(Dong et al., 2022),為不同特定任務設計的提示傾向于多樣化和詳細化。超長的自然語言提示逐漸引發了兩個問題:1) 對LLM本身而言,上下文窗口是有限的,影響其處理過度冗長上下文的潛力;2) 對LLM用戶而言,它要求使用大量的計算資源來訓練開源模型,或者承擔調用閉源模型接口的高成本。從這個角度來看,LLM的使用成本在學術研究和商業部署場景中都相當巨大。顯然,性能出色的LLM不能被廣泛使用是一種遺憾。雖然模型結構有許多相關改進,如高效注意力機制(參見Xiao & Zhu, 2023; Wan et al., 2023的相關工作),可以有效減輕推理成本,在本文中,我們更側重于高效提示方法,以節省不必要的財務開銷。
考慮到財務和人力資源,效率可以從三個角度得到改善:1) 推理加速,2) 內存消耗下降,和3) 自動設計良好的提示。前兩個目標可以通過提示壓縮實現,而第三個目標可以基于提示工程而非手工設計,通過自動提示優化實現。據我們所知,文獻中關于高效提示方法的全面整合存在顯著差距。
在這篇綜述中,我們從第2節的提示背景介紹開始。隨后,我們從計算(第3節)和設計(第4節)的角度審查現有的高效提示方法。前者將提示壓縮組織為三個類別:知識蒸餾(第3.1節)、編碼(第3.2節)和過濾(第3.3節)。后者探討基于傳統梯度下降(第4.1節)和智能進化算法(第4.2節)的自動提示優化。特別地,我們將高效提示抽象為一個多目標優化問題,并從理論角度展望未來方向(第5節)。最后,我們在第6節總結了全文。此外,我們還包括了一個方便參考的開源項目列表A.2和高效提示方法的類型圖A.3。
總述
**提示范式 **
提示的出現與預訓練語言模型(PLMs)的演進和大型語言模型(LLMs)的進步密切相關。PLM演進 PLM范式的演化軌跡已從有效性轉向效率。自從Transformer(Vaswani et al., 2017)被提出以來,它已成為廣泛PLMs的基礎架構。Transformer內部的自監督學習機制已被證明在解決長序列問題上有效。為分別解決基本的自然語言理解(NLU)和自然語言生成(NLG)任務,主流PLMs逐漸演化成BERT(Devlin et al., 2019)和GPT(Radford et al., 2018)系列模型。有許多優化策略,如探索編碼方法(Su et al., 2021)、改進自監督學習機制(Roy et al., 2021)和精煉模型結構(Li et al., 2021),以實現PLMs在解決特定任務上的高效表現。NLP范式轉變 NLP訓練范式經歷了兩次關鍵轉變(Liu et al., 2023b),從“完全監督學習”演化為“預訓練與微調”,最終演化為“預訓練、提示和預測”(如圖1所示)。在這篇綜述中,我們將專注于目前最廣泛采用的提示范式,深入探討其最近的發展。值得注意的是,GPT-3(Brown et al., 2020)在引入硬提示方面發揮了開創性作用,使人類能夠使用自然語言與語言模型交互。這一突破得益于大規模參數,它使GPT-3具備了深入理解自然語言的能力,從而允許它利用復雜的硬提示進行少量樣本學習,無需微調。LLM進展 在GPT-3開創LLM時代之后,ChatGPT作為塑造當前主流范式“LLM + 提示”的重要里程碑而脫穎而出。其NLU和NLG能力的完美整合吸引了整個人工智能社區的關注。隨著規模法則(Wei et al., 2022a)展示了顯著的新興能力(例如,指令跟隨、上下文學習和復雜推理),研究人員持續探索提示的性能邊界,無論是開源還是閉源的LLMs。例如,像思維鏈(CoT)(Wei et al., 2022b)這樣的復雜提示通過大聲思考,增強了LLMs的潛在推理能力。隨著提示范式逐漸穩固其地位,LLM仍然面臨著由于其大規模參數而導致的計算和人力資源挑戰。因此,有效的提示方法以節約資源引起了廣泛興趣。
提示類型
本質上,提示的主要目標是實現有效的少量樣本學習,而不是不必要的全參數微調所消耗的資源。提示表達可以分為兩種主要類型,如圖2所示:離散的自然語言提示(稱為硬提示)和連續的可學習向量(稱為軟提示)。2.2.1 硬提示 硬提示特別適用于生成性語言模型,尤其是GPT系列模型的一個顯著例子。關注硬提示的原因有兩個方面。從積極的角度來看,由于大量的預訓練數據集成到LLMs中,人類可以通過母語輕松地與世界知識壓縮器(即LLM)交互,最終獲得有用的響應。從消極的角度來看,由于當前LLMs廣泛采用閉源性質,使得其參數權重不可訪問,用戶別無選擇,只能通過API調用與LLMs使用硬提示。盡管如此,LLM強大的指令跟隨能力為硬提示的發展奠定了堅實的基礎,而自然語言作為無縫人機交互的媒介指日可待。重要的是要強調硬提示之間的多樣性。最初,硬提示包括類似于Cloze任務設計的簡潔任務指令。然而,隨著LLMs的理解能力不斷提高,硬提示已演化為包含更廣泛元素的數組,最常見的包括演示和思維鏈,如圖3所示。當前NLP社區對硬提示的日益興趣,甚至是解鎖LLMs全部潛力的教程,表明了對人模型對齊導致人工通用智能(AGI)的渴望。2.2.2 軟提示 在提示相關研究的早期階段,軟提示以適配器(Houlsby et al., 2019)、前綴(Li & Liang, 2021)甚至是無法解釋的向量的形式出現。許多研究(Lester et al., 2021; Liu et al., 2022)探討了軟提示在通過探索不同嵌入位置來增強高效訓練的好處。標準方法涉及凍結原始模型參數,僅訓練軟提示以實現完整參數微調的效果。Ding et al.(2022)的工作中有更詳細的介紹。鑒于可學習向量可以與神經網絡參數一起更新,軟提示顯然更有利于LLMs有效理解提示。需要注意的是,本文討論的軟提示僅僅是LLMs的硬提示的向量表示,如圖2所示,而不是從零開始開發的抽象向量。一些努力涉及將較長的硬提示壓縮成顯著更短的軟提示(參見第3.1節和第3.2節以獲取詳細見解)。
挑戰
鑒于硬提示已被廣泛認可并應用于各種下游任務。設計的提示更加詳細以提高任務準確性,因此導致更長且更復雜的提示。在這篇綜述中,我們從效率的角度提出了硬提示面臨的兩個關鍵挑戰:長度問題 提示的長度通常取決于特定任務,演示越多,性能越好。例如,思維鏈(CoT)提示顯著增強了LLMs的邏輯推理能力,導致出現了各種基于CoT的方法。像Self-Ask(Press et al., 2022)和最少到最多提示(Zhou et al., 2022a)幫助LLMs將復雜問題分解為更簡單的子問題以進行逐步回答。Wang et al.(2022)采樣了多樣化的推理路徑,而Wang et al.(2023b)指導LLMs生成正確的PS(計劃和解決方案),然后選擇最終答案。然而,使用這種復雜提示的優勢伴隨著更高的財務負擔,以及LLMs的信息感知能力降低。難以設計的提示 由于自然語言的離散性質,早期可用的硬提示通常是手工設計的,然后通過反復試錯獲得。手工制作的提示模板嚴重依賴于經驗知識,并涉及明顯的人為主觀性。但是,人類解決問題的方法與神經網絡之間存在差異,換句話說,LLMs的可解釋性仍然是持續探索的話題,目前尚無公認的理論指導。因此,針對LLMs的提示設計面臨許多挑戰,包括LLMs對自然語言提示格式的高敏感性、語義相似提示的大性能差距、提示復雜性與任務難度之間的關聯,以及提示的模型和任務特定屬性。因此,面對不同模型和不同任務,手動設計高質量提示既耗時又費力。總之,提示有效地緩解了應用于下游任務時的參數冗余問題,從而節省了財務資源。然而,在LLMs時代,提示長度的增加帶來了更大的內存需求、更慢的推理速度和更高的勞動強度等挑戰,這偏離了提示的原始目的。因此,這篇綜述深入探討了當前在LLMs中使用的高效提示方法。
使用高效計算的提示
隨著大型語言模型(LLMs)規模的不斷擴大,“使用高效計算的提示”概念應運而生,旨在減輕長提示對開源和閉源LLMs帶來的經濟負擔。已觀察到,壓縮的提示可以被LLMs有效重構,并減少生成文本的長度(Jiang et al., 2023a)。在本節中,我們提供了與提示壓縮相關研究的見解,將其分類為文本到向量級別和文本到文本級別的方法。提示壓縮的主要目的是從原始提示中提取必要信息,以便LLMs能夠保持與原始提示相當的性能水平。
使用高效設計的提示
“使用高效設計的提示”概念是為了應對提示內容的日益復雜性而引入的。隨著耗時且勞力密集的手工設計提示方法逐漸退出歷史舞臺,以及梯度基礎的提示微調方法不再適用于閉源LLMs,基于提示工程(PE)的自動優化逐漸成為焦點。具體來說,本文提出的“離散”提示優化涉及在給定的搜索空間內找到最佳的“自然語言”提示,以最大化任務準確性。基于LLMs的強大通用能力,自動提示優化顯示出了有希望的進展,其工作流程大致如圖4所示。我們將從傳統數學優化和智能算法優化的視角深入探討這個問題,因此將本節分為基于梯度的方法和基于進化的方法。
結論
在這項工作中,我們總結了用于LLMs的高效提示方法,目的是提高LLM的效率和性能。我們回顧了具有高度認可的現有相關工作,揭示了各類別內部的固有聯系,并從理論角度深度抽象這些方法。最后,我們為LLM實踐者提供了一個開源項目清單A.2,以便在科學研究和商業部署中快速參考,以及一個類型學圖A.3,以概覽高效提示領域。
大型語言模型(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系統更深入的理解力和更接近人類的語言能力,從而在廣泛的領域中開辟新的可能性。
檢索增強型生成(Retrieval-Augmented Generation, RAG) 將檢索方法與深度學習的進展結合起來,旨在解決大型語言模型(LLMs)的靜態限制,通過動態整合最新的外部信息。這種方法主要關注文本領域,提供了一個成本效益高的解決方案,用以改進LLMs生成的可能正確但實際錯誤的回答,從而通過使用真實世界數據提高其輸出的準確性和可靠性。隨著RAG在復雜性上的增長,并融入多個可能影響其性能的概念,本文將RAG范式組織為四個類別:預檢索(pre-retrieval)、檢索(retrieval)、后檢索(post-retrieval)和生成(generation),從檢索的視角提供了詳細的觀點。文中概述了RAG的發展,并通過分析重要研究討論了該領域的進展。此外,本文還介紹了對RAG的評估方法,討論了所面臨的挑戰,并提出了未來的研究方向。通過提供一個有組織的框架和分類,該研究旨在整合現有關于RAG的研究,闡明其技術基礎,并強調其擴展LLMs的適應性和應用潛力。
//www.zhuanzhi.ai/paper/64e819fddc014c8a615b8e9beb7c5deb
ChatGPT的出現因其交互能力和廣泛的應用而顯著影響了學術界和工業界,已成為領先的人工智能工具(Laskar等人,2023年;Jahan等人,2023年;Huang與Huang,2024年)。ChatGPT的核心是大型語言模型(LLM)GPT-4,正如(OpenAI等人,2023年)所詳述,它在其前身的基礎上進行了多項增強,展示了在各種自然語言處理(NLP)任務中的卓越能力(Laskar等人,2020年)。盡管有這些進步,LLMs的采用突顯了幾個關鍵問題,主要是由于它們依賴于大量數據集。這種依賴限制了它們在訓練后納入新信息的能力,導致三個主要挑戰。首先,側重于廣泛和通用數據以最大化可訪問性和適用性,結果在專業領域的性能不佳。其次,網絡數據的快速創建,加上數據注釋和模型訓練所需的大量資源,阻礙了LLMs的更新能力。第三,LLMs易于生成令人信服但不準確的回答,這種情況被稱為“幻覺”,可能會誤導用戶。 解決這些挑戰對于LLMs在各個領域的有效利用至關重要。一個有前景的解決方案是整合檢索增強型生成(Retrieval-Augmented Generation,RAG)技術,該技術通過在回應查詢時獲取外部數據來補充模型,從而確保輸出更準確、更及時。圖1演示了RAG如何使ChatGPT能夠提供超出其初始訓練數據的精確答案。自從Lewis等人(Lewis等人,2020b)在2020年引入RAG技術以來,特別是受到ChatGPT成功的影響,RAG技術已經取得了重大進展。然而,在文獻中關于RAG機制的徹底分析以及后續研究所取得的進展方面存在明顯的差距。此外,該領域的研究重點多樣,對類似方法使用的術語含糊其辭,導致混淆。本文旨在通過提供RAG的結構化概述、分類各種方法,并對這一研究領域提供深入理解,以闡明這些方面。本綜述主要關注RAG的文本應用,反映了當前這一領域研究工作的重點. RAG結合檢索方法和先進的深度學習來解決兩個主要問題:有效檢索相關信息和生成準確的回應。RAG的工作流程在第2節中概述,將方法分類為預檢索、檢索、后檢索和生成階段。從第3節到第6節,對這些階段內的技術進行了深入分析。第7節提供了所審查研究的總結,以及使用的檢索器和生成器。第8節詳述了RAG的評估方法。第9節探討未來研究方向,專注于基于文本的研究,并擴展到圖像和多模態數據的考慮。結論在第10節提出。 本文的貢獻有三個方面:本文為理解RAG領域提供了一個全面的框架,確定了改進的領域和未來研究的挑戰。它對RAG的核心技術進行了詳細分析,考察了它們在解決檢索和生成問題上的優勢。此外,它介紹了RAG研究中使用的評估方法,突出了當前的挑戰,并提出了未來研究的有希望的方向。 2 RAG框架
幻覺問題主要歸因于LLMs無法獲取最新信息的問題。這一限制源自模型依賴其訓練數據集。RAG通過利用檢索模型補充LLM的訓練數據與外部來源的當前信息,提出了解決這一問題的方案,從而使生成的回答更準確。RAG提供了一個成本效率更高的選擇,相比通常需要的大量訓練和微調過程而言。它允許通過傳統的檢索方法或預訓練的語言模型(LMs),動態地合并新鮮信息,無需直接將這些新數據整合到LLM中。這一特性使RAG具有靈活性和可擴展性,便于在不同的LLM上針對各種目的進行應用。通過RAG檢索的信息來自實際的人類編寫的數據,這不僅簡化了生成過程,還提高了生成回答的可靠性。圖2展示了統一的RAG框架以及基本工作流程和范式。 Khandelwal等人的研究(Khandelwal等人,2020年)表明,從訓練數據集本身獲取相關信息可以顯著提高LLM的性能,凸顯了RAG的有效性。隨著時間的推移,RAG已從提供補充信息的手段發展成為使檢索和生成組件之間進行多次交互的工具。這涉及進行多輪檢索以提煉檢索信息的準確性,并迭代提高生成輸出的質量。如LangChain1和LlamaIndex2等平臺已將RAG方法模塊化,增強了其適應性并擴展了應用范圍。盡管這些平臺采用多種方法解決RAG的不同方面——從多次搜索迭代到迭代生成——它們保持對基本RAG工作流程的遵守。這種一致性對于理解它們的操作和指明進一步發展的機會至關重要。
2.1 基本RAG工作流程RAG的基本工作流程從創建一個包含外部資源的索引開始。這個索引是基于特定查詢通過檢索模型檢索相關信息的基礎。最終步驟涉及一個生成模型,該模型將檢索到的信息與查詢結合,以產生所需的輸出。 2.1.1 索引高效的檢索始于全面的索引,其中數據準備是關鍵。這一階段涉及文本規范化過程,如分詞、詞干提取和停用詞移除,以增強文本的索引適用性(Manning等人,2008年)。然后,文本段落被組織成句子或段落,以便進行更有針對性的搜索,允許精確定位包含相關關鍵詞的段落。深度學習的整合通過使用預訓練的語言模型為文本生成語義向量表示,徹底革新了索引技術。這些向量被存儲,使從龐大的數據集中快速且精確地檢索成為可能,顯著提高了檢索效率。
2.1.2 檢索傳統的檢索方法,如BM25算法(Hancock-Beaulieu等人,1996年),側重于文檔排名的術語頻率和存在性,但通常忽視了查詢的語義信息。當前策略利用像BERT(Devlin等人,2019年)這樣的預訓練語言模型,更有效地捕捉查詢的語義本質。這些模型通過考慮同義詞和短語結構,提高搜索精度,通過檢測語義相似性來精細化文檔排名。這通常是通過測量文檔和查詢之間的向量距離實現的,將傳統檢索指標與語義理解結合,以產生既相關又符合用戶意圖的搜索結果。
2.1.3 生成生成階段的任務是產生既與查詢相關又反映檢索文檔中信息的文本。常用方法包括將查詢與檢索信息連接起來,然后輸入到一個LLM中進行文本生成(Li等人,2022年)。盡管確保生成文本的一致性和準確性面臨挑戰,但在嚴格遵循源材料和注入輸出創造性之間找到平衡也是必要的。生成的文本應準確傳達檢索文檔的信息并與查詢意圖一致,同時也提供引入未在檢索數據中明確包含的新見解或視角的靈活性。 2.2 RAG范式RAG范式在領域內組織研究,提供一個簡單而強大的框架以增強LLM的性能。RAG的核心是其搜索機制,對生成高質量結果至關重要。因此,從檢索角度看,這一范式被結構化為四個主要階段:預檢索、檢索、后檢索和生成。單跳和多跳檢索方法,包括迭代檢索-生成周期,遵循這四個階段的結構。圖3是RAG核心技術的分類樹。
2.2.1 預檢索檢索增強生成的預檢索階段為成功的數據和查詢準備奠定基礎,確保信息檢索的效率。這一階段包括準備有效數據訪問的必要任務。索引:過程從索引開始,建立一個有組織的系統,以實現信息的快速和準確檢索。索引的具體性取決于任務和數據類型。例如,針對問答系統,句子級索引有助于精確定位答案,而文檔級索引更適合于總結文檔以理解其主要概念和思想。查詢操作:索引后,進行查詢操作以更好地匹配索引數據。這涉及查詢重構(Jansen等人,2009年;Yu等人,2020年),它重寫查詢以更緊密地符合用戶意圖;查詢擴展(Huang等人,2013年),通過同義詞或相關術語擴展查詢以捕獲更相關的結果;以及查詢規范化,解決拼寫或術語上的差異以實現一致的查詢匹配。數據修改:數據修改在提高檢索效率方面也至關重要。這一步包括預處理技術,如移除無關或冗余信息以提高結果質量,并通過如元數據等附加信息豐富數據,以增強檢索內容的相關性和多樣性(Bevilacqua等人,2022a)。
2.2.2 檢索搜索與排名:檢索階段是搜索與排名的結合。它專注于從數據集中選擇和優先考慮文檔,以提高生成模型輸出的質量。這一階段使用搜索算法來導航索引數據,查找與用戶查詢匹配的文檔。識別相關文檔后,開始對這些文檔進行初步排名,按其與查詢的相關性進行排序。
2.2.3 后檢索后檢索階段旨在完善最初檢索的文檔,提高文本生成的質量。這一階段包括重新排序和過濾,每項都旨在優化文檔選擇以完成最終的生成任務。重新排序:在重新排序步驟中,之前檢索的文檔被重新評估、評分并重新組織。其目標是更準確地突出與查詢最相關的文檔,并降低不太相關文檔的重要性。這一步涉及結合額外的度量和外部知識源以提高精確性。在這種情況下,可以有效地使用精確度更高但效率較低的預訓練模型,因為可用的候選文檔集有限(Huang和Hu,2009年)。過濾:過濾旨在移除未達到特定質量或相關性標準的文檔。這可以通過幾種方法完成,例如設定最低相關性分數閾值以排除低于某一相關性級別的文檔。此外,使用用戶或先前相關性評估的反饋有助于調整過濾過程,確保只保留用于文本生成的最相關文檔(Khattab和Zaharia,2020年;Huang和Huang,2023年)。
2.2.4 生成生成階段是RAG流程的關鍵組成部分,負責利用檢索到的信息增強生成響應的質量。這一階段包括幾個旨在產生可讀、吸引人及富有信息量的內容的子步驟。增強:生成階段的核心是增強步驟,其目標是將檢索到的信息與用戶的查詢合并,創建一個連貫且相關的響應。這包括闡述過程,向檢索內容添加額外的細節以豐富它。努力專注于通過重述和重組等方法提高輸出的質量,增加其清晰度、連貫性和風格吸引力。將來自各種來源的信息結合在一起,提供全面的視角,并進行驗證,以確保內容的準確性和相關性。定制:定制是一個可選步驟,涉及調整內容以符合用戶的特定偏好或請求的上下文。這種調整包括根據目標觀眾的需求或內容呈現的格式調整內容,并壓縮信息以簡潔地傳達內容的本質。這個過程還包括創建強調關鍵點或論點的摘要或概要,確保輸出既信息豐富又簡潔。
提示工程已成為擴展大型語言模型(LLMs)和視覺-語言模型(VLMs)能力的不可或缺的技術。這種方法利用特定于任務的指令,即提示,以增強模型效能,而無需修改核心模型參數。與其更新模型參數,不如使用提示允許預訓練模型無縫集成到下游任務中,僅通過給定的提示來引出所需的模型行為。提示可以是提供上下文以指導模型的自然語言指令,或激活相關知識的學習向量表示。這一新興領域在各種應用中取得了成功,從問答到常識推理等。然而,對于多樣的提示工程方法和技術,仍缺乏系統的組織和理解。本綜述論文通過提供一個結構化的概覽來填補這一空白,概述了提示工程的最新進展,按應用領域分類。對于每種提示方法,我們提供了一個總結,詳細說明了提示方法、其應用、涉及的模型和使用的數據集。我們還深入探討了每種方法的優勢和限制,并包括一個分類圖和表格,總結了數據集、模型和每種提示技術的關鍵點。這種系統分析使人們能夠更好地理解這一迅速發展的領域,并通過闡明提示工程的開放挑戰和機會,促進未來的研究。
提示工程已成為增強預訓練大型語言模型(LLMs)和視覺-語言模型(VLMs)能力的關鍵技術。它涉及策略性地設計特定于任務的指令,這些指令稱為提示,用于引導模型輸出而不改變參數。提示工程的重要性特別體現在其對LLMs和VLMs適應性的變革性影響上。通過提供一種機制,通過精心設計的指令微調模型輸出,提示工程使這些模型能夠在不同的任務和領域中表現出色。這種適應性與傳統范式不同,在傳統范式中,通常需要模型重新訓練或廣泛的微調以達到特定任務的性能。這就是提示工程的變革性承諾,推動了AI的邊界,并為充滿可能性的未來開啟了大門。在不斷發展的環境中,持續的研究不斷揭示了提示工程內的創新方法和應用。提示工程的重要性通過其引導模型響應的能力得到了凸顯,增強了LLMs在多個行業的適應性和應用性。當代提示工程的景觀涵蓋了從零樣本和少樣本提示的基礎方法,到更復雜的“代碼鏈”提示等技術的一系列技術。提示工程的概念最初在LLMs中被調查和普及[Liu et al., 2023],[Tonmoy et al., 2024],[Chen et al., 2023],后來擴展到VLMs [Wu et al., 2023],[Bahng et al., 2022]。盡管LLMs和VLMs內的提示工程文獻廣泛,但尤其是關于以應用為中心的提示工程技術的系統概述,仍有顯著的空白。隨著提示工程的最近進步,迫切需要一項綜合性的調查,提供對當代研究中應用和進步的細致理解。這項調查深入探討了不斷演變的提示工程景觀,分析了29種不同技術,按其多樣的應用進行分類。采用系統性回顧方法,我們仔細研究了多種尖端提示方法的復雜性。我們的審查包括它們的應用、使用的語言模型和進行實驗的數據集,提供了關于提示工程不斷演變景觀的詳細和細致分析。此外,我們討論了這些技術的利弊,提供了它們相對效能的見解。我們揭示了一個全面的分類圖,闡明了這些技術如何導航LLM能力的廣闊領域。從語言生成和問答到代碼創建和推理任務,提示工程賦予了LLMs執行我們從未想象過的壯舉。通過彌合文獻中的現有差距,本調查旨在為研究人員和實踐者提供一個寶貴的資源,提供對最新發展的見解,并促進對提示工程不斷演變景觀的更深入理解。論文的結構如下:第2節介紹了從基礎到高級的提示工程技術,按應用領域分類;第3節提供了結論以及對未來研究努力的考慮。
提示工程 在本節中,我們根據應用領域組織了提示工程技術,并提供了從零樣本提示到最新進展的提示技術演變的簡明概覽。
無需廣泛訓練的新任務 零樣本提示零樣本提示為利用大型LLMs提供了一種范式轉變。這項技術[Radford et al., 2019]消除了對大量訓練數據的需求,轉而依賴于精心設計的提示來引導模型處理新任務。具體來說,模型在提示中接收到任務描述,但缺乏用于特定輸入-輸出映射訓練的標簽數據。然后,模型利用其預先存在的知識,基于給定提示為新任務生成預測。 少樣本提示少樣本提示與零樣本提示不同,后者不提供示例,少樣本提示為模型提供了少量輸入-輸出示例,以誘導對給定任務的理解[Brown et al., 2020]。即使提供幾個高質量示例,也已經提高了模型在復雜任務上的性能,與不提供演示相比。然而,少樣本提示需要額外的令牌來包含示例,這可能對較長文本輸入成為禁止性的。此外,提示示例的選擇和組成可以顯著影響模型行為,偏見如偏愛頻繁詞匯可能仍然影響少樣本結果。盡管少次樣本提示增強了復雜任務的能力,尤其是在像GPT-3這樣的大型預訓練模型中,但精心的提示工程對于實現最佳性能和減少意外模型偏差至關重要。 推理和邏輯 鏈式思維(CoT)提示LLMs面對復雜推理時常常遇到困難,限制了它們的潛能。為了彌補這一差距,[Wei et al., 2022]引入了鏈式思維(CoT)提示作為一種促進連貫和逐步推理過程的提示LLMs的技術。主要貢獻在于提出和探索CoT提示,展示了其在誘導LLMs產生更有結構和深思熟慮的響應方面,相比傳統提示的有效性。通過一系列實驗,作者展示了CoT提示的獨特品質,強調了其引導LLMs進行邏輯推理鏈的能力。這導致的響應反映了對給定提示的更深層理解。例如,提示會顯示多步數學字問題的推理過程和最終答案,并模仿人類如何將問題分解為邏輯中間步驟。作者通過使用PaLM 540B的CoT提示,在數學和常識推理基準測試中實現了最先進的性能,準確率達到90.2%。 自動鏈式思維(Auto-CoT)提示手動創建高質量的CoT示例既耗時又次優。[Zhang et al., 2022]引入了Auto-CoT,自動指導LLMs使用“讓我們逐步思考”的提示來生成推理鏈。認識到單獨生成的鏈中可能存在錯誤的可能性,Auto-CoT通過多樣化采樣增強了魯棒性。它為各種問題采樣并為每個問題生成多個不同的推理鏈,形成最終的示例集。這種自動化的多樣化采樣最小化了錯誤并增強了少次學習,消除了手動創建推理鏈的勞動密集型需求。Auto-CoT展示了提升的性能,在算術和符號推理任務上分別以平均準確率改善了1.33%和1.5%,使用GPT-3。 自我一致性 [Wang et al., 2022]引入了自我一致性,這是一種解碼策略,與貪婪解碼相比,提高了CoT提示中的推理性能。對于具有多個有效路徑的復雜推理任務,自我一致性通過從語言模型的解碼器中采樣生成多樣化的推理鏈。然后,通過邊緣化這些采樣鏈來識別最一致的最終答案。這種方法利用了一個觀察,即需要深思熟慮的分析的問題往往涉及更大的推理多樣性,從而導致解決方案。自我一致性和鏈式思維提示的結合在各種基準測試中取得了顯著的準確率提高,例如在GSM8K上提高了17.9%,在SVAMP上提高了11.0%,在AQuA上提高了12.2%,在StrategyQA上提高了6.4%,以及在ARC挑戰上提高了3.9%,與基線鏈式思維提示相比。 邏輯鏈式思維(LogiCoT)提示對于LLMs來說,執行邏輯推理對于解決多步驟的復雜問題至關重要。現有方法,如CoT提示,鼓勵逐步推理,但缺乏有效的驗證機制。[Zhao et al., 2023]提出了邏輯鏈式思維(LogiCoT)提示,一種神經符號框架,利用符號邏輯的原理來以連貫和結構化的方式增強推理。具體來說,LogiCoT應用了反證法的概念,以驗證模型生成的每一步推理,并提供有針對性的反饋以修正錯誤步驟。LogiCoT通過思考-驗證-修正循環,可以減少邏輯錯誤和幻覺。在Vicuna-33b和GPT-4上進行實驗,結果強調了LogiCoT在推理能力上的顯著增強,相比CoT,在GSM8K數據集上分別展示了0.16%和1.42%的改進,在AQuA數據集上分別展示了3.15%和2.75%的改進。 符號鏈式思維(CoS)提示由于依賴自然語言,LLMs經常難以處理涉及復雜空間關系的任務,自然語言容易受到歧義和偏見的影響。為了克服這一限制,[Hu et al., 2023]引入了CoS,使用濃縮符號而非自然語言。CoS提供了明確和簡潔的提示、提高了LLMs的空間推理能力和提高了人類的可解釋性。CoS面臨的挑戰包括可擴展性、通用性、與其他技術的集成以及基于符號的LLM推理的可解釋性。值得注意的是,CoS的實施顯著提高了ChatGPT的性能,在Brick World任務上的準確率從31.8%提高到了令人印象深刻的92.6%。此外,CoS在提示令牌上實現了高達65.8%的減少,簡化了過程的同時保持了高準確率。 樹形思維(ToT)提示[Yao et al., 2023a]和[Long, 2023]提出了樹形思維(ToT)框架,以增強對需要探索和預判推理的復雜任務的提示能力。ToT通過管理一個中間推理步驟的樹結構——稱為“思維”——來擴展CoT提示。每個“思維”代表一系列朝最終解決方案前進的連貫語言序列。這一結構允許語言模型通過評估“思維”在解決問題過程中產生的進展來有意地進行推理。ToT將模型產生和評估“思維”的能力與諸如廣度優先或深度優先搜索等搜索算法結合起來。這使得在推理鏈中進行系統探索成為可能,能夠預判擴展有前景的方向,并在解決方案錯誤時進行回溯。ToT在24點游戲任務中表現出色,成功率達到74%,相比于CoT的4%。此外,在單詞級任務中,ToT的成功率為60%,而CoT為16%。 思維圖(GoT)提示人類思維過程的固有非線性特征挑戰了CoT提示的傳統順序方法。[Yao et al., 2023b]引入了“思維圖”提示,這是一個基于圖的框架,其先進于傳統的順序方法,更好地與人類思維的非線性特征相匹配。這個框架允許動態相互作用、回溯和評估想法,允許從各個分支聚合和組合思維,脫離了樹形思維的線性結構。關鍵貢獻包括將推理過程建模為有向圖,提供具有多種轉換操作的模塊化架構。該框架被呈現為一種靈活和動態的語言模型提示方法,捕捉人類思維過程的復雜性并增強模型能力。GoT推理模型在CoT基線上顯示出顯著增益,在GSM8K上分別使用T5-base和T5-large改進了3.41%和5.08%的準確率。它還在使用T5-base的ScienceQA上比最先進的Multimodal-CoT提高了6.63%,使用T5-large提高了1.09%。 系統注意力(S2A)提示基于Transformer的LLMs中的軟注意機制容易納入不相關的上下文信息,不利地影響令牌生成。為此,[Weston和Sukhbaatar, 2023]提出了系統2注意力(S2A),利用LLMs的推理能力選擇性地關注相關部分,通過重新生成輸入上下文。S2A采用兩步過程來通過使用上下文再生和帶有精煉上下文的響應生成來增強注意力和響應質量。在包括事實QA、長形生成和數學字問題在內的各種任務中評估了S2A的有效性。在事實QA中,S2A達到了80.3%的準確率,顯示出在事實性方面的顯著增強。在長形生成中,它提高了客觀性,獲得了5分中的3.82分。 思維線索(ThoT)提示[Zhou et al., 2023]提出了思維線索(ThoT),一種旨在增強LLMs在混亂上下文中推理能力的提示技術。ThoT受到人類認知的啟發,系統地將廣泛的上下文檢查為可管理的片段,以便進行逐步分析,采用兩階段方法,其中LLM首先總結并檢查每個片段,然后精煉信息以得出最終響應。ThoT的靈活性作為一種多功能的“即插即用”模塊閃耀,增強了不同模型和提示方法的推理能力。在問答和對話數據集的評估中顯示了顯著的性能改進,分別為47.20%和17.8%,特別是在混亂的上下文中。 表格鏈式提示像CoT、PoT和ToT這樣的方法通過自由形式的文本或代碼表示推理步驟,面對處理復雜表格場景時遇到挑戰。[Wang et al., 2024]引入了一種開創性的提示技術,名為表格鏈式提示。這種方法通過動態生成和執行表格上的常見SQL/-DataFrame操作來使用逐步的表格推理。這一過程的迭代性增強了中間結果,賦予LLMs通過邏輯可視化的推理鏈做出預測的能力。顯著地,表格鏈式提示在兩個基準表格數據集上一致地提高了性能,分別在TabFact上提高了8.69%,在WikiTQ上提高了6.72%。 結論在人工智能領域,提示工程已成為一種變革性力量,解鎖了LLMs的巨大潛力。本綜述論文旨在作為一項基礎資源,系統地分類了29種不同的提示工程技術,基于它們的目標功能,激發進一步的研究,并在提示工程不斷演變的景觀中賦能創新者。分析涵蓋了應用、模型和數據集,揭示了每種方法的優勢和局限性。此外,我們添加了一張圖表和一張表格來突出重要點。盡管取得了顯著的成功,但仍然存在挑戰,包括偏見、事實不準確和可解釋性差距,需要進一步調查和緩解策略。提示工程的未來擁有巨大潛力,新興趨勢如元學習和混合提示架構承諾提高能力。然而,倫理考慮至關重要,強調負責任的開發和部署,以確保積極地融入我們的生活。
表格推理旨在根據提供的表格以及可選的表格文本描述,按照用戶需求生成相應的問題答案,有效提高獲取信息的效率。近來,使用大型語言模型(LLMs)已成為表格推理的主流方法,因為它不僅顯著降低了注釋成本,還超過了以往方法的性能。然而,現有研究仍然缺乏基于LLM的表格推理工作的總結。由于現有研究的缺乏,哪些技術可以在LLMs時代提高表格推理性能、LLMs為何在表格推理上表現出色、以及如何在未來增強表格推理能力的問題,仍然大部分未被探索。這一差距顯著限制了研究進展。為了回答上述問題并推進LLMs下的表格推理研究,我們呈現了這篇綜述,以分析現有研究,激發未來的工作。在這篇論文中,我們分析了在LLM時代用于提高表格推理性能的主流技術,以及LLMs相比于LLMs之前的模型在解決表格推理問題時的優勢。我們從現有方法的改進和實際應用的擴展兩個方向提供研究指導,以激發未來的研究。
大型語言模型(LLMs)的出現代表了自然語言處理(NLP)領域的一個顯著突破,為文本理解和生成方面的顯著進展做出了貢獻。然而,在這些進展中,值得注意的是,LLMs在上下文長度外推方面常常面臨限制。理解并擴展LLMs的上下文長度對于提高它們在各種NLP應用中的性能至關重要。在這份調查報告中,我們深入探討了為什么它是重要的多方面因素以及卓越技術可能為NLP應用帶來的潛在變革。我們研究了與擴展上下文長度相關的固有挑戰,并對研究人員采用的現有策略進行了有組織的概述。此外,我們討論了評估上下文擴展技術的復雜性,并強調了研究人員在該領域面臨的未解之謎。此外,我們探討了研究社區是否就評估標準達成共識,并確定了需要進一步協商的領域。這份全面的調查旨在為研究人員提供有價值的資源,引導他們了解上下文長度擴展技術的細微之處,并促進對這一不斷發展領域未來進展的討論。
大型語言模型(LLMs)的成功案例隨處可見,隨著現代LLMs的出現,它們顯著推動了眾多自然語言處理(NLP)挑戰的發展,達到了前所未有的高度。科學努力的自然進展是朝著新的和具有挑戰性的領域前進。在雄心勃勃的倡議中,一個值得注意的努力是擴展LLMs的可理解性以包括非常長的上下文。OpenAI提出了128頁上下文可理解性的概念,而Anthropic最近提出了超過200頁的更長上下文。然而,這些商業發布和公告中存在顯著的科學嚴謹不足。在這個背景下,引發了幾個問題:(a) 有哪些應用需要理解如此擴展的上下文?(b) 當LLMs理解更長的上下文時,我們如何有效地衡量應用程序的改進性能?(c) 雖然注意力機制在NLP中得到了廣泛研究,但是否需要設計一種專門針對更長上下文的新型注意力形式?
采用旨在處理長上下文的高級技術有望重塑語言模型的格局。改進的長上下文管理方法可以提高模型性能,從而實現更準確和細致入微的語言理解。這些進步有望增強模型捕捉長距離依賴性的能力,從而提高其在各種語言任務中的整體有效性,如:(接下來列舉具體的任務)。
? 文檔摘要:改進長上下文處理有助于更加連貫和簡明地進行文檔摘要,捕捉擴展文本段落中的關鍵信息,并提高生成摘要的質量。全面理解整個文檔,同時識別關鍵詞和主題,需要熟練管理廣泛的上下文范圍。在這種情況下使用較短的窗口將限制生成能力,可能導致關鍵細節的忽視。此外,使用較長的上下文窗口有助于減少歧義,因為它妨礙了沒有對文檔的復雜性進行全面把握的情況下利用微妙信息。這反過來使LLM能夠以更高的洞察力和準確性進行摘要過程的導航。
? 問答系統:考慮長上下文的能力提高了模型對復雜的問答關系的理解,從而產生更準確和上下文相關的回答。此外,LLMs在處理問答任務方面表現出更高的熟練度,因為解決代詞的共指問題與上下文實體密切相關。此外,在面對多輪對話時,擴展上下文窗口在促進連續對話中話題一致性跟蹤方面發揮了關鍵作用。
? 語言翻譯:在更大文本段落中改進上下文保留增強了模型提供準確翻譯的能力,特別是在上下文微妙性起關鍵作用的情況下。多義詞匯在翻譯領域(Falkum和Vicente,2015)中構成了重要障礙,而擴展上下文窗口是在上下文中定位這種詞匯的明顯輔助。此外,在面對技術術語時,LLMs在擁有擴展的輸入范圍時表現出更高的效能,尤其是在容納特定領域上下文微妙性方面。
? 指代消解:高級處理長上下文有助于解決擴展文本跨度內對實體的引用,從而提高了指代消解的準確性。指代消解過程涉及建立代詞與其對應的先行詞之間的聯系。LLMs中上下文窗口的擴展有助于更全面地評估信息,因此通過包括遠程引用和上下文相關的詳細信息來協助精確的代詞解析。
? 對話型人工智能:通過長上下文模型促進對擴展對話的更好跟蹤和理解,可以在對話型人工智能系統中產生更具上下文適應性的回應。擴展上下文窗口在為LLMs定位幽默、諷刺或微妙表達在對話環境中的作用方面起到關鍵作用。這對于生成符合正在進行的對話中的語氣和風格微妙之處的回應至關重要。
盡管持續的研究工作,仍然缺乏一份全面的涵蓋了用于外推上下文長度的技術范圍的概述。此外,LLMs的不斷發展已經引入了用于外推上下文長度的創新方面,這給現有的擴展方法帶來了挑戰,并強調了需要全面、多樣化的外推方法的必要性。 本文標志著LLMs上下文長度擴展技術的第一次全面調查。如圖1所示,我們深入研究了在微調期間可以實現的上下文長度擴展的現有工作。隨后,我們探討了LLMs上下文長度外推的潛在未來挑戰。 當代技術 已經引入了多種方法來增強LLMs的上下文能力。為了進行系統分類和增強清晰度,我們提出了一個分類法,如圖1所示。該分類法劃分為兩個主要類別:插值和外推技術。插值包括從不同的來源或上下文中融合信息以提高預測精度。這種技術適用于混合來自不同文本段落或包含不同上下文長度的不同模型的信息。相反,外推涉及對觀察數據的范圍之外的值進行預測,旨在擴展模型的理解能力超出其規定的訓練上下文長度。然后,還有用于進一步分類的零樣本(Rashid等人,2021)和微調技術。分類法中的其他小節將在隨后的部分中討論。
位置技術
與絕對位置嵌入不同,相對位置嵌入是基于鍵(keys)和查詢(queries)之間的差異制定的(Shaw等人,2018)。相對位置嵌入的一種普遍變體在Transformer-XL中引入(Dai等人,2019b;Yang等人,2019)。計算鍵和查詢之間的注意力得分已經改變,以集成與相對位置對應的可訓練嵌入。與絕對位置嵌入相比,配備相對位置嵌入的Transformer展示了能夠推廣到超出訓練中遇到的長度的序列的能力,表現出了外推的熟練性(Press等人,2021b)。與位置編碼相關的一個重復約束是無法擴展到訓練期間觀察到的上下文窗口之外。已經進行了一些工作來克服這些限制。
外推在這次探索中,我們將其分類并深入探討了兩種主要策略:外推和插值。外推技術旨在擴展模型對超出其最初觀察到的長度的序列的理解,采用創新策略來捕捉在擴展范圍內的依賴關系。另一方面,插值技術集中于改進模型在觀察范圍內平滑擴展對上下文的理解能力,從而提高了在最初遇到的上下文長度內的序列性能。以下部分詳細介紹了每個類別內的技術,提供了有關應對LLMs上下文長度動態特性所采用的多種方法的見解。
插值在上下文長度外推的背景下,插值技術專注于對模型進行微調或優化,以有效處理在訓練期間遇到的上下文長度范圍內的序列。重點是改進模型平滑擴展其對觀察范圍內上下文的理解能力,從而提高其在最初遇到的上下文長度內序列的性能。這些技術有助于更加微妙和改進的上下文理解,確保模型在訓練期間接觸到的上下文長度內表現最佳。
總結而言,本文全面審查了擴展LLMs上下文長度的多種技術和方法。所提供的分類法將這些方法分為兩種廣泛的策略 - 外推和插值。外推技術旨在擴展模型處理超出其最初訓練上下文長度的序列的能力。這包括利用專門組件,如位置編碼、注意機制和記憶增強來實現即時泛化的零樣本方法。還探討了微調策略,以使模型適應在預訓練期間未遇到的更長上下文。插值技術專注于優化模型,以在觀察訓練長度內平滑擴展上下文理解。專門的注意機制和提示壓縮有助于高效處理長上下文。微調插值適應模型以在序列開始超過訓練長度時實現優雅過渡。本調查提供了有關技術的多樣性的見解,涵蓋提示工程、注意機制、位置編碼和記憶增強等領域。它突出了模型體系結構和訓練方法的創新,旨在解決上下文長度的限制。廣泛的經驗分析證實了這些多樣化技術在基準測試和下游任務上的有效性。通過提供結構化分類法和對現有文獻的綜述,本文有助于更清晰地理解LLMs上下文長度擴展領域的不斷演變。討論確定了有前景的研究方向,強調了繼續努力開發能夠處理廣泛上下文信息的模型的重要性。隨著對長篇文本生成和對大型語料庫進行推理的興趣不斷增加,改進的上下文處理將在未來幾年繼續是一個活躍的研究領域。
語言模型,特別是預訓練的大型語言模型,在作為少示例上下文學習者(ICL)方面展示了顯著的能力,擅長僅通過輸入上下文中的幾個示例適應新任務。然而,模型執行ICL的能力對少示例演示的選擇非常敏感。與其使用固定的示例集,一種新的發展趨勢是檢索針對每個輸入查詢定制的示例。演示檢索的實現相對直接,利用現有的數據庫和檢索系統。這不僅提高了學習過程的效率和可擴展性,而且已顯示出減少手動示例選擇中固有偏見的潛力。鑒于這些鼓舞人心的結果和使用檢索示例的ICL領域的研究日益增長,我們進行了這一領域研究的廣泛綜述。在這篇綜述中,我們討論并比較了不同的檢索模型設計選擇、檢索訓練程序和推理算法。
少示例上下文學習(ICL)是大型語言模型(LLMs)在給定新任務的幾個輸入-輸出示例或演示以及實際任務輸入時,執行新任務的能力。重要的是,模型參數不需要針對新任務進行微調。ICL的流行源于對預訓練大型語言模型的研究,這些模型可以在沒有被訓練執行ICL的情況下執行ICL(Brown et al., 2020),盡管較小的語言模型也可以被明確訓練以執行ICL(Min et al., 2022a)。ICL相較于傳統方法(即先進行初始預訓練,然后進行下游任務的微調)在適應語言模型到下游任務方面有幾個優勢。ICL的一個顯著優點是避免了微調,這在由于無法訪問模型參數或計算資源限制的情況下可能無法實現(Brown et al., 2020)。此外,ICL避免了微調常見的問題,例如過擬合(Ying, 2019; Kazemi et al., 2023a)。與參數高效微調方法(PEFT)相比(Hu et al., 2021; Dettmers et al., 2023; Lester et al., 2021),ICL在計算上更經濟,且保持模型參數不變,從而保持了LLMs的通用性。早期ICL實現使用針對每個目標任務的固定示例集。這些示例可以由人工精心制作(Hendrycks et al., 2021; Wei et al., 2022; Kazemi et al., 2023b),從訓練數據中隨機選擇(Brown et al., 2020; Lewkowycz et al., 2022),或基于復雜度或信息內容等指標選擇(Fu et al., 2022; Hongjin et al., 2022; Li and Qiu, 2023a; Wang et al., 2023b)。此類示例的有效性受到示例質量、數量和排序等因素的影響。重要的是,這些示例保持與上下文無關(即不管查詢如何,都使用相同的示例),這可能阻礙釋放LLMs的真正潛力。
基于檢索的ICL(RetICL)在優化語言模型性能方面呈現了一種范式轉變,從靜態、預定義的示例集轉向動態、與上下文敏感的方法。這一創新的核心是自適應示例選擇的概念,其中專門的檢索器為每個具體任務輸入智能地策劃定制示例。這種方法不僅一致地優于依賴隨機或靜態手工制作示例的方法,而且還顯示出對多種影響因素的顯著抵抗力。RetICL的有效性取決于所選示例的“相關性”和“有用性”,這一過程受到多個因素的復雜影響。這些包括檢索器的性質(從通用的現成模型到精細調整的特定領域變體)、檢索語料庫的來源和多樣性、檢索器的目標(專注于相似性或多樣性)以及集成多個示例的策略。在過去兩年中,眾多有時并行的研究已經研究了RetICL,每個研究使用不同的術語,并在問題定義和隨后的方法論上有所不同,使得理解RetICL的當前研究和實踐狀態,特別是對于該領域的新手來說,變得困難。在這篇全面的綜述中,我們詳細分析了RetICL領域的22篇開創性論文(如表1所示),并對其主要構建模塊進行了分類(見圖1)。我們的工作不僅提供了現有研究的全面綜合,而且強調了RetICL在超越以往ICL方法方面的重要領域,并為該領域未來的創新照亮了許多前進的道路,因此成為ICL的關鍵資源。
少樣本上下文學習的語言模型神經語言模型(LM)的增強能力催生了一種新的自然語言處理(NLP)問題學習范式。從歷史上看,NLP問題的主導學習范式是從頭開始對特定任務的數據進行模型訓練。因此,對于每一個新任務,模型都必須從頭開始學習。這通常導致泛化能力較差,尤其是在測試時遇到之前未觀察到的詞匯的情況下。在隨后的范式中,首先在大量文本語料庫上預訓練一個LM,使其了解語言如何運作并獲得關于世界的大量知識(Petroni et al., 2019; Lin et al., 2020; Sung et al., 2021; Yuan et al., 2023);然后再在新任務的數據上進一步對預訓練的LM(PLM)進行微調(Sarzynska-Wawer et al., 2021; Devlin et al., 2018),從而教會通用的PLM新任務的特定內容。這一范式通常導致學習速度更快和預測性能更高。后來的研究表明,對PLM進行多任務微調可以更好地實現任務間知識轉移,并可能導致在新任務上的性能提升(Raffel et al., 2020)。隨著預訓練大型語言模型(LLMs)的規模和用于預訓練這些模型的數據集規模的增大,人們發現預訓練的LLMs(為簡潔起見,以下簡稱為LLMs)具有通過少量示例在上下文中學習的顯著能力(Brown et al., 2020)。也就是說,LLMs被證明能夠僅通過在輸入中看到幾個新任務的示例來適應新任務,而不需要額外的訓練數據或微調。這通常被稱為少示例上下文學習。
與上述涉及預訓練后進行微調的大型語言模型(LLMs)使用方法相比,上下文學習(ICL)提供了幾個關鍵優勢。首先,由于對LLM的訪問受限、計算資源不足或數據標記不充分(Brown et al., 2020),微調可能并不總是可行的,而ICL則需要更少的資源、更少的數據,并且通過API調用更易于服務。此外,ICL避免了常與微調相關的問題,如過擬合或沖擊(Ying, 2019; Kazemi et al., 2023a),因為它不修改模型的參數,使其保持通用性。
**什么構成了好的演示?**許多研究試圖提供理論上的解釋和洞見,來說明大型語言模型(LLMs)是如何從少量上下文演示中學習的(Xie et al., 2021; Garg et al., 2022; Von Oswald et al., 2023)。然而,這種能力背后的確切原因仍然不甚明了,這使得選擇最佳的少示例演示變得困難。幸運的是,各種實證結果展示了少示例演示對LLMs預測準確性的影響,并就準備它們的最佳實踐提供了建議。這些研究還展示了LLMs在選擇、格式和少示例演示順序方面的脆弱性。在此,我們描述了其中一些更為顯著的研究。
演示數量:大型語言模型(LLMs)通常受益于更多的演示,但隨著演示數量的增加,改進的速度通常會減少(Brown et al., 2020; Ye et al., 2023b; Min et al., 2022b)。生成任務比分類任務更能從增加的演示數量中受益(Li et al., 2023)。增加演示數量的一個障礙是LLM的最大上下文大小。盡管隨著新型LLM的出現,上下文的大小一直在增加,但對于文本輸入較長的數據集或分類數據集中類別較多的情況,這可能仍然是個問題。
演示格式:不同的工作表明,提示的格式和措辭在LLM的性能中起著至關重要的作用(Jiang et al., 2020; Shin et al., 2020; Kojima et al.; Yang et al., 2023)。例如,Kojima等人展示了僅在提示中添加“讓我們一步一步思考”可以使LLM逐步推理并解決更多問題,Weller等人(2023)展示了在提示中添加“根據維基百科”可以使其更具事實性。此外,Min et al.(2022b)指出,除了文本格式,標簽空間和演示中的輸入文本分布也非常重要。
演示順序:演示的順序已被證明會顯著影響模型性能。例如,Lu et al.(2022b)表明,在某些任務上,模型性能可能會根據提示的順序從接近隨機到最先進水平不等,而Zhao et al.(2021)表明,在提示的末尾出現的答案更可能被模型預測。演示多樣性:少示例學習成功的另一個重要因素是演示的多樣性。Naik et al.(2023)提出了DiversePrompting方法,其中對于演示的問題,使用LLM生成解決問題的不同方法,然后將這些解決方案用于提示。Zhang et al.(2022b)建議選擇一個多樣化的問題集作為少示例。Ma et al.(2023)提出了一個公平性指標用于選擇演示,鼓勵選擇多樣化的少示例演示,以產生對語義自由輸入的近似均勻預測分布。
思維鏈(CoT):已有研究表明,包含答案的理由顯著提高了模型性能,尤其是對于超過特定大小的模型(Suzgun et al., 2022)。這種理由通常被稱為思維鏈(CoT)(Wei et al., 2022)。在CoT提示的情況下,演示通常格式化為: 查詢:qi,理由:ri,答案:ai其中理由出現在最終答案之前。已有多項研究探討了CoT提示的有效性原因以及如何改進提示和理由(Wang et al., 2022a; Lanham et al., 2023)。
使用檢索演示的上下文學習傳統上,所有查詢都使用相同的少示例演示集,這在查詢之間存在高度變化時可能并不理想。另一種方法是檢索針對當前查詢定制的少示例演示。先前的工作表明,與手工策劃或隨機選擇的演示相比,演示檢索在任務指標上帶來了顯著改進(Luo et al., 2023; Ye et al., 2023a)。此外,當使用檢索的演示時,已經證明大型語言模型(LLMs)對于演示順序等因素(第2.2節)變得不那么敏感(Li et al., 2023)。本節提供了基于檢索的上下文學習(RetICL)的概述。我們首先定義了使用檢索演示的上下文學習。正式地,給定一個查詢q?和一個檢索語料庫C,演示檢索器DR選擇一組演示{d1, . . . , dk} ~ C,其中每個演示為di = (qi, ai)。大型語言模型(LLM)的輸入序列變為(d1, . . . , dk, q?)。檢索器的目標是選擇能最大化正確答案a?概率的演示。RetICL的成功取決于多個因素。本節探討了設計選擇,包括檢索目標、檢索推理策略和檢索語料庫。然后在第4節和第5節中,我們探索了檢索器模型以及如何訓練它們以適應下游任務。
檢索目標:
相似性與多樣性為了選擇和定制適合大型語言模型(LLMs)的上下文示例,已經探索了各種檢索目標(Luo et al., 2023; Rubin et al., 2022; Ye et al., 2023a; Dalvi et al., 2022; Cheng et al., 2023; Li et al., 2023)。選擇演示的兩個主要檢索目標是相似性和多樣性。相似性涉及選擇最類似于查詢的演示,并可基于語言相似性(術語匹配或語義匹配)、結構方面(句子結構、推理結構等)或其他標準。大多數研究關注語言相似性,較少涉及結構相似性,這通常是由于在許多任務中提取查詢結構的挑戰(Levy et al., 2022)。除了相似性,一些工作發現演示的多樣性很重要。多樣性的動機包括避免重復的演示(Zhang et al., 2022b),帶來不同的視角(Yu et al., 2023),以及最大化演示對測試查詢的覆蓋,無論是覆蓋其詞匯還是句法結構(Levy et al., 2022)。衡量多個演示的多樣性是一個主要的技術挑戰。Ye et al. (2023a) 應用了決定性點過程(DPP)這一概率模型來衡量負相互作用(Kulesza et al., 2012),以衡量多樣性。Levy et al. (2022) 發現當模型對輸出符號空間不熟悉時,多樣性和覆蓋是重要的。值得注意的是,研究人員發現,在某些情況下,上下文學習(ICL)更多地從更高復雜性的演示中受益(Fu et al., 2022),其中復雜性是根據查詢長度或推理步驟定義的。然而,Fu et al. (2022) 使用啟發式規則來定義復雜性并相應地預選演示。他們的研究表明,使用基于相似性的檢索器在特定的數學推理任務中提高了性能。這可能表明結合相似性和復雜性考慮可能是增強推理任務方法的一個有前景的策略。
現成演示檢索器為了實現上述檢索目標,研究人員探索了各種類型的演示檢索器。典型的演示檢索器將檢索語料庫中的示例和查詢編碼為一些向量表示,然后計算候選演示嵌入和查詢嵌入之間的相似度度量(例如余弦相似度),以定位最相關的演示。鑒于對檢索演示增強大型語言模型(LLMs)性能的底層機制理解有限,最初的研究工作集中在對這一任務現成可用的檢索器進行啟發式評估。后續研究努力探索了特別為檢索演示而定制的基于學習的檢索器的設計和開發。本節回顧了代表性的現成模型,我們將在第5節討論基于學習的模型。
微調的演示檢索器盡管現成的檢索器在llm的檢索演示中顯示出了一些希望,但現成的檢索器給出的檢索演示可能不能代表任務的性質以及一般應如何解決任務。因此,它可能會導致次優性能。因此,研究人員已經開始探索基于學習的方法,以進一步突破邊界。設計一個好的演示檢索器的典型目標是:如果LLM發現一個演示在用作演示示例時有用,則應該鼓勵檢索器將演示排序更高。這使得我們可以直接依賴感興趣任務中的查詢和輸出對的信號來訓練模型,而無需人工注釋。為了開發演示檢索器,大多數方法利用當前的雙編碼器模型(Karpukhin等人,2020;Ni et al., 2021)。關鍵的變化在于收集訓練數據和制定訓練目標的方法。我們將在后續章節中更詳細地探討這些方面。在這里,我們總結了各種檢索器模型的優點和缺點。現成的檢索器易于使用,無需進行下游任務的微調,通常表現比隨機演示更強大。唯一的例外是在常識推理任務中,Zhang等人(2022b)和Ye等人(2023a)發現對于這些任務,隨機演示始終比檢索方法更好。Cheng等人(2023)還表明,檢索到的演示對常識推理和共指解析任務產生了不利影響。在現成的檢索器的三個類別中,如BM25等稀疏檢索器更具索引效率。這個特性在處理大量演示和有限的硬件內存時特別有價值,使得在這種情況下BM25成為首選。相比之下,基于句子嵌入相似性的方法和基于雙編碼器的檢索系統,這些方法在語言任務上訓練,更擅長捕捉更語義上關注的檢索結果。就性能而言,Luo等人(2023)在5個任務中比較了BM25和雙編碼器(GTR),發現這兩者的平均性能非常相似(在0.5%的差異范圍內),在某些任務中BM25勝過雙編碼器,反之亦然。在另一項研究中,Ye等人(2023a)觀察到了類似的趨勢,強調沒有單一的檢索器在不同任務中始終表現優于其他檢索器。Rubin等人(2022)和Li等人(2023)發現,在語義解析任務中,BM25要優于SBERT,而Li等人(2023)發現,在情感分析任務中,SBERT要優于BM25。然而,經過微調的檢索器在性能上表現出優勢,相對于現成的檢索器。經過微調的檢索器的主要缺點在于獲取訓練數據的成本較高。
此外,采用任務特定的檢索器的常見做法使系統變得復雜,并限制了其通用性。Li等人(2023)提出了訓練通用檢索器的概念,該檢索器在大多數任務上表現優于任務特定的演示檢索器(例如EPR(Rubin等人,2022))。
結論
本調查集中討論了使用檢索到的示例進行少樣本上下文學習(ICL)的方法,這是檢索增強生成(RAG)的關鍵方面。我們概述了各種檢索策略、多樣化的檢索模型、檢索池、訓練演示檢索器的技術以及應用。基于對當前趨勢的全面了解,我們提出了增強這一方法的有效性和功能性的一些有前途的未來發展方向。
近年來,大型語言模型(LLMs)因其出色的理解、分析和基于其廣泛知識和推理能力的文本生成能力,已經重塑了學術和工業領域。盡管如此,LLMs的一個主要缺點是由于其前所未有的參數量,其預訓練的計算成本相當高。當需要經常向預訓練的模型中引入新知識時,這一缺點會被放大。因此,開發有效且高效的技術來更新預訓練的LLMs至關重要。傳統方法通過直接微調將新知識編碼到預訓練的LLMs中。然而,重新訓練LLMs可能在計算上很密集,并且面臨退化與模型更新無關的寶貴預訓練知識。最近,基于知識的模型編輯(KME)受到了越來越多的關注,其目的是精確修改LLMs以納入特定的知識,而不負面影響其他無關的知識。在這次綜述中,我們旨在提供關于KME領域近期進展的全面且深入的概述。我們首先介紹KME的一般公式,以涵蓋不同的KME策略。之后,我們根據新知識如何被引入到預訓練的LLMs中提供了KME技術的創新分類,并研究現有的KME策略,同時分析每個類別的方法的關鍵見解、優點和局限性。此外,相應地介紹了KME的代表性指標、數據集和應用。最后,我們對KME的實用性和剩余挑戰進行了深入的分析,并建議在這一領域進一步發展的有前景的研究方向。
近期,大型語言模型(LLMs)已成為一個熱門話題,徹底改變了學術界和工業界[10, 78, 106, 122]。通過在大型語料庫上進行預訓練,獲得了大量的事實知識和推理能力,LLMs展示了對文本信息的前所未有的理解,能夠像人類專家一樣分析和生成文本。然而,LLMs的一個主要缺點是由于參數數量龐大,訓練過程的計算開銷極高。隨著世界的不斷進化,經常出現更新預訓練LLMs以糾正過時信息或納入新知識以保持其相關性的需求,這使得該問題進一步加劇[124]。例如,在圖1中,一個過時的LLM無法準確描述Lionel Messi的最新成就,這需要明確注入新知識以生成正確的答案。
更新預訓練的大型語言模型(LLMs)的一個可行而直接的策略是通過樸素的微調[15, 26, 103, 116],在此,預訓練LLMs的參數直接被優化,以從新數據中編碼新知識[5, 72, 80, 122]。例如,提出了各種基于指令調整的方法,以在新收集的語料庫上以有監督的學習方式微調預訓練的LLMs[73, 81, 112, 114]。盡管這樣的微調技術被廣泛使用,并且能夠將新知識注入到LLMs中,但它們因以下缺點而聞名:(1) 即使提出了一些參數高效策略來提高效率[66, 113, 120],微調LLMs可能仍需要大量的計算資源[70, 75, 123]。 (2) 細調模型可能會過擬合新數據,尤其是當用于細調的數據集規模較小時[19, 71, 74]。 (3) 更重要的是,微調LLMs會不受約束地改變預訓練的權重,這有可能喪失LLMs中的寶貴現有知識[24, 48, 69]。這些挑戰限制了使用微調技術更新LLMs新知識的實用性。
為了解決更新LLMs的微調的缺點,更多的注意力已被賦予基于知識的模型編輯(KME),也被稱為知識編輯。一般來說,KME旨在精確修改預訓練LLMs的行為,以更新特定的知識,而不負面影響與更新無關的其他預訓練知識[85, 111, 119]。在KME中,LLMs中特定知識的更新通常被制定為一個編輯,例如將“誰是美國總統?”的答案從“特朗普”更正為“拜登”。關于特定的編輯,KME策略通常通過引入輔助網絡(或一組參數)到預訓練模型[41, 63, 124],或更新(部分)參數以存儲新知識[16, 39, 40, 64]來修改模型輸出。通過這些策略,KME技術可以在內存中存儲新知識或在模型參數中定位它進行更新,從而精確地將知識注入模型。此外,某些方法還引入明確的損失以包含更新過程,從而使編輯后的模型在未修改的知識上保持一致的行為。借助這些優勢,KME技術可以提供一種高效且有效的方法,不斷地用新知識更新LLMs,而無需明確地重新訓練模型。
盡管KME與微調策略有某些相似之處,但它在更新LLMs方面具有獨特的優勢,值得深入研究。特別是,KME和模型微調都尋求通過注入新知識來更新預訓練的LLMs。然而,除了這一共同目標外,KME更加關注兩個關鍵屬性,這兩個屬性不能容易地由微調來解決。 (1) 局部性要求編輯過的模型不會無意中影響具有不同語義的其他不相關輸入的輸出。例如,當有關美國總統的編輯得到更新時,編輯過的模型不應改變其關于英國首相的知識。KME方法的實用性在很大程度上依賴于它們維持與不相關輸入的輸出的能力,這是KME和微調之間的主要區別[86]。 (2) 通用性代表編輯過的模型是否可以泛化到與編輯知識相關的更廣泛的輸入范圍。具體來說,它表示模型在具有語義相似性的輸入上表現出一致行為的能力。例如,當模型關于總統的部分被編輯時,對總統配偶的查詢的答案也應相應地改變。在實踐中,確保KME方法使編輯過的模型能夠很好地適應這些相關的輸入文本是很重要的。總之,由于這兩個獨特的目標,KME仍然是一個具有挑戰性的任務,需要特定的策略才能獲得令人滿意的有效性。
與現有綜述的區別:已經進行了幾次綜述來檢查(大型)語言模型的各個方面[11, 29, 51, 53, 104, 122]。盡管如此,仍然缺乏徹底的綜述,可以全面涵蓋現有的文獻和LLM編輯領域的持續進展。例如,最近的工作[73, 114]已經討論了在預訓練的LLMs中使用更多的數據樣本合并新知識的微調策略。然而,KME的獨特性,即局部性和普遍性,并沒有得到充分的討論,這將在這次綜述中得到徹底的分析。另外兩項綜述[30, 47]回顧了知識增強的語言模型。但是,他們的主要關注點是利用外部知識來增強預訓練的LLMs的性能,而沒有解決基于特定知識的編輯任務。據我們所知,與我們的綜述最相關的論文是[119],它提供了KME的簡要概述,并簡潔地討論了KME方法的優勢和它們的挑戰。盡管如此,這項綜述缺乏對KME的更多細節,例如分類、數據集和應用程序的徹底審查。另一項最近的工作[111]提出了一個統一了幾種代表性方法的KME框架。這項工作側重于KME技術的實現,而對不同策略的技術細節的重視較少。最近,一項工作[85]討論了KME方法在編輯模型的忠實性方面的局限性,而它相對較短,缺乏對所有現有方法的更全面的介紹。考慮到KME技術的快速進展,我們認為有必要回顧所有代表性KME方法的細節,總結共同點,同時討論每種方法的獨特性,并討論KME領域的開放挑戰和前瞻性方向,這將促進該領域的進一步發展。
本次綜述的貢獻:本次綜述提供了對預訓練LLMs的編輯技術、挑戰和機會的全面和深入的分析。我們首先提供了KME任務的概述,以及一個創新的公式化。特別是,我們將一般的KME任務公式化為一個受限制的優化問題,同時結合了準確性、局部性和普遍性的目標。然后,我們將現有的KME策略分類為三個主要類別,即外部記憶、全局優化和局部修改。重要的是,我們證明了每個類別中的方法都可以被公式化為一個專門的受限制的優化問題,其中的特性基于一般的公式化理論總結。此外,我們提供了關于每個類別中方法的有效性和可行性的有價值的見解,這可以幫助實踐者選擇最適合特定任務的KME方法。我們對KME方法的優點和缺點的分析也為KME研究社區的持續進展起到了催化劑作用。總之,我們的主要貢獻可以總結為以下三個方面:
?** 新的分類法**:我們引入了一個全面和結構化的分類框架,系統地總結了LLM編輯的現有工作。具體來說,基于如何將新知識引入預訓練的LLMs,我們的分類包括三個不同的類別:外部記憶、全局優化和局部修改,其中這些類別的共性和差異在這次調查中都得到了徹底的討論。
? 深入分析:我們將LLM編輯任務公式化為一個受約束的優化問題,其中每個類別的方法都可以被視為具有細化約束的特殊情況。此外,我們強調了每個類別的主要見解、優點和局限性。在這個背景下,我們深入研究了每個類別的代表性方法,并系統地分析了它們之間的聯系。 ? 未來方向:我們分析了現有KME技術在各種數據集和應用程序中的實用性。我們還全面討論了現有KME技術的挑戰,并提出了未來探索的有前景的研究方向。
本文的其余部分組織如下。第2部分介紹了LLM編輯的背景知識。第3部分提供了KME任務的一般公式,可以適應各種應用場景。第4部分為KME策略提供了一個全面的評價指標總結,這對于公正地比較各種方法至關重要。在深入探討具體方法之前,我們在第5.1節為現有方法提供了一個全面的分類,其中討論了它們的關系和差異。然后我們詳細介紹了三個類別中的方法,其中總結了每個類別的優點和局限性。第6部分介紹了廣泛使用的公共數據集。第7部分詳細介紹了可以從KME技術中受益的各種實際任務。第8部分討論了現有技術尚未解決的KME的潛在挑戰。這一部分還提供了一些可以激發未來研究的潛在方向。最后,我們在第9部分總結了這次綜述。
面對舊信息的快速折舊和新知識的出現,各種KME方法已經被提議來更新預先訓練的LLMs,以保持它們的最新性和相關性。KME確保新知識能夠高效地融入預訓練的LLMs,而不會負面影響與編輯無關的預訓練知識。 在這份調查中,我們將現有的KME方法分為以下三個主要類別:
? 基于外部記憶的方法利用外部存儲器來存儲新的知識,以進行編輯,而不修改預訓練的權重,其中預訓練的知識可以在LLM權重中完全保留。通過使用外部參數存儲新知識,基于記憶的策略能夠準確地表示新知識,并具有良好的可伸縮性,因為記憶容易擴展以融入新知識。
?** 全局優化方法通過優化在新知識的指導下尋求將新知識普遍地合并到預訓練的LLMs中**,其中引入了定制策略來限制其他預訓練知識的影響,與簡單的微調區分開來。然而,由于需要優化的參數數量眾多,這些方法在應用于LLMs時可能在編輯效率上有所不足。
? 基于局部修改的方法旨在找到LLMs中特定知識的相關參數,并相應地更新它以融入與編輯相關的新知識。局部修改的主要優勢是只可能更新模型參數的一小部分,從而與基于記憶的方法相比提供了相當的內存效率,并與全局優化相比提供了計算效率。
上述分類是基于新信息被引入LLM的位置(例如,外部參數或內部權重)和方式(例如,通過優化或直接合并)進行的。具體而言,每個類別的方法在Sec. 4中引入的四個關鍵評估指標方面都展現出不同的優勢和劣勢。例如,當計算資源有限而需要大量編輯時,外部記憶在場景中占優勢,因為記憶的大小可以控制以適應不同的要求。另一方面,當實踐者更關注編輯知識的普遍性時,全局優化是有利的,因為優化可以促進相關知識的學習[2]。該分類法在圖3中進行了直觀的說明,并在表2中總結了所有方法的具體特點。
在這次綜述中,我們對知識為基礎的模型編輯(KME)技術進行了全面而深入的調研,以準確且高效地更新預訓練LLMs中的新知識。我們首先將KME問題構建為一個受約束的優化目標,該目標同時確保編輯的準確性和保留,這適用于包括不同KME策略。接著,我們提供了KME的評估指標概述,這有助于了解編輯模型的理想屬性。隨后,我們提出了一個結構化的分類框架,以系統地分類現有的KME技術。在每個類別中,我們概述了核心挑戰,詳細說明了代表性方法,并討論了它們的優勢和劣勢。此外,我們總結了廣泛用于評估KME技術的數據集,強調某些技術需要特定的數據集結構進行訓練或評估。為了激勵研究人員設計更多的實際實現,我們還強調了KME技術的實際應用。最后,我們確定了未來研究的幾個潛在挑戰,并提供了有助于進一步推進該領域的有見地的方向。
Prompt工程是一種技術,涉及用任務特定的提示,即prompts,增強大型預訓練模型,以使模型適應新任務。提示可以作為自然語言指令手動創建,或者作為自然語言指令或向量表示自動生成。Prompt工程使得基于提示進行預測成為可能,而不更新模型參數,也更容易地將大型預訓練模型應用于實際任務中。在過去的幾年里,Prompt工程在自然語言處理中得到了深入研究。近期,它在視覺-語言建模中也得到了深入的研究。然而,目前缺乏對預訓練視覺-語言模型上的Prompt工程的系統性概述。本文旨在為視覺-語言模型上的Prompt工程提供一個全面的調查,涉及三種類型的視覺-語言模型:多模態到文本生成模型(例如Flamingo)、圖像-文本匹配模型(例如CLIP)和文本到圖像生成模型(例如Stable Diffusion)。對于每一種模型,我們都總結并討論了簡短的模型摘要、提示方法、基于提示的應用以及相應的責任和完整性問題。此外,還討論了在視覺-語言模型、語言模型和視覺模型上進行提示的共性和差異性。最后,總結了這一話題的挑戰、未來方向和研究機會,以促進未來的研究。
Prompt工程是一種方法,通過用任務特定的提示增強模型輸入,將大型預訓練模型(也稱為基礎模型)適應新任務。具體而言,模型的輸入被增加了一個額外的部分,稱為提示,這可以是手動創建的自然語言指示[4]、自動生成的自然語言指示[5],或自動生成的向量表示[6]。自然語言指令也被稱為離散提示或硬提示,而向量表示被稱為連續提示或軟提示。Prompt工程實際上與大型預訓練模型的出現同時出現,并因此而變得突出,這兩者一起導致了機器學習(ML)的范式轉變。傳統的范式要求標記大量的數據,然后從頭開始訓練一個特定任務的ML模型或對預訓練的大型模型進行微調。模型的性能在很大程度上依賴于標記數據的質量和數量,這可能需要大量的資源來獲取。此外,傳統范式需要在某種程度上調整模型的參數,即在從頭開始訓練ML模型或完全微調預訓練模型的情況下的所有參數,或在參數高效微調的情況下的部分參數。這限制了ML模型的可擴展性,并要求每個任務都有一個特定的模型副本。最近,提示預訓練的大型模型使其適應特定任務已成為一種新趨勢。Prompt工程的關鍵思想是提供提示并與輸入一起,引導預訓練模型使用其現有知識解決新任務。如果提示是人類可解釋的自然語言(硬提示),相關的研究被稱為InContext Learning[7],它使模型能夠從任務指示、用少數示例的示范或上下文中的支持信息中學習。此外,提示也可以是連續的向量表示(軟提示)。相關的工作被稱為Prompt-Tuning[6],它直接在模型的嵌入空間中優化提示。 在本文中,我們的目標是通過提供關于預訓練VLMs的Prompt工程的前沿研究的全面調查,來彌補這一缺口。具體來說,我們根據模板的可讀性將提示方法分類為兩個主要類別,即硬提示和軟提示。硬提示可以進一步劃分為四個子類,即任務指示、上下文學習、基于檢索的提示和思維鏈提示。另一方面,軟提示是可以使用基于梯度的方法進行微調的連續向量。請注意,這項調查主要關注保持模型架構的提示方法,因此,如P-tuning[13]和LoRa[14]這樣將額外模塊引入模型的方法并不是這項調查的主要范圍。我們研究了三種類型的VL模型上的Prompt工程,分別是多模態到文本生成模型、圖像文本匹配模型和文本到圖像生成模型。每種模型類型的明確定義在Sec. 2.1中提供。此外,我們從編碼器-解碼器的角度分類現有的Prompt工程方法,如圖1所示,即編碼端提示或解碼端提示,其中提示分別添加到編碼器和解碼器。本文的其余部分組織如下。在Sec. 2中,我們總結并定義了我們在此調查中使用的分類和符號。Sec. 3、4和5介紹了多模態到文本生成模型、圖像-文本匹配模型和文本到圖像生成模型上Prompt工程的當前進展,每一節首先介紹相應模型的初步情況,然后詳細討論提示方法,再研究這些提示方法的應用和負責任的AI考慮因素。Sec. 6提供了提示單模態模型和VLMs之間的比較,并對它們的相似之處和差異進行了深入討論。最后,在Sec. 7中,我們強調了挑戰和潛在的研究方向。為了方便文獻搜索,我們還建立并發布了一個項目頁面,其中列出了與我們主題相關的論文并進行了組織。
多模態-文本提示方法
圖2展示了提示方法的分類。提示方法分為兩類:硬提示,它們是勞動密集型的、手工制作的文本提示,帶有離散的標記;而軟提示是可優化的、可學習的張量,與輸入嵌入連接在一起,但由于與真實詞嵌入不對齊,所以缺乏人類可讀性。
在圖像-文本匹配中的提示模型
在文本-圖像生成中的提示模型
結論
這篇關于預訓練視覺語言模型的提示工程的調查論文為這個領域的當前研究狀況提供了寶貴的見解。通過分析確定的主要發現和趨勢揭示了在適應視覺語言任務中有效使用提示來調整大型預訓練模型的方法。一個關鍵的發現是提示工程在不同類型的視覺語言模型上的多功能性和適用性,包括多模態到文本生成模型、圖像-文本匹配模型和文本到圖像生成模型。此調查從它們各自的特點探討了每種模型類型,強調了在它們上的各種提示方法。這些發現對學術界和工業界都有重要意義。通過利用提示工程技術,研究人員可以在視覺語言模型中獲得顯著的性能提升,而不需要大量的標記數據。這有可能減少數據注釋的負擔并加速視覺語言模型在實際應用中的部署。然而,重要的是要承認這次調查的局限性。該領域迅速發展的性質和現有的廣泛提示工程方法使得提供一個詳盡的概述變得具有挑戰性。此外,調查主要從提示工程的角度關注預訓練的視覺語言模型,并可能沒有涵蓋其他相關領域的所有最新進展。為了解決這些局限性,我們將維護并發布一個平臺來持續跟蹤這一領域的進展。進一步的研究應探討提示工程技術與其他新興技術,如強化學習或元學習,的集成,以提高視覺語言模型的性能和泛化能力。此外,研究提示工程模型的可解釋性和魯棒性對于確保其在實際部署和倫理使用中的關鍵。總的來說,這項調查為現有的知識體系做出了貢獻,為預訓練視覺語言模型中的提示工程提供了一個全面的概述。通過闡明提示工程技術的當前狀況、關鍵趨勢和影響,這項調查為那些希望利用視覺語言模型進行各種應用的研究者和從業者提供了寶貴的資源。它在研究中填補了一個空白,為預訓練模型在視覺和語言的背景下的適應提供了見解,為這一令人興奮的領域的進一步進展鋪平了道路。
傳統的自然語言處理方法具有可解釋性,這些自然語言處理方法包括基于規則的方法、決策樹模型、隱馬爾可夫模型、邏輯回歸等,也被稱為白盒技術。近年來,以語言嵌入作為特征的深度學習模型(黑盒技術)不斷涌現,雖然這些方法在許多情況下顯著提高了模型的性能,但在另一方面這些方法使模型變得難以解釋。用戶難以了解數據經過怎樣的過程得到所期望的結果,進而產生許多問題,比如削弱了用戶與系統之間的交互(如聊天機器人、推薦系統等)。機器學習社區對可解釋性重要程度的認識日益增強,并創造了一個新興的領域,稱為可解釋人工智能(XAI)。而關于可解釋性有多種定義,大部分相關文章的論證也因此有所差異。這里我們關注的是可解釋人工智能給用戶提供關于模型如何得出結果的可解釋,也稱為結果解釋問題(outcome explanation problem)[1]。在可解釋人工智能中,解釋可以幫助用戶建立對基于NLP的人工智能系統的信任。本文依據前人的綜述[2]討論了可解釋的分類方式,介紹了能夠給出可解釋的技術及其具體操作,并簡要地描述了每一種技術及其代表性論文。
在大規模無標簽文本上預訓練語言模型,然后在下游任務微調的學習模式已經在自然語言處理(NLP)領域取得了廣泛的應用。盡管當前的預訓練語言模型在大部分NLP任務上取得了顯著的進展,然而,研究人員發現當預訓練任務的目標更接近于下游任務的目標時,模型在下游任務上能取得更大幅度的性能提升,例如針對文本摘要設計的Gap Sentence Prediciton預訓練任務[1]、面向機器閱讀理解設計的Span Selection預訓練任務[2]、以及為情感分析設計的Label-aware MLM預訓練任務[3],都取得了相較于原始預訓練語言模型更好的性能。近年來,在信息檢索(IR)中,預訓練語言模型在文檔排序任務上取得了一定的效果,然而,如何設計更符合信息檢索需求的預訓練目標,是一個值得探索的新領域。
在這項工作中,我們提出了一個新穎的針對信息檢索的預訓練任務,叫做“代表詞預測”任務(Representative Words Prediction)。這個任務是受到了IR中經典統計語言模型——查詢似然模型的啟發,在查詢似然模型的基本假設中,查詢被認為是由“理想”文檔“生成”出來的具有代表性的文本,因此通過貝葉斯定理推導,查詢的相關性強度可由其代表性或者說是其似然值表征。鑒于此,我們就構建了這樣一個新的代表詞預測任務(簡稱為ROP任務),具體來說,對于一個給定的文檔,我們根據文檔語言模型(狄利克雷平滑的多項式語言模型)采樣出該文檔的代表性詞集,然后預訓練語言模型使其能夠有效地區分出其中哪些詞項更具有代表性。為了同時建模查詢和文檔內容理解以及二者關系的預測,我們結合ROP與MLM一起在無標簽的文檔語料上進行預訓練,我們把通過這種預訓練方式得到的語言模型命名為PROP。