大型語言模型(LLMs)在自然語言理解、語言生成和復雜推理等重要任務中展示了顯著能力,并有潛力對我們的社會產生重大影響。然而,這些能力伴隨著它們所需的大量資源,突顯了開發有效技術以應對其效率挑戰的強烈需求。在本綜述中,我們提供了對高效LLMs研究的系統性和全面的回顧。我們組織了文獻,形成了一個由三個主要類別構成的分類法,分別從模型中心、數據中心和框架中心的視角,涵蓋了不同但相互關聯的高效LLMs主題。我們還創建了一個GitHub倉庫,在 //github.com/AIoTMLSys-Lab/Efficient-LLMs-Survey 收錄了本綜述中的論文,并將積極維護這個倉庫,將新的研究成果納入其中。我們希望我們的綜述能成為幫助研究人員和實踐者系統理解高效LLMs研究發展的寶貴資源,并激勵他們為這個重要且令人興奮的領域做出貢獻。
大型語言模型(LLMs)是一種先進的人工智能模型,旨在理解和生成人類語言。最近,我們見證了GPT系列(GPT-3 [21] 和 GPT-4 [197])、谷歌系列(Gemini [266]、GLaM [71]、PaLM [50]、PaLM-2 [8])、Meta系列(LLaMA 1&2 [272, 273])、BLOOM [233]、盤古之心 [227] 和 GLM [339]等LLMs的興起,以及它們在自然語言理解(NLU)、語言生成、復雜推理[320]和與生物醫學[278, 280]、法律[72]及代碼生成[34, 300]等領域相關的任務中取得的顯著表現。這些性能突破歸功于它們的巨大規模,因為它們包含數十億甚至數萬億個參數,同時又在大量數據上進行訓練,這些數據來自多樣化的來源。 盡管LLMs引領著人工智能的下一波革命,但LLMs的顯著能力卻以其巨大的資源需求為代價[50, 71, 197, 227]。圖1展示了LLaMA系列模型性能與訓練過程中碳排放之間的關系。如圖所示,隨著模型參數數量的增加,碳排放量呈指數級增長。除了訓練之外,推理(inference)也對LLMs的運營成本有著相當大的貢獻。如圖2所示,更先進的LLMs在推理過程中表現出更高的內存使用和能源消耗,這對于以經濟有效的方式將這些模型擴展到更廣泛的客戶群和多樣化的應用中提出了挑戰。隨著LLMs應用和客戶群的快速擴張,推理過程中的運營成本(包括能源消耗和內存使用)將增加,超過訓練成本,成為整體環境影響的主導因素。 LLMs的高資源消耗推動了開發技術以提高LLMs效率的需求。本綜述的總體目標是提供一個全面的視角,概述高效LLMs的技術進展,并總結現有的研究方向。如圖3所示,我們將文獻組織成一個由三個主要類別構成的分類法,分別從模型中心、數據中心和框架中心的視角,涵蓋了高效LLMs的主題。這三個類別涵蓋了不同但相互關聯的研究主題,共同提供了對高效LLMs研究的系統性和全面的回顧。具體來說,
?** 模型中心方法**:模型中心方法側重于以模型本身為焦點的算法層面和系統層面的高效技術。由于LLMs擁有數十億甚至數萬億個參數,它們表現出與小規模模型不同的特征[299],這促使了新技術的發展。在第2部分,我們調查了涵蓋模型壓縮、高效預訓練、高效微調、高效推理和高效架構設計相關的研究方向的高效技術。
? 數據中心方法:在LLMs領域,數據的重要性與模型本身一樣關鍵。數據中心方法側重于數據質量和結構在提高LLMs效率方面的作用。在第3部分,我們調查了涵蓋數據選擇和提示工程相關研究方向的高效技術。
? LLM框架:LLMs的出現促使開發專門的框架,以高效地處理它們的訓練、推理和服務。雖然主流的人工智能框架(如TensorFlow、PyTorch和JAX)提供了基礎,但它們缺乏對LLMs至關重要的特定優化和特性的內置支持。在第4部分,我們調查了專門為高效LLMs設計的現有框架,介紹了它們的獨特特性、底層庫和專門化。
最后,我們建立了一個GitHub倉庫,在 上匯編了本綜述中的論文,并將它們按照相同的分類法組織起來。我們將積極維護它并納入新的研究成果。我們希望這個綜述以及GitHub倉庫能幫助研究人員和從業者瀏覽文獻,并作為激發對高效LLMs進一步研究的催化劑。
以模型為中心
正如圖4所總結的,大型語言模型(LLMs)的模型壓縮技術可以分為四類:量化、參數剪枝、低秩近似和知識蒸餾。
如表1所示,預訓練大型語言模型(LLMs)的成本極其昂貴。高效的預訓練旨在提高預訓練過程的效率并降低成本。正如圖7所總結的,高效預訓練技術可以分為四類:混合精度加速、模型縮放、初始化技術和優化策略。
高效微調旨在提高大型語言模型(LLMs)微調過程的效率。正如圖8所示,高效微調方法可以分為參數高效微調(PEFT)和內存高效微調(MEFT)。
高效推理旨在提高大型語言模型(LLMs)推理過程的效率。正如圖10所總結的,高效推理技術可以分為算法層面和系統層面的加速技術。
針對大型語言模型(LLMs)的高效架構設計是指對模型結構和計算過程進行戰略性優化,以提升性能和可擴展性,同時最小化資源消耗。圖12總結了大型語言模型的高效架構設計。
以數據為中心
大型語言模型(LLMs)的數據選擇涉及對數據源、質量和預處理的仔細考慮。確保高質量數據是開發高效可靠的LLMs的基礎,因為它影響著它們的學習、泛化和在各種任務上準確執行的能力。[84, 232, 311, 325]。這個過程對于避免在模型中傳播偏見和不準確性至關重要,使得LLMs訓練能夠收斂。研究人員正在開發優化數據選擇、數據壓縮和提示微調等策略,以提高性能同時使用較少的資源。圖15總結了高效預訓練和微調的最新數據選擇技術。
提示工程[167]涉及設計有效的輸入(提示),以引導大型語言模型(LLMs)生成期望的輸出。這對于LLMs至關重要,因為提示工程使得LLMs能夠針對特定任務進行定制,而無需大量標記數據。高效技術使得這些模型能夠在較少的計算開銷下準確處理信息和響應。基于提示的語言模型所涉及的計算成本一直是持續研究的主題,特別是在特定任務應用的背景下。正如圖17所總結的,提示工程技術可以分為少量樣本提示、提示壓縮和提示生成。
LLM框架
結論
在這篇綜述中,我們提供了對高效大型語言模型(LLMs)的系統性回顧,這是一個旨在實現LLMs民主化的重要研究領域。我們從闡述高效LLMs的必要性開始。通過一個分類體系,我們分別從以模型為中心和以數據為中心的角度,回顧了LLMs的算法層面和系統層面的高效技術。此外,我們還回顧了具有特定優化和特性的LLMs框架,這些對高效LLMs至關重要。我們認為,效率將在LLMs及以LLMs為導向的系統中發揮越來越重要的作用。我們希望這篇綜述能夠使研究人員和實踐者快速進入這一領域,并作為激發高效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的不斷進步,可解釋性將變得極其重要,以確保這些模型是透明的、公平的和有益的。我們希望這篇文獻綜述為這一新興研究領域提供了有用的概述,并突出了未來研究的開放問題和方向。
在這篇綜述中,我們深入探討了使用圖神經網絡(GNNs)進行表格數據學習(TDL)的領域,這是一個深度學習方法在分類和回歸任務中相比傳統方法表現出越來越優越性能的領域。綜述強調了深度神經TDL方法的一個關鍵差距:數據實例和特征值之間潛在關聯的欠表達。GNNs憑借其固有的模擬表格數據不同元素之間復雜關系和交互的能力,已經在各種TDL領域引起了顯著的興趣和應用。我們的綜述提供了一項對設計和實現TDL用GNN(GNN4TDL)方法的系統性回顧。它包括對基礎方面的詳細調查和基于GNN的TDL方法的概述,提供了對其不斷發展的領域的洞察。我們提出了一個全面的分類學,重點是構建圖結構和在基于GNN的TDL方法中的表示學習。此外,綜述還檢查了各種訓練計劃,強調了整合輔助任務以增強實例表示的有效性。我們討論的一個關鍵部分專門用于GNN在一系列GNN4TDL情景中的實際應用,展示了它們的多功能性和影響力。最后,我們討論了限制并提出了未來的研究方向,旨在促進GNN4TDL的進步。這篇綜述為研究人員和實踐者提供了資源,提供了對GNN在革新TDL中角色的深入理解,并指向了這個有前景領域未來的創新。
近年來,基于深度學習的表格數據學習(TDL)方法,例如分類和回歸,表現出了令人充滿希望的性能。然而,盡管在從原始表格記錄中學習有效特征表示方面有很大能力,深度神經TDL在數據實例和特征值之間的潛在相關性建模上表現薄弱。通過建模高階實例-特征關系、高階特征交互和數據實例之間的多關系相關性,已顯示可以改進TDL的預測性能。作為自然地建模不同數據實體之間的關系和交互的對策,圖神經網絡(GNNs)近來已經受到極大關注。通過適當地從輸入表格數據構建圖結構,GNNs可以學習數據元素之間的潛在相關性,并為預測任務生成有效的特征表示。受到GNNs在自然語言處理和推薦系統上的成功啟發,開發用于表格數據學習的圖神經網絡(GNN4TDL)的趨勢也在增加。目前,已有一些早期研究努力嘗試將現有的GNN方法應用于表格數據學習。一些非常近期的研究也開始探索特定于TDL的GNNs。這些研究幾乎涵蓋了所有TDL主題和應用,掀起了該領域的一波研究熱情。隨著這些研究進展,也產生了一些基本問題:(a) 基于GNN的TDL與傳統TDL之間有何區別?(b) 在不同TDL場景和任務下構建圖結構的正確方式是什么?(c) 基于GNN的表格數據表示學習背后的原理是什么?(d) 哪些TDL任務和應用領域可以從GNNs中受益?(e) 當前研究的局限性和未來研究的潛在機會是什么?盡管最近的GNN4TDL研究報告了令人鼓舞的結果,但這些問題尚未系統地調查,甚至被忽視了。迫切需要進行這項GNN4TDL綜述,以揭示這些問題的答案,以進一步促進這一研究方向。我們相信,由于該主題的高需求和低支持,這項GNN4TDL綜述將具有很高的價值。(a) 高需求:由于表格數據在許多領域和應用中無處不在,人們逐漸將重點轉移到模型數據實例之間的關系及其與特征值的相關性上,我們相信,用于表格數據學習的圖神經網絡不僅將具有很高的研究影響,而且還將具有實際價值。它應該能夠獲得學術界和工業界的關注。(b) 低支持:我們的GNN4TDL處于一個小眾但至關重要的領域,根據表1中的比較總結,在以前的綜述中大多被忽視。與其他集中在跨各種領域和數據類型的廣泛GNN應用的工作不同,這篇綜述不僅強調了GNN在表格數據預測、表示學習和圖結構學習中的潛力,而且還是首次討論自監著學習、各種訓練策略和GNN4TDL中特定的輔助任務。這篇綜述論文對應用GNNs進行表格數據學習進行了深入探索。它首先建立了基本的問題陳述,并介紹了用于表示表格數據的各種圖類型。綜述圍繞詳細的基于GNN的學習流程進行構建,包括圖形化階段,將表格元素轉換為圖節點;圖構建,專注于建立這些元素之間的連接;表示學習,強調GNNs如何處理這些結構以學習數據實例特征;以及訓練計劃,討論輔助任務和訓練策略的整合,以提高預測結果。除了回顧GNN4TDL技術之外,綜述還進一步闡述了GNN在多個領域的應用,如欺詐檢測和精準醫療,以及對當前研究局限性和GNN4TDL領域未來方向的批判性討論。
我們總結了這項綜述的貢獻如下。
? 我們提供了圖神經網絡用于表格數據學習的當前發展的廣闊圖景。提供了及時和全面的文獻綜述,幫助讀者快速掌握基本概念并進入這個研究領域。
? 我們組織了將GNNs應用于表格數據學習的現有藝術。特別是,我們深入探討了GNNs如何更好地建模表格數據,并揭示了GNNs帶來的表格數據分類和回歸性能提升。在實踐中,我們強調了構建各種表格數據模型的基本指導原則。
? 我們展示了GNN如何在許多表格數據應用領域中得到利用,如欺詐檢測、精準醫療、點擊率預測和處理缺失數據。
我們還為學術界和工業界提供了對當前研究局限性和GNN4TDL未來研究方向的深刻討論。我們按照以下方式組織了這篇論文。第2節定義了剩余部分中使用的相關概念。第3節描述了GNN4TDL的框架,并從多個角度提供了分類。第4節根據我們的分類系統地回顧了現有的GNN4TDL方法。第5節調查了GNN4TDL在各個領域的實際應用。第6節討論了剩余的挑戰和可能的未來方向。第7節最后總結了這項綜述。
在這一部分中,我們介紹了用于表格數據學習的圖神經網絡(GNNs)的總體流程,并詳細分類了每個關鍵階段,描繪了不同方法如何實現這些階段。伴隨這種分類,我們還提供了每個類別中一些代表性框架的描述。這些研究例子展示了流程中各個階段或類別之間復雜的相互聯系,突出了它們在整體GNN4TDL過程中的緊密結合和協作功能。每個分類的詳細闡述在第4節中呈現。流程。基于GNN的表格數據學習的一般流程在圖1中提供。流程從圖形化階段開始,即使用表格數據集中的元素定義圖的結構。這個階段涉及決定使用哪些元素作為節點,有三種常見的方法:(1) 將數據實例表示為節點,(2) 將特征作為節點,或 (3) 兩者的組合,形成不同類型的圖。接下來,圖構建階段旨在在這些元素之間創建連接,將表格數據轉換為圖結構。這種結構由最初的形式化決定,導致形成同質圖(例如,實例圖或特征圖)或異質圖(例如,二部圖、多關系圖或超圖)。接下來,表示學習階段涉及根據圖的性質應用不同類型的GNNs。采用各種同質實例GNNs、同質特征GNNs或異質GNNs來學習數據實例的特征表示。這一階段至關重要,因為它決定了消息如何在圖中傳播,模擬特征和實例之間的交互,并影響所學習嵌入的質量。如果使用特征圖,則需要額外的信息聚合層,基于學習到的特征嵌入產生最終的實例表示。最后,訓練計劃階段接收最終的實例表示。在這個階段,采用不同的學習任務和訓練策略,包括在主任務旁邊使用輔助任務。然后通過預測層處理結果,產生最終的預測結果。這個全面的流程突出了GNNs在處理各種圖形化和學習任務方面的多功能性,最終導致有效的表格數據學習和預測。分類。根據流程,可以建立用于表格數據學習的圖神經網絡的分類體系。我們在圖2中給出了分類。下面,我們相應地描述了分類體系中的分類,其中每個類別中的一些代表性研究被提到并在表2中總結。
從表格數據中生成圖的形式包含三種主要類型:同質圖、異質圖和超圖。基于數據實例作為節點或特征作為節點,在同質圖中,我們可以分別形成實例圖(例如,[85],[91],[112])和特征圖(例如,[83],[152],[173])。另一方面,異質圖可以將數據實例與其對應的特征(以及進一步的其他元數據)連接起來。異質圖的形成可以是二部圖或多部圖[27],[63],[142],[157]。可以考慮不同的特征值作為不同的邊類型,這些類型描述了數據實例之間的不同關系,從而形成多重/多關系圖[51],[60],[89]。如果一個形式允許數據實例和所有可能的特征值出現在一個圖中,可以構建異質圖來表示復雜的信息相互依賴[22],[37],[93],[118]。至于超圖的形成[10],[15],[27],共享相同屬性的表格元素被一個邊連接。超圖中的邊可以連接任意數量的表格元素。例如,共享相同特征值的實例可以通過超圖中的邊連接起來。
給定某種圖形式,節點已經確定后,第二階段旨在通過在節點之間創建邊連接來構建圖,以實現該形式。根據邊創建的標準,一般有四種類型的方法,包括內在結構、基于規則、基于學習和其他方法,其中前兩種類型被廣泛采用。創建鏈接的直觀方法是利用表格數據元素之間的固有關系,例如,一個實例包含特征值[142],[157],兩個實例共享特定特征的相同值[51],[95],一個數據表通過主外鍵關系與另一個相關聯[22],[37]。為了在數據實例和/或特征之間定義邊,基于規則的方法依賴于一些手動指定的啟發式規則,例如k近鄰[44],[59],[112],全連接結構[56],[83],[119],和閾值[21],[29]。基于學習的方法自動在節點之間生成邊。它可以分為三個子類別:基于度量的方法使用核函數基于節點相似度計算邊權重[69],[123]。神經方法采用深度神經網絡進行自適應圖構建[85],[91],[152]。直接方法將鄰接矩陣視為可學習的[39],[97]。其他方法屬于檢索式或知識型。基于檢索的方法依賴于發現相關和相似的數據實例來基于信息檢索技術構建邊[27],或進行神經結構搜索以找到更好的表示學習圖拓撲[149]。基于知識的方法需要領域專家提供數據實例之間的相關性知識[28]或描述特征之間關系的知識圖[114],以便以細粒度方式構建圖。
一旦得到描述表格數據的圖,無論數據實例及其對應特征如何通過圖結構描述,下一階段是學習每個實例的最終表示。根據獲得的圖的類型,例如同質或異質圖,我們可以使用同質GNN模型(例如GCN [77],GraphSAGE [52],GAT [126],和GIN [151])和異質GNN模型(例如RGCN [115],HGAT [134],和HGT [58])來產生每個實例的嵌入。除了簡單地應用現有的GNN模型,一些現有的工作已經開發了專門的GNN來更好地捕獲實例和特征之間各種復雜的交互(例如[20],[44],[59],[83],[152])。
基于學習到的實例特征表示設計合適的訓練計劃是最后一步。訓練計劃可以從兩個方面進行討論,學習任務和訓練策略。雖然主要任務是預測目標標簽,但為了增強學習,開發了各種監督變體,因此可以構建不同的輔助任務。例如,利用對比學習來更好地細化圖結構學習[85],[91],引入自監著學習和自編碼器來產生去噪特征[33],以及施加各種圖正則化以穩定圖學習并避免過擬合[16],[97]。由于數據本質上是表格形式的,附加學習任務可以保留輸入表格數據中的屬性,如特征的全局統計[119],領域知識保存[54],和空間信息編碼[28]。采用了一系列訓練策略來優化GNN4TDL性能。兩階段方法(例如,[91])先學習圖結構,然后訓練預測模型。對抗技術(例如,[119])增強了特征重構的真實性。其他方法(例如,[14])動態調整特征重構權重以提高任務相關性。雙層優化(例如,[142])同時調整GCN參數和圖生成。預訓練-微調策略(例如,[118])利用自監著學習進行穩健的初始數據理解,然后進行針對性的微調,盡管可能存在階段不匹配。端到端訓練(例如,[51])是最廣泛采用的策略,提供了從學習到預測的流線型過程,直接提升了性能。
大型語言模型(LLMs)在理解和生成接近人類交流的文本方面展現出了非凡的能力。然而,它們的一個主要局限性在于訓練過程中顯著的計算需求,這源于它們廣泛的參數化。這一挑戰進一步被世界的動態性所加劇,需要頻繁更新LLMs以糾正過時的信息或整合新知識,從而確保它們的持續相關性。值得注意的是,許多應用要求在訓練后持續調整模型以解決缺陷或不良行為。對于即時模型修改的高效輕量級方法,人們越來越感興趣。為此,近年來知識編輯技術在LLMs領域蓬勃發展,旨在有效地修改LLMs在特定領域內的行為,同時保持對各種輸入的整體性能。在本文中,我們首先定義了知識編輯問題,然后提供了對前沿方法的全面調研。從教育和認知研究理論[1-3]中汲取靈感,我們提出了一個統一的分類標準,將知識編輯方法分為三組:依賴外部知識、將知識融入模型和編輯內在知識。此外,我們引入了一個新的基準測試,KnowEdit,用于對代表性知識編輯方法進行全面的實證評估。另外,我們提供了對知識位置的深入分析,這可以提供對LLMs內在知識結構的更深層次理解。最初作為高效引導LLMs的手段構想,我們希望從知識編輯研究中獲得的洞見能夠闡明LLMs的底層知識機制。為了促進未來的研究,我們發布了一個開源框架,EasyEdit1,將使從業者能夠高效靈活地實施LLMs的知識編輯。最后,我們討論了知識編輯的幾個潛在應用,并概述了其廣泛而深遠的影響。
知識是人類智能和文明的基本組成部分[4]。其系統結構賦予了我們通過符號手段來表示有形實體或勾畫原則,從而提供了促進復雜行為或任務表達的能力[5-7]。在我們的生活中,我們人類不斷積累了豐富的知識財富,并學會在不同背景下靈活應用它。對知識的性質以及我們獲取、保留和解釋它的過程的持續探索,一直吸引著科學家們,這不僅是一項技術追求,還是通向反映人類認知、交流和智能復雜性的旅程[8-12]。 近年來,大型語言模型(LLM)如GPT-4[13]在自然語言處理(NLP)方面展現出了卓越的能力,可以保留大量知識,可能超過了人類能力[14-30]。這一成就可以歸因于LLMs處理和壓縮大量數據的方式[31-34],潛在地形成了更簡潔、連貫和可解釋的底層生成過程模型,實質上創建了一種“世界模型”[35-37]。例如,戴等人[38]提出了知識神經元(KN)論,提出語言模型的功能類似于鍵值記憶。在這里,核心區域的多層感知器(MLP)權重[39]可能在從訓練語料庫中提取事實方面起到關鍵作用,暗示了LLMs內部知識存儲的更結構化和可檢索形式[40, 41]。
更深入的洞察來自LLMs理解和操作復雜戰略環境的能力,李等人[42]已經證明,針對象棋等棋盤游戲進行下一個標記預測的Transformer模型發展出了游戲狀態的明確表示。帕特爾和帕夫利克[43]揭示了LLMs可以跟蹤給定上下文中的主題的布爾狀態,并學習反映感知、符號概念的表示[35, 44-46]。這種雙重能力表明LLMs可以充當廣泛的知識庫[47-58],不僅存儲大量信息,還以可能反映人類認知過程的方式進行結構化。 然而,LLMs存在一些限制,如事實錯誤、可能生成有害內容和由于訓練截止日期而過時的知識[59-61]。為了解決這個問題,近年來見證了為LLMs專門定制的知識編輯技術的發展潮,這些技術允許對模型進行經濟有效的事后修改[67-69]。這項技術側重于特定領域的調整,而不會影響整體性能,并有助于了解LLMs如何表示和處理信息,這對于確保人工智能(AI)應用的公平性和安全性至關重要[70-74]。
本文首次嘗試全面研究LLMs的知識編輯發展和最新進展。我們首先介紹了Transformer的架構、LLMs中的知識存儲機制(§2.1)以及相關技術,包括參數有效微調、知識增強、繼續學習和機器遺忘(§2.2)。然后,我們介紹了初步內容(§3.1),正式描述了知識編輯問題(§3.2),并提出了一個新的分類法(§3.3),以基于教育和認知研究理論[1-3]提供關于知識編輯方法的統一視角。具體而言,我們將LLMs的知識編輯分類為:使用外部知識(§3.3.1)、將知識融入模型(§3.3.2)和編輯內在知識(§3.3.3)的方法。我們的分類標準總結如下:
? 使用外部知識。這種方法類似于人類認知過程中的識別階段,需要在相關上下文中暴露給新知識,就像人們首次接觸新信息一樣。例如,提供說明模型的事實更新的句子,以進行知識的初始識別。
? 將知識融入模型。這種方法密切類似于人類認知過程中的關聯階段,在其中形成了新知識與模型中現有知識之間的聯系。方法將輸出或中間輸出與學到的知識表示組合或替代。
?** 編輯內在知識**。這種知識編輯方法類似于人類認知過程中的掌握階段。它涉及將知識完全整合到其參數中,通過修改LLMs的權重并可靠地利用它們。
這篇論文隨后進行了廣泛而全面的實驗,涉及了12個自然語言處理(NLP)數據集。這些數據集經過精心設計,用于評估性能(§4)、可用性和底層機制,同時進行了深入的分析(§5),等等其他方面。我們研究的關鍵見解總結如下:
? 性能。我們構建了一個名為KnowEdit的新基準,并報告了針對LLMs的最新知識編輯方法的實證結果,提供了公平比較,展示了它們在知識插入、修改和刪除設置中的整體性能。 ? 可用性。我們闡述了知識編輯對一般任務和多任務知識編輯的影響,這意味著當代知識編輯方法在執行事實更新時對模型的認知能力和在不同知識領域之間的適應性幾乎沒有干擾。 ?** 機制**。我們觀察到在編輯后的LLMs中,存在一個或多個列的明顯關注點在值層中。此外,我們發現知識定位過程(例如,因果分析)傾向于僅針對與所討論實體相關的區域,而不是整個事實背景,這表明LLMs可能是通過回憶從預訓練語料庫中記憶的信息或通過多步推理過程來得出答案。此外,我們深入探討了知識編輯對LLMs可能導致意外后果的可能性,這是一個需要仔細考慮的方面。
最后,我們深入探討了知識編輯的多方面應用,從各種角度(§6)考察其潛力,包括高效的機器學習、人工智能生成內容(AIGC)、可信人工智能和人機交互(個性化代理)。此外,我們的討論還涵蓋了知識編輯技術的更廣泛影響,特別關注能源消耗和可解釋性等方面(§7)。這篇論文旨在成為LLMs領域進一步研究的催化劑,強調效率和創新。為了支持和鼓勵未來的研究,我們將使我們的工具、代碼、數據拆分和訓練模型檢查點公開可訪問。
大模型知識編輯
知識編輯對LLMs的初步內容 通過對各種數據集的大量訓練,LLMs積累了豐富的事實和常識信息,使這些模型成為虛擬知識存儲庫[47, 141]。這個豐富的知識庫已經在各種下游任務中得到有效利用,如許多研究所證明的那樣[142]。此外,王等人[143]已經展示了LLMs在自主構建高質量知識圖的潛力,無需人類監督。盡管LLMs在其當前狀態下作為新興知識庫表現出了潛力,但它們也存在一定的局限性。這些不足在實際應用中常表現為輸出的不準確或錯誤。理想的知識庫不僅應存儲大量信息,還應允許進行高效和有針對性的更新,以糾正這些錯誤并提高其準確性。認識到這一差距,我們的論文引入了知識編輯的概念,旨在實現對LLMs的快速和精確修改,使它們能夠生成更準確和相關的輸出。通過實施對LLMs的知識編輯,我們旨在提高LLMs的效用,使它們更接近成為普遍可靠和適應性強的知識存儲庫的理想目標。這一進展有望解決LLMs目前的缺陷,并釋放它們作為動態和準確知識庫的全部潛力,以供應用使用。
知識編輯的最初目標是修改LLM中的特定知識k,以提高LLM的一致性和性能,而不需要對整個模型進行精細調整。這種知識可以涉及許多領域和類型,例如事實[77]、常識[144]、情感[145]等等。知識編輯具有挑戰性,因為LLMs中的知識具有分布和糾纏的特性。
LLMs的發展已經達到了一個階段,其能力與人類的認知過程非常相似,特別是在學習和獲取知識方面。從人類學習過程中汲取靈感,我們可以類比地將這些概念應用到LLMs的編輯過程中,正如圖2所示。教育和認知研究[1-3]將人類的知識獲取劃分為三個明確的階段:識別、關聯和掌握。這些階段為概念化LLMs中的知識編輯方法提供了一個框架,我們在表2中列出了它們。
? 識別階段:在識別階段,模型需要在相關背景下接觸新知識,就像人們首次遇到新信息一樣(§3.3.1)。例如,提供描述事實更新的句子作為模型演示可以初步識別需要編輯的知識。
? 關聯階段:在關聯階段,新知識與模型中現有知識之間建立聯系(§3.3.2),類似于人類將新思想與先前概念相關聯。方法會將輸出或中間輸出h與已學知識表示hknow結合或替代。
? 掌握階段:掌握階段涉及模型完全掌握其參數中的知識并可靠利用它(§3.3.3),類似于人類的深層掌握。這種方法直接改變了模型的權重?W,模型可以處理問題,無需任何外部幫助或合并。
實驗結果
主要來說,SERAC在知識插入和修改任務中表現良好。它的編輯成功率優于其他編輯方法,且可移植性相對較好,因為新的反事實模型可以有效地學習編輯后的知識。與此同時,在不改變原始模型參數的情況下,SERAC除了ZsRE之外,在局部性能方面表現良好。然而,由于反事實模型通常比原始模型小,其生成能力不是很強,在WikiDatacounterfact、ZsRE和Convsent等任務中,我們可以發現SERAC的流暢性較其他編輯方法如MEND更低。與此同時,在ICE任務中,我們可以發現編輯成功率并不太好,這可能歸因于知識沖突問題。同時,IKE提出將演示文稿連接在一起作為提示,但它們需要較長的輸入長度,并限制了模型進行下游任務。 對于修改模型參數的方法,我們可以發現MEND在不同指標下在這些任務中表現良好。它的編輯成功率和可移植性良好,表現出良好的局部性和流暢性。然而,對于ROME和MEMIT,盡管編輯成功率更好,但它們的局部性不如MEND和其他類型的編輯方法。同時,它的可移植性令人不滿。對于局部微調方法FT-L,其編輯成功率不如ROME或MEMIT,但局部性和可移植性更好。此外,似乎FT-L在處理插入任務時更好,因為其在WikiDatarecent任務中的編輯成功率和可移植性優于ZsRE和WikiDatacounterfact。對于WikiBio任務,當前方法可以適當減輕幻覺并保持良好的流暢性。至于Convsent任務,我們可以發現當前方法不能很好地改變模型的情感,因為編輯成功率低于65%。SERAC,它可以完美地處理小型LMs [145],在7B模型上表現不佳。考慮到其在其他任務中在事實級別編輯方面的出色表現,MEND對這些任務的流暢性也較低。至于知識刪除任務Sanitation,旨在從LLMs中刪除知識,我們可以發現當前的知識編輯方法不能適當地處理這項任務。我們可以發現ROME可以避免模型提供目標知識,因為它的準確率達到了90%。但是,它會破壞模型對無關知識的性能,因為其局部性僅為55.61%。其他編輯方法也不能刪除與給定知識相關的模型。
我們還展示了在WikiDatarecent和WikiDatacounterfact的子指標中的平均性能結果,如我們在圖3中的先前評估部分中討論的那樣。在這里,我們可以發現MEND在推理集下表現更好,而AdaLoRA表現出良好的邏輯概括性能。
大模型如何落地?
在快速發展的人工智能(AI)領域中,生成型大型語言模型(LLMs)站在前沿,徹底改變了我們與數據的互動方式。然而,部署這些模型的計算強度和內存消耗在提供效率方面提出了重大挑戰,特別是在需要低延遲和高吞吐量的場景中。這篇綜述從機器學習系統(MLSys)研究的角度出發,應對高效LLM服務方法論的緊迫需求,站在先進AI創新和實際系統優化的交匯點上。我們提供了深入的分析,涵蓋了從尖端算法修改到系統設計的根本性變革的一系列解決方案。這篇綜述旨在提供對高效LLM服務當前狀態和未來方向的全面理解,為研究人員和實踐者提供寶貴的見解,幫助他們克服有效LLM部署的障礙,從而重塑AI的未來。 //www.zhuanzhi.ai/paper/c3dbc58e4807518391a872141c664117
生成型大型語言模型(LLMs)已成為推動人工智能(AI)重大進展的驅動力,并在廣泛的語言相關任務中展現出卓越的性能。從機器翻譯到情感分析、問答和文本生成,這些模型在理解、生成和操縱人類語言方面顯示出了它們的能力。基于Transformer的架構,如GPT系列(Generative Pre-trained Transformer)[195]、LLaMA系列[247]以及其他最新的公開LLMs(例如,OPT [300]、BLOOM [260]、Mistral [129]、DeciLM [241]、Baichuan [277]、GLM [290])在這種范式轉變中發揮了關鍵作用,徹底改變了自然語言處理(NLP)任務的處理方式。除了NLP,這些模型還在更廣泛的應用領域中實現了轉型,包括自動編程[54]、科學發現[135]、個性化數字助理[75]、創意藝術[208]以及下一代計算架構[197],展現了它們的多功能性和在各個行業的深遠影響。
然而,LLMs的空前成功也帶來了幾個挑戰,最值得注意的是,在服務過程中它們龐大的計算需求。巨大的模型規模和復雜性,加上對廣泛計算資源的需求,已經阻礙了它們在實際應用中的廣泛部署。這些模型對資源的密集型需求引發了關于能源消耗、可擴展性和可訪問性的擔憂,阻礙了它們在沒有像大公司那樣豐富計算資源的更廣泛社區中的采用。
這篇綜述旨在解決高效LLM服務的關鍵需求,并對研究界提出的應對這一挑戰的多方面策略進行了全面探討。我們深入考察了從算法創新到新型系統架構的整個解決方案范圍,所有這些都旨在優化大型語言模型的推理過程。
目標 這項綜述的主要目標是提供一個全面的概述,關于最新的LLM服務和推理方面的進展。我們將系統地回顧和分類現有技術,基于它們的底層方法,突出它們的優勢和局限性。該綜述將涵蓋廣泛的方法論,包括解碼算法、架構設計、模型壓縮、低比特量化、并行計算、內存管理、請求調度和內核優化。
** 結構 本文的結構如下**:第2節介紹LLM服務的背景信息。第3節包括我們對高效LLM服務現有方法的分類,從兩個方面重新審視這些相關工作:算法創新(§ 3.1)和系統優化(§ 3.2)。之后,我們在第4節列出了一些代表性的LLM服務框架,并提供了分析。第5節討論LLM服務系統的基準測試。第6節闡明了這項綜述與其他相關文獻之間的聯系。最后,在第7節我們提出了一些提高生成型LLM服務效率的有前景的探索方向,以激發未來的研究。
分類法
目前提高LLM服務效率的努力大致可分為兩類,包括算法創新和系統優化,這兩類將分別進行討論。 算法創新本節提供了對各種算法和技術的全面分析,這些算法和技術旨在優化語言模型推理效率。這些工作旨在通過算法進步解決大規模Transformer模型的固有性能缺陷。
** 解碼算法**。在這一部分中,我們回顧了在圖2中展示的優化LLMs推理過程的新穎解碼算法。這些算法旨在減少計算復雜度,并提高語言模型推理在生成任務中的總體效率。
非自回歸解碼。現有LLMs的一個主要限制是默認的自回歸解碼機制,它逐個順序生成輸出標記。為解決這一問題,一種代表性的工作方向是放棄自回歸生成范式,并并行解碼輸出標記。非自回歸解碼[97, 104, 108]首先為機器翻譯加速提出,通過在解碼過程中打破單詞依賴并假設一定程度的條件獨立性。為了減輕翻譯質量的降低,一些后續研究如半自回歸解碼[98],通過模擬輸出依賴[105, 294]或迭代細化輸出標記[152],進一步擴展了這些非自回歸方法。塊狀并行解碼[230]在基礎LLM中插入一個單一前饋層,以并行預測多個未來位置,然后退回到基模型驗證的最長前綴。然而,這些方法需要昂貴地重建一個新的LLM以及新的依賴,或調整原始LLM的部分層,這并不總是可行的。最近的一些努力致力于在一個解碼步驟中生成多個標記,無需對模型進行任何訓練或修改。并行解碼[217]將貪婪的自回歸解碼重構為可并行求解的非線性方程系統,利用雅可比和高斯-塞德爾固定點迭代方法進行快速推理。關于非自回歸翻譯的詳盡綜述[271]已經提出,以總結這一方向的最新進展。到目前為止,由于不了解輸出標記之間的條件依賴性,盡管解碼速度有所提高,但大多數非自回歸方法的輸出質量仍不如自回歸方法可靠。
投機解碼。另一項工作通過利用投機執行[47]并提高解碼并行性,解決了順序執行的限制。自回歸LLM推理過程中的每個解碼步驟都可以視為帶有條件分支的程序執行,例如決定接下來生成哪個標記。已提出投機解碼[51, 155],首先以高效的方式(例如,使用較小的草稿模型,模型參數較少)進行多步解碼預測,并與LLM同時驗證這些預測。然而,將投機解碼應用于LLMs時仍然存在一些實際挑戰,例如,如何使解碼預測足夠輕量且準確,以及如何使用LLMs實現高效的并行驗證。SpecInfer [177]首次通過引入多個小型草稿模型以及一種新型基于樹的投機推理和標記驗證機制(被[48, 118, 168, 185, 229, 236, 274, 310]直接采用),提出了一個低延遲LLM服務系統實現(§ 4)。投機解碼的主要優勢是它在不改變輸出的情況下增加了并行性。這種保證來自于預測輸出總是由原始LLM驗證,并且當預測出錯時,回退機制[145]生效。
提前退出。其他一些研究試圖利用現有LLMs的深層多層架構,并利用提前退出機制[243]加速解碼過程。直覺是,早期模型層的輸出有潛力自信地推斷目標分布。它們可以基于內部分類器發出預測,而不是運行整個LLM,并且已經探索了各種退出條件[117, 147, 163, 167, 234, 272, 282, 291, 308]。它們也被稱為自適應計算[68, 219],因為它們調整每個請求的計算量以攤銷總推理成本,即對更容易的推理請求采取較少的計算。廣泛來說,這些方法大多受限于內部表示攜帶的信息不足,可能無法忠實地進行準確預測。
級聯推理。由于推理請求的復雜性不同,級聯推理采用不同規模的LLM套件來最小化響應時間。CascadeBERT[157]涉及一系列與不同模型深度相對應的內部分類器,以級聯方式組織它們,并根據實例難度適應性地選擇合適的模型。Tabi[257]針對服務鑒別模型(即非生成型LLMs)進行了優化,但采取了類似的方法,結合小型模型和LLMs處理不同置信度的查詢。FrugalGPT[53]利用基于學習的方法來自適應地將查詢分配給不同的LLM API,優化成本和性能。一項同時進行的工作[312]聯合優化了模型復用和查詢緩存,并分析了最小化推理成本的最優性。Mixture-of-thought[288]將級聯思想擴展到LLM推理任務以節省成本,它從Chain-of-Thought[258]和Program-of-Thought[57]提示中抽樣答案。總體來說,級聯推理是提高推理效率的有希望的方向,但設計準確的調度機制以避免損害模型質量仍然是一個挑戰。
架構設計。這一小節探討了針對大型語言模型的創新架構設計。研究人員已經提出了新穎的模型架構[115],超越了原始的Transformer,實現了模型規模、性能和效率之間的平衡,為更快和資源高效的推理開辟了新途徑。
配置縮小:為了減少LLM推理的計算成本,一種直接的方法是縮小模型配置,例如使用淺層編碼器[101, 183]或解碼器[137],權重共享和詞匯表縮減[225]。然而,減少模型參數的數量也會影響下游任務的性能。
注意力簡化:與自注意力計算相關的一個突出挑戰是計算復雜度O(??^2),它與輸入序列長度??呈二次方增長。許多Transformer變體[240]被提出來將標準注意力簡化為更高效的替代方案,用于非常長的序列任務,例如稀疏化[289]、核化[139]和分解[254]。最近,有一種趨勢從之前的注意力簡化方法中借鑒思想,將它們概括和結合起來,以縮短上下文,減少KV緩存的大小,以及注意力復雜度,同時略微降低解碼質量(例如,滑動窗口注意力[129, 299]、基于哈希的注意力[198]、擴張注意力[74])。這些方法中的一個類別是通過壓縮上下文到更少的軟標記(例如,替換為摘要標記[58]或地標標記[184],利用額外的自編碼器方案[95, 169])或直接根據不同的重要性指導[85, 130, 159, 186](或稱為語義壓縮)刪除或改寫不重要的上下文標記來進行上下文壓縮。例如,自適應稀疏注意力[36]采用基于學習的方法來消除不必要的注意力。
提前退出。一些其他研究嘗試利用現有LLMs的深層多層架構,并利用提前退出[243]機制來加速解碼過程。其直覺是,早期模型層的輸出有潛力自信地推斷目標分布。它們可以基于內部分類器發出預測,而不是運行整個LLM,并且已經探索了各種退出條件[117, 147, 163, 167, 234, 272, 282, 291, 308]。這些方法也被稱為自適應計算[68, 219],因為它們調整每個請求的計算量,以攤銷總推理成本,即對更容易的推理請求采取較少的計算。然而,由于這些方法大多受限于內部表示攜帶的信息不足,可能無法忠實地進行準確預測。
級聯推理。鑒于推理請求的復雜性不同,級聯推理采用不同規模的LLM套件來最小化響應時間。而不是直接使用龐大的模型來處理每個查詢,CascadeBERT[157]涉及一系列與不同模型深度相對應的內部分類器,以級聯方式組織它們,并根據實例難度適應性選擇合適的模型。Tabi[257]專為服務鑒別模型(即非生成型LLMs)進行了優化,但采用了類似的方法,將小型模型和LLMs結合起來處理不同置信度的查詢。FrugalGPT[53]利用基于學習的方法自適應地將查詢分配給不同的LLM API,優化成本和性能。一項同時進行的工作[312]聯合優化了模型復用和查詢緩存,并分析了最小化推理成本的最優性。Mixture-of-thought[288]將級聯思想擴展到LLM推理任務,以節省成本,它從Chain-of-Thought[258]和Program-of-Thought[57]提示中抽樣答案。總體而言,級聯推理是提高推理效率的一個有前景的方向,但設計準確的調度機制以避免損害模型質量仍然是一個挑戰。
架構設計。這一小節探討了針對大型語言模型的創新架構設計。研究人員已經提出了新穎的模型架構[115],超越了原始的Transformer,實現了模型規模、性能和效率之間的平衡,為更快和資源高效的推理開辟了新途徑。 * 注意力簡化:自注意力計算的一個突出挑戰是計算復雜度O(??^2),隨輸入序列長度??呈二次方增長。許多Transformer變體[240]被提出來將標準注意力簡化為非常長的序列任務的更高效替代方案,例如稀疏化[289]、核化[139]和分解[254]。最近,有一種趨勢從之前的注意力簡化方法中借鑒思想,將它們概括和結合起來,以縮短上下文,減少KV緩存的大小,以及注意力復雜度,同時略微降低解碼質量(例如,滑動窗口注意力[129, 299]、基于哈希的注意力[198]、擴張注意力[74])。這些方法中的一個類別是通過壓縮上下文到更少的軟標記(例如,替換為摘要標記[58]或地標標記[184],利用額外的自編碼器方案[95, 169])或直接根據不同的重要性指導[85, 130, 159, 186](或稱為語義壓縮)刪除或改寫不重要的上下文標記來進行上下文壓縮。例如,自適應稀疏注意力[36]采用基于學習的方法來消除非信息性上下文標記的動態化。
模型壓縮。在這里,我們深入探討了模型壓縮技術,旨在通過創建更高效、更緊湊的模型,減少LLMs的內存占用和計算需求,同時不會對性能造成顯著損失。
知識蒸餾:一種方法是知識蒸餾,它訓練一個小型的學生模型,以大型的教師模型為監督。大多數之前的方法都在探索白盒蒸餾[106, 133, 214, 233, 255],需要訪問整個教師模型的參數。由于基于API的LLM服務(例如,ChatGPT)的出現,一些黑盒蒸餾模型吸引了很多關注,例如Alpaca[238]、Vicuna[59]、WizardLM[273]等[201, 313]。這些模型通常具有更少的模型參數,但與原始LLMs(例如,GPT-4[195])相比,在各種下游任務上表現出了有前景的性能。
網絡剪枝:過去幾年中,網絡剪枝方法[180, 215, 215]已被廣泛研究,但并非所有方法都可以直接應用于LLMs。在考慮重新訓練可能帶來的過高計算成本以及評估剪枝是否基于底層系統的實現提高了推理效率方面,這是必不可少的。一些最近的方法[80, 149, 174, 216]將結構化剪枝方法應用于LLMs,刪除整個結構化LLM組件,促進GPU加速。例如,Deja Vu[172]在不修改預訓練模型的情況下,根據上下文稀疏性假設剪切特定的注意力頭和MLP參數。還有一些最新的非結構化方法[40, 87, 232, 251, 276],通常實現LLM壓縮的50-60%稀疏性。值得注意的是,它們可以進一步概括為半結構化N:M稀疏性(即2:4和4:8)[182],通過NVIDIA稀疏張量核心的加速實現顯著的推理加速。LoSparse[161]和DSFormer[49]使用低秩分解將模型權重近似為一個小的密集矩陣和一個稀疏的半結構化矩陣。Flash-LLM[267]通過提供一種適用于非結構化剪枝的內存高效SpMM實現放寬了這一要求。PowerInfer[228]假設這些稀疏激活神經元的偏向訪問,并提出了一個GPU-CPU混合推理引擎,讓GPU和CPU處理不同的神經元。
系統優化本節研究LLM推理系統優化技術,以加速LLM推理,而無需修改LLM計算語義。這一系列工作的目標是通過改進用于大型語言模型推理的底層系統和框架,提高系統效率。 低比特量化。本節探討了最先進的低比特量化技術,這些技術能夠高效地表示模型權重和激活。通過使用更少的比特(即少于32比特)來表示數值,這些方法顯著減少了內存消耗,并加速了硬件平臺上的推理。一種方法是量化LLM,這些量化方法大致可以分為兩個方向:量化感知訓練(QAT)和訓練后量化(PTQ)[280]。PTQ將模型權重[69, 71, 88, 89, 125, 164]甚至激活[268, 281, 287]的計算精度降低到INT8或INT4,通過使用自定義CUDA內核[158, 199]或編譯[302]來提高效率,例如W8A16(即INT8僅權重量化和FP16或BF16激活),GPTQ中的W4A16[88],SmoothQuant中的W8A8[268]和W4A4[266]。硬件的發展也滿足了這些要求。一個支持的證據是,NVIDIA的最新架構,如Turing和Ampere已經包含了INT8和INT4張量核心,最新的Hopper架構雖然取消了INT4支持,但引入了FP8張量核心以獲得更好的數值精度(例如,H100 GPU的FP8與FP32相比可達60倍TFLOPS)。現有方法通常采用各種量化函數,包括均勻方法(即最近舍入)和非均勻方法[143]。為了緩解低精度帶來的性能損失,QAT在模型訓練期間集成了量化[70, 171]。值得注意的是,由于底層系統實現的挑戰,低精度量化方法可能導致比如FP16這樣的傳統精度水平的推理速度更慢[69]。雖然低精度方法顯著降低了模型部署的資源要求,但也有研究表明,量化方法由于存在比例定律,可能對模型的推理性能產生顯著影響[72]。此外,量化還被應用于上下文壓縮(例如,CacheGen[169])和內存高效微調(例如,QLoRA[70],PEQA[142]),結果導致LLM推理的內存消耗降低。
并行計算。本節檢查了針對大型語言模型的并行計算策略。利用現代硬件架構的并行處理能力,這些方法將計算分布在多個核心或設備上,從而在推理期間顯著加速。
內存管理。高效的內存管理仍然是LLM服務面臨的主要挑戰之一,特別是考慮到Transformer架構固有的內存密集型特性。隨著對長序列推理需求的增長,與模型權重和其他激活所需工作空間相比,KV緩存的內存占用成為了優化的主要目標。由于KV緩存內存在增量解碼過程中動態且不可預測地增長和縮小,簡單的方法(例如,FasterTransformer)是預先分配一塊連續的內存,假設最大序列長度。這對于1)請求長度不同的輸入批次和2)并行生成多個輸出序列的復雜解碼場景(例如,波束搜索、并行解碼)來說,嚴重浪費了內存。vLLM[150]提出了分頁注意力,將KV緩存劃分為非連續的內存塊,顯著提高了批量大小和吞吐量。SpecInfer[177]提出樹狀注意力和深度優先樹遍歷,以消除共享相同前綴的多個輸出序列的冗余KV緩存分配。LightLLM[21]采用更精細的標記級內存管理機制,進一步減少了內存使用。然而,這種碎片化內存管理機制的開銷帶來了新的挑戰。特別是在其他優化用于提高批量大小的情況下,這些細粒度內存管理方法可能只提供邊際吞吐量收益,同時大幅增加了推理延遲。顯然,LLM推理中的內存減少與其他算法創新和系統級優化密切相關。雖然有些方法可能對特定工作負載效果很好,但它們可能相互抵消,導致整體性能下降。在內存效率和LLM推理系統的計算性能之間找到正確的平衡仍然是該領域的一個開放而迫切的挑戰。
請求調度。高效地調度傳入的推理請求對于優化LLM服務至關重要。本節回顧了最大化資源利用、保證在延遲服務水平目標(SLO)內的響應時間,并有效處理不同請求負載的請求調度算法。LLM服務的請求調度與一般的ML服務技術有共同之處,因為兩者都旨在高效管理傳入的請求并優化資源利用。這些共同方面包括動態批處理[33]、搶占[114]、優先級[191]、交換[39]、模型選擇[107]、成本效率[295]、負載平衡和資源分配[259]。然而,由于其獨特的特性,如龐大的模型規模、迭代式自回歸解碼機制、未知的可變輸出長度和上下文信息的狀態管理,LLM服務也帶來了獨特的挑戰。
早期的LLM服務系統(例如,NVIDIA Triton上的FasterTransformer)僅支持與之前方法類似的請求級調度。Orca[285]首先注意到了生成型LLMs與之前ML推理系統的請求級調度之間的差距。考慮到可變的輸出序列長度,它在迭代粒度上調度引擎執行,并以先來先服務(FCFS)的順序,使得選定的操作集批處理,以更好地利用硬件。許多后續方法繼承了選擇性批處理和迭代級調度策略,例如vLLM和RayLLM[27]中的連續批處理以及TensorRT-LLM[25]中的流程批處理。此外,SpecInfer通過迭代選擇一批請求來執行一次推測推理和驗證,擴展到了投機解碼。FastServe[261]關注作業完成時間(JCT),涉及迭代級搶占,以優先處理輸入長度較短的請求,而不是FCFS。SARATHI[31]針對分布式推理中由不同長度輸入請求的初始迭代引起的管道泡沫。為了飽和GPU計算,它將輸入提示劃分為均勻塊,并在可能的情況下,將塊插槽與其他請求的解碼迭代結合起來,這也被DeepSpeed-FastGen稱為動態SplitFuse[9]采用。S3[134]涉及輸出序列長度預測器,并幫助在GPU內存限制內安排更多并發請求,以實現更大的批量大小和更高的推理吞吐量。
內核優化。在本小節中,我們深入探討了針對特定操作的內核級優化,這些優化針對語言模型推理管道中的關鍵計算內核。這些優化利用硬件特定特性和軟件技術來加速關鍵計算內核。
軟件框架
生成型LLM服務需要一系列優化,許多最新工作已經開始開發軟件框架,以提供高效的LLM推理部署服務。下面,我們將重新審視這些系統,并對幾個代表性的開源GPU基礎上的LLM服務系統進行全面分析,如表2所示。這些分析不包括一些流行的相關項目,包括1) 專門針對其他硬件的解決方案(例如,PopTransformer[17]、CTranslate2[8]、lammap.cpp和ggml[14])和2) 構建在其他系統之上的部署解決方案,如OpenLLM[26](vLLM)、xinference[30](ggml + vLLM + xFormers)、LMDeploy[20](FasterTransformer)、gpt-fast[15](PyTorch)、DeepSpeed-MII和DeepSpeed-FastGen[11](DeepSpeed-Inference)以及RayLLM和RayServe[27](vLLM)。
我們比較了這些最先進的LLM服務系統,并在幾個方面總結了它們的差異。首先,大多數系統支持張量并行性,以實現多GPU推理并提高系統性能。其中一些還支持流水線并行性或卸載,以分別支持多節點或資源受限環境下的推理。其次,部分系統從Orca學習,并實現了迭代級調度。第三,我們調查了這些系統的注意力內核,并分別介紹了它們在初始和增量階段的實現。對于初始階段,它們通常采用批量通用矩陣乘法(GEMM)方法(例如,cuBLAS、torch、Relay),有些利用在線softmax技巧減少HBM訪問(例如,Flash-attention、xFormers)。增量階段更具挑戰性,因為每個標記的生成方案導致較低的計算強度。為了提高GPU利用率,FasterTransformer手動融合了注意力計算(例如,線性投影、位置偏差、點積、softmax等)到一個高性能的內核模板中,并涉及多種內核優化技術,例如使用共享內存的緩存、用于歸約的warp-shuffle指令、張量核心的半矩陣乘法和累加(HMMA)以及多精度支持。FlexFlow-Serve啟用了投機解碼,并提供了一個基于樹的并行解碼內核,以零內存冗余和最大線程并行性驗證來自多個序列(即來自多個小型模型或不同波束或并行采樣)的推測標記。vLLM從FasterTransformer擴展了融合的多頭注意力(MHA)內核,通過將KV緩存分割成頁面來消除冗余內存使用,特別適用于并行采樣場景。LightLLM采用后續方法,將KV緩存劃分為更細粒度的標記級片段。
值得注意的是,上述討論并未涵蓋其他一些值得注意的方面。例如,即使對于最受歡迎的Flash和Paged注意力內核,它們通常在這些系統中以不同方式實現。TGI直接導入了原始的Flash/Paged注意力庫,LightLLM采用了OpenAI Triton實現的內核,MLC-LLM通過TVM生成內核,TensorRT-LLM修改了FasterTransformer的融合注意力內核以支持分頁注意力。另一個例子是關于輸入感知內核選擇。對于初始階段,TensorRT-LLM根據上下文長度從cuBLAS和Flash注意力中選擇。除了注意力計算外,對于線性投影運算符,最近有一種趨勢是用通用矩陣-向量乘積(GEMV)替換GEMM,以更有效地處理小批量大小(即1)的情況。這些系統還具有許多其他不同的特性,如編程語言(即C++、Python)、低精度支持(即FP16、INT8)、支持的硬件和模型。總之,這些不同的設計和實現選擇主要取決于它們優先考慮的優化目標。例如,vLLM提出分頁注意力以提高批量大小,從而實現更高的吞吐量(??????),而FlexFlow-Serve利用SpecInfer加速解碼以降低延遲(??????)。基本上,低延遲和高吞吐量是LLM服務系統的雙重優化目標,代表了互補但往往相互沖突的目標,需要平衡策略來優化個別任務的快速響應和在特定時間框架內處理的任務量最大化之間的權衡。一些最近的研究[66]進一步將響應延遲分解為TTFT+TPOT × 輸出序列長度,其中TTFT代表首個標記的時間,TPOT代表每個輸出標記的時間。前者由初始階段處理速度驅動,而后者直接取決于增量解碼期間的每次迭代執行時間。區分這兩個指標對LLM服務提供商有益,導致不同的系統設計選擇和用戶體驗(例如,更快的應用響應性[169],更長的提示[9])。此外,降低貨幣成本也是一些LLM服務系統的設計和實現的重要且實際目標[178]。盡管不太可能有一種適用于所有情況的解決方案,但我們相信未來的LLM服務系統將繼續整合這些不同的特性,從而不斷提高系統效率和硬件利用率。
結論
高效的LLM服務是實現普及先進人工智能技術的基本步驟。本綜述旨在為研究人員、實踐者和開發者提供對現有方法論的全面理解,使他們在實際環境中部署LLM時能夠做出明智的決策。通過匯總算法和系統方面的最新研究成果,本文希望加速進步,并在追求高效LLM服務解決方案的過程中促進創新。
圖在表示和分析諸如引文網絡、社交網絡和生物數據等實際應用中的復雜關系方面扮演著重要角色。最近,大型語言模型(LLMs),它們在各個領域取得了巨大成功,也被用于圖相關任務,超越了傳統的基于圖神經網絡(GNNs)的方法,實現了最先進的性能。在這篇綜述中,我們首先全面回顧和分析了結合LLMs和圖的現有方法。首先,我們提出了一個新的分類法,根據LLMs在圖相關任務中扮演的角色(即增強器、預測器和對齊組件)將現有方法分為三類。然后,我們系統地調查了沿著分類法的三個類別的代表性方法。最后,我們討論了現有研究的剩余局限性,并強調了未來研究的有希望的途徑。相關論文已總結,并將在以下網址持續更新://github.com/yhLeeee/Awesome-LLMs-in-Graph-tasks。
圖論,在現代世界的許多領域,特別是在技術、科學和物流領域,扮演著基礎性的角色[Ji et al., 2021]。圖數據代表了節點之間的結構特性,從而闡明了圖組件內的關系。許多實際世界的數據集,如引文網絡[Sen et al., 2008]、社交網絡[Hamilton et al., 2017]和分子數據[Wu et al., 2018],本質上都是以圖的形式表示的。為了處理圖相關任務,圖神經網絡(GNNs)[Kipf and Welling, 2016; Velickovic et al., 2018]已經成為處理和分析圖數據的最受歡迎的選擇之一。GNNs的主要目標是通過在節點之間的遞歸信息傳遞和聚合機制,獲取在節點、邊或圖層面上的表達性表示,用于不同種類的下游任務。
近年來,如Transformer [Vaswani et al., 2017]、BERT [Kenton and Toutanova, 2019]、GPT [Brown et al., 2020] 及其變體等大型語言模型(LLMs)在多個領域取得了重大進展。這些LLMs可輕易地應用于各種下游任務,幾乎無需調整,就在多種自然語言處理任務中展現了卓越性能,例如情感分析、機器翻譯和文本分類 [Zhao et al., 2023d]。雖然它們主要聚焦于文本序列,但目前越來越多的研究開始關注于增強LLMs的多模態能力,使其能夠處理包括圖形 [Chai et al., 2023]、圖像 [Zhang et al., 2023b] 和視頻 [Zhang et al., 2023a] 在內的多種數據類型。 LLMs在圖相關任務中的應用已顯著改變了我們與圖的交互方式,特別是那些含有與文本屬性相關聯的節點的圖。將LLMs與傳統GNNs(圖神經網絡)的結合可以帶來互利共贏,增強圖學習。盡管GNNs擅長捕捉結構信息,但它們主要依賴語義上受限的嵌入作為節點特征,這限制了它們表達節點完整復雜性的能力。通過整合LLMs,GNNs可以得到更強大的節點特征,有效捕捉結構和語境方面的信息。另一方面,LLMs擅長編碼文本,但通常難以捕捉圖數據中的結構信息。結合GNNs和LLMs可以利用LLMs強大的文本理解能力,同時發揮GNNs捕捉結構關系的能力,從而實現更全面、強大的圖學習。例如,TAPE [He et al., 2023] 利用與節點(如論文)相關的語義知識,這些知識由LLMs生成,來提高GNNs中初始節點嵌入的質量。此外,InstructGLM [Ye et al., 2023] 用LLMs替換了GNNs中的預測器,通過平鋪圖形和設計提示(提示)等技術,利用自然語言的表現力。MoleculeSTM [Liu et al., 2022] 將GNNs和LLMs對齊到同一向量空間,將文本知識引入圖形(如分子)中,從而提高推理能力。 顯然,LLMs從不同角度對圖相關任務產生了重要影響。為了更好地系統概覽,如圖2所示,我們遵循Chen et al. [2023a]的方法,組織我們的一級分類法,基于LLMs在整個模型管道中扮演的角色(即增強器、預測器和對齊組件)進行分類。我們進一步細化我們的分類法,并為初始類別引入更多細粒度。 動機。盡管LLMs在圖相關任務中的應用越來越廣泛,但這個迅速發展的領域仍然缺乏系統的綜述。張等人[Zhang et al., 2023d]進行了一項前瞻性綜述,提出了一篇討論圖與LLMs整合所面臨挑戰和機遇的觀點文章。劉等人[Liu et al., 2023b]提供了另一項相關綜述,總結了現有的圖基礎模型,并概述了預訓練和適應策略。然而,這兩篇文章都在全面覆蓋和缺乏專門關注LLMs如何增強圖的分類法方面存在局限性。相比之下,我們專注于圖和文本模態共存的場景,并提出了一個更細粒度的分類法,以系統地回顧和總結LLMs技術在圖相關任務中的當前狀態。
貢獻。這項工作的貢獻可以從以下三個方面總結: (1)結構化分類法。通過結構化分類法,對該領域進行了廣泛概覽,將現有工作分為四類(圖2)。 (2)全面綜述。基于提出的分類法,系統地描述了LLMs在圖相關任務中的當前研究進展。 (3)一些未來方向。我們討論了現有工作的剩余局限性,并指出了可能的未來發展方向。
**LLM作為增強器 **
圖神經網絡(GNNs)已成為分析圖結構數據的強大工具。然而,最主流的基準數據集(例如,Cora [Yang et al., 2016] 和 Ogbn-Arxiv [Hu et al., 2020])采用了樸素的方法來編碼TAGs中的文本信息,使用的是淺層嵌入,如詞袋法、跳躍模型 [Mikolov et al., 2013] 或 TF-IDF [Salton and Buckley, 1988]。這不可避免地限制了GNNs在TAGs上的性能。LLM作為增強器的方法對應于利用強大的LLMs來提升節點嵌入的質量。衍生的嵌入被附加到圖結構上,可以被任何GNNs利用,或直接輸入到下游分類器中,用于各種任務。我們自然地將這些方法分為兩個分支:基于解釋和基于嵌入,這取決于它們是否使用LLMs產生額外的文本信息。
LLM作為預測器
這一類別的核心思想是利用LLMs來對廣泛的圖相關任務進行預測,例如在統一的生成范式下的分類和推理。然而,將LLMs應用于圖模態提出了獨特的挑戰,主要是因為圖數據往往缺乏直接轉換成序列文本的方式,不同的圖以不同的方式定義結構和特征。在這一部分,我們根據模型是否使用GNNs來提取結構特征供LLMs使用,將模型大致分為基于平鋪和基于GNN的預測兩類。
GNN-LLM 對齊
對GNNs和LLMs的嵌入空間進行對齊是整合圖模態與文本模態的有效方式。GNN-LLM對齊確保在特定階段協調它們的嵌入空間時,每個編碼器的獨特功能得以保留。在這一部分,我們總結了對齊GNNs和LLMs的技術,這些技術可以根據是否對GNNs和LLMs都給予同等重視,或是否優先考慮一種模態而另一種模態則不那么重視,被分類為對稱或非對稱。
結論
近年來,將大型語言模型(LLMs)應用于與圖相關的任務已成為研究的一個突出領域。在這篇綜述中,我們旨在提供對適應圖的LLMs的現有策略的深入概述。首先,我們介紹了一個新的分類法,根據LLMs所扮演的不同角色(即增強器、預測器和對齊組件),將涉及圖和文本模態的技術分為三類。其次,我們根據這種分類系統地回顧了代表性的研究。最后,我們討論了一些限制,并強調了幾個未來的研究方向。通過這篇全面的綜述,我們希望能夠揭示LLMs在圖學習領域的進步和挑戰,從而鼓勵在這一領域進一步的提升。
大型語言模型(LLMs)在各種自然語言任務上展現出卓越的性能,但它們容易受到過時數據和領域特定限制的影響。為了解決這些挑戰,研究人員主要采用了兩種策略:知識編輯和檢索增強,通過整合來自不同方面的外部信息來增強LLMs。然而,目前仍然缺乏一個全面的綜述。在本文中,我們提出一項回顧,討論知識與大型語言模型整合的趨勢,包括方法的分類、基準和應用。此外,我們對不同方法進行了深入分析,并指出了未來的潛在研究方向。我們希望這篇綜述能為社區提供快速訪問和對這一研究領域的全面概覽,旨在激發未來的研究努力。
大型語言模型(LLMs)已經展示了在其參數中編碼現實世界知識的令人印象深刻的能力,以及解決各種自然語言處理任務的顯著能力(Brown等,2020年;Hoffmann等,2022年;Zeng等,2022年;Chowdhery等,2022年;Touvron等,2023年;Zhao等,2023b年)。然而,它們在知識密集型任務上仍面臨嚴峻挑戰(Petroni等,2021年),這些任務需要大量的現實世界知識。最近的研究表明,LLMs難以學習長尾知識(Kandpal等,2023年;Mallen等,2023年),無法及時更新其參數以捕捉變化的世界(De Cao等,2021年;Kasai等,2022年)(例如,ChatGPT 1的參數只包含2021年9月之前的信息,對最新的世界知識完全不知情),并且受到幻覺的困擾(Zhang等,2023a;Rawte等,2023年;Huang等,2023a年)。為了緩解這些問題,人們越來越關注通過知識編輯或檢索增強來整合知識和大型語言模型。知識編輯(De Cao等,2021年;Sinitsin等,2020年)旨在使用一種有效的方法修改LLMs中過時的知識,該方法僅更新部分模型參數。檢索增強(Mallen等,2023年;Shi等,2023年;Trivedi等,2023年)采用現成的檢索模型從外部語料庫中獲取相關文檔,以幫助大型語言模型并保持其參數不變。已有許多工作提出整合知識和大型語言模型,專注于上述兩個方面。然而,這些努力仍然相對零散,缺乏全面和系統的綜述。
為了填補這一空白,本文提出了我們的綜述的具體組織,重點關注知識編輯和檢索增強,如圖1所示。我們首先系統地介紹了根據模型處理結構的知識編輯方法(§2),包括輸入編輯(§2.1),模型編輯(§2.2)以及評估知識編輯(§2.3),涵蓋了代表性方法和通用基準。此外,我們對檢索增強進行了詳細討論(§3),包括檢索判斷(§3.1),文檔檢索(§3.2),文檔利用(§3.3),知識沖突(§3.4)和基準(§3.5)。然后,我們總結了一些知識與大型語言模型整合的前沿應用(§4),例如新版Bing 2。最后,為了激發該領域的進一步研究,我們提供了對未來調查方向的洞見(§5)。
2 知識編輯
知識編輯是一種新興方法,通過整合新知識來糾正大型語言模型(LLMs)中的不準確性和更新過時信息。在這一部分,我們深入研究了關于知識編輯的當前工作,特別關注LLMs處理結構在不同方法中的應用。如圖2所示,我們將它們分為三類:輸入編輯(§2.1),模型編輯(§2.2),和評估知識編輯(§2.3)。
2.1 輸入編輯許多大型模型龐大的參數規模和“黑盒”形式常常阻礙它們進行常規的微調,以獲取新知識,例如ChatGPT、Bard3。因此,將知識注入LLMs最直接的方法涉及編輯輸入(Zheng等,2023;Luo等,2023),這既節省成本又減少資源需求。輸入編輯有兩個方面:包括外部信息以增強提示,以及基于反饋編輯提示。調整輸入不僅提供了一種直觀、易理解的新知識過程描述,而且保證了原始模型知識的保存。
2.2 模型編輯與編輯輸入不同,許多研究致力于以參數化方式進行細粒度的模型編輯,這可以確保注入知識的持久性。根據針對LLMs參數的不同操作,我們將它們分為三類,即知識插件、定位然后編輯和整體編輯。
2.3 評估知識編輯在編輯輸入和模型之后,可以通過審查輸出來評估知識整合的程度。這一小節主要介紹模型評估的特點,并提供表1中知識編輯的一般基準概覽。當前用于編輯知識的方法主要旨在整合三元事實知識,這些知識集中在問答(QA)任務上,即ZsRE(Levy等,2017年)。此外,CounterFact是一個專門為知識編輯任務構建的評估數據集,用于衡量與僅僅表面上改變目標詞匯相比顯著變化的有效性(Meng等,2022年)。評估知識編輯的三個主要屬性包括可靠性、通用性、局部性(Yao等,2023b;Huang等, 2023b)。
3 檢索增強如第2節所討論,知識編輯(De Cao等,2021年)是一種有效的方法,通過修改大型語言模型特定部分的參數來更新過時的知識。然而,知識編輯也面臨著一些其他問題。首先,目前還不完全清楚知識在大型語言模型中是如何以及在哪里存儲的。其次,知識與參數之間的映射關系非常復雜,修改與某些知識對應的參數可能會影響其他知識。在本節中,我們介紹了檢索增強,這是一種在保持參數不變的情況下整合知識和大型語言模型的另一種方法。
與主要將外部知識參數化以更新大型語言模型的知識編輯不同,檢索增強在推理階段使用非參數化形式的外部知識。檢索增強通常由一個檢索器和一個大型語言模型組成。給定輸入上下文后,檢索器首先從外部語料庫中獲取相關文檔。然后,我們可以在不同階段使用相關文檔來提高大型語言模型的性能。在本節中,我們專注于檢索增強的以下關鍵問題:
? 大型語言模型什么時候需要通過檢索來增強?(§3.1) ? 如何檢索相關文檔?(§3.2) ? 大型語言模型如何利用檢索到的文檔?(§3.3) ? 如何解決不同文檔中的知識沖突?(§3.4)"
檢索判斷對于檢索增強的大型語言模型,一個非常重要的問題是了解LLMs的知識邊界(Yin等,2023年)并確定何時檢索補充知識。當前的檢索判斷方法主要分為兩類:基于校準的判斷和基于模型的判斷。
文檔檢索如圖3所示,獲取相關文檔有兩種方法。一種方法是使用檢索器從外部語料庫(例如維基百科)中獲取相關文檔。另一種方法是使用大型語言模型生成相關文檔。文檔利用一旦我們擁有了相關文檔,我們如何使用它們來提升大型語言模型的能力?如圖4所示,我們將使用文檔的不同方式分為三類:輸入增強、推理驗證和答案驗證。
檢索增強LLMs中的知識沖突,在模型推理中有兩個知識來源,它們的分工模糊且不透明。第一個是通過預訓練和微調注入的隱含參數化知識(即它們學習到的權重)。第二個是上下文知識,通常作為文本段落從檢索器中獲取。知識沖突意味著所包含的信息是不一致和矛盾的。如圖5所示,知識沖突有兩種類型:內部沖突和外部沖突。內部沖突指的是大型語言模型中的知識與檢索文檔中的知識之間的不一致。外部沖突指的是檢索到的多個文檔之間的不一致。
結論
在本文中,我們對知識與大型語言模型的整合進行了綜述,并提供了其主要方向的廣泛視角,包括知識編輯和檢索增強。此外,我們總結了常用的基準和前沿應用,并指出了一些有希望的研究方向。我們希望這篇綜述能為讀者提供當前進展的清晰圖景,并激發更多的工作。
此綜述關注大型語言模型(LLMs)中的事實性關鍵問題。隨著LLMs在各種領域的應用,它們輸出的可靠性和準確性變得至關重要。我們將“事實性問題”定義為LLMs生成與既定事實不一致內容的概率。我們首先深入探討這些不準確性的影響,強調LLM輸出中事實性錯誤可能帶來的潛在后果和挑戰。隨后,我們分析LLMs存儲和處理事實的機制,尋找事實錯誤的主要原因。我們的討論接著轉向評估LLM事實性的方法,強調關鍵指標、基準和研究。我們進一步探索提高LLM事實性的策略,包括為特定領域量身定制的方法。我們關注兩種主要的LLM配置—獨立LLMs和利用外部數據的檢索增強型LLMs—我們詳細說明它們的獨特挑戰和潛在增強。我們的綜述為旨在加強LLM事實可靠性的研究者提供了一個結構化指南。我們始終維護并更新相關的開源材料,地址為 //github.com/wangcunxiang/LLM-Factuality-Survey。
對知識掌握的追求一直是人工智能系統發展中的基礎愿景。從歷史上看,McCarthy等人(1955年)和Newell與Simon(1976年)的開創性工作都強調了知識表示和推理在AI系統中的重要性。例如,Cyc項目開始了一個雄心勃勃的旅程,旨在編碼常識知識,希望為AI系統提供對世界的全面了解(Lenat, 1995年)。同時,像Miller等人(1990年)的WordNet項目致力于創建捕獲單詞之間語義關系的詞匯數據庫,從而幫助AI系統掌握人類語言的細微差別。 在這些開創性努力之中,Large Language Models(LLMs)的出現,如ChatGPT(OpenAI, 2022b),GPT-4(OpenAI, 2023)和LLaMA(Touvron等人,2023a,b),在學術界和工業界都被視為一個重大的飛躍,尤其是向著擁有大量事實知識的AI系統(OpenAI, 2022a, 2023)。使用LLMs作為知識庫載體的優點是多種多樣的。首先,它們減少了構建和維護專用知識庫的開銷和成本(AlKhamissi等人,2022;Petroni等人,2019c;Wang等人,2023b)。此外,LLMs提供了一種更靈活的知識處理和利用方法,允許進行上下文感知的推理,并具有適應新信息或提示的能力(Huang和Chang,2023;Sun等人,2023a)。然而,盡管它們具有無與倫比的能力,人們對LLMs生成的非事實性或誤導性內容的可能性產生了擔憂(Bender等人,2021;Bubeck等人,2023;OpenAI, 2023)。鑒于這些進展和挑戰,本綜述旨在深入探討LLMs,探索它們的潛力以及圍繞其事實準確性的關注。
了解大型語言模型的事實性不僅僅是一個技術挑戰;對于我們在日常生活中負責任地使用這些工具來說,這是至關重要的。隨著LLMs越來越多地融入到搜索引擎(Microsoft,2023)、聊天機器人(Google,2023; OpenAI,2022b)和內容生成器(Cui等人,2023b)等服務中,它們提供的信息直接影響著數百萬人的決策、信仰和行動。如果一個LLM提供了不正確或誤導性的信息,它可能導致誤解、傳播錯誤的信仰,甚至造成傷害,尤其是對于那些要求高事實準確性的領域(Ling等人,2023b),如健康(Tang等人,2023;Thirunavukarasu等人,2023)、法律(Huang等人,2023a)和金融(Wu等人,2023)。例如,一個依賴LLM進行醫學指導的醫生可能無意中危及患者健康,一個利用LLM洞察力的公司可能做出錯誤的市場決策,或一個被LLM誤導的律師可能在法律程序中失誤(Curran等人,2023)。此外,隨著基于LLM的代理人的發展,LLMs的事實性變得更加強大。駕駛員或自動駕駛汽車可能依賴基于LLM的代理進行規劃或駕駛,其中LLMs犯的嚴重事實錯誤可能造成不可逆轉的損害。通過研究LLMs的事實性,我們的目標是確保這些模型既強大又值得信賴。
近年來,有大量的研究致力于評估LLMs的事實性,這包括像事實性問題回答和事實核查等多種任務。除了評估,努力提高LLMs的事實知識也很顯著。策略的范圍從從外部知識庫檢索信息到持續的預訓練和有監督的微調。然而,盡管有這些日益增長的努力,對LLMs中的事實性進行全面概述仍然是個難題。雖然該領域存在一些調查,如Chang等人(2023年)和Wang等人(2023g年)深入研究了LLMs及其事實性的評估,但它們只觸及了更廣泛的領域的表面。還有一些最近的研究專注于LLMs中的錯覺問題(Rawte等人,2023年; Ye等人,2023年; Zhang等人,2023f年)。但我們在第2.2節中區分了錯覺問題和事實性問題。此外,這些調查經常忽視了我們強調的關鍵領域,如特定領域的事實性或過時信息的挑戰。盡管Ling等人(2023a年)探討了LLMs的領域專長,但我們的調查更加廣泛地關注事實性的更廣泛問題。
據我們了解,我們的工作是對大型語言模型事實性的首次全面研究。 這份綜述旨在為LLMs中的事實性研究提供一個詳盡的概覽,深入探討四個關鍵維度:第2節)事實性問題的定義和影響(Nori等人,2023;Pranshu Verma,2023);第3節)評估事實性的技術及其定量評估(Huang等人,2023b;Min等人,2023);第4節)分析LLMs中事實性的基本機制并確定事實錯誤的根本原因(Kotha等人,2023;Liu等人,2023b);以及第5節)提高LLMs事實性的方法(Du等人,2023;He等人,2022)。值得注意的是,我們將LLMs的使用分類為兩種主要的設置:沒有外部知識的LLMs,如ChatGPT(OpenAI,2022b)和檢索增強型LLMs,如BingChat(Microsoft,2023)。這次調查的完整結構在圖1中說明。通過對現有研究的詳細檢查,我們希望闡明LLMs的這一關鍵方面,幫助研究者、開發者和用戶負責任和有效地利用這些模型的力量。 **增強 **
本節討論在不同階段增強LLMs事實性的方法,包括LLM生成、檢索增強生成、推斷階段的增強以及特定領域的事實性改進,如圖2所示。表7提供了增強方法的概要以及它們相對于基線LLM的改進情況。必須認識到,不同的研究論文可能采用不同的實驗設置,如零射擊、少數射擊或完全設置。因此,在檢查這個表格時,重要的是要注意,即使在評估同一數據集上的同一指標,不同方法的性能指標也可能不是直接可比的。
單獨LLM生成 當關注單獨的LLM生成時,增強策略可以大致分為三大類: (1) 從無監督語料庫中提高事實知識(第5.1.1節):這涉及到在預訓練期間優化訓練數據,如通過去重和強調有信息性的詞語(Lee等人,2022a)。還探討了像TOPICPREFIX(Lee等人,2022b)和句子完成損失這樣的技術來增強這種方法。 (2) 從監督數據中增強事實知識(第5.1.2節):這一類的例子包括監督微調策略(Chung等人,2022;Zhou等人,2023a),這些策略關注于從知識圖譜(KGs)中整合結構化知識或對模型參數進行精確調整(Li等人,2023d)。 (3) 最佳地從模型中提取事實知識(第5.1.3節, 5.1.4節, 5.1.5節):這一類包括像多代理協作(Du等人,2023)和創新提示(Yu等人,2023)這樣的方法。此外,還引入了像事實核心抽樣這樣的新穎解碼方法,以進一步提高事實性(Chuang等人,2023;Lee等人,2022b)。
關于檢索增強生成 檢索增強生成(RAG)已經成為一種廣泛采用的方法,用于解決獨立LLMs固有的某些局限性,如過時的信息和無法記憶的問題(Chase,2022; Liu,2022)。這些挑戰在第4.2.1節中詳細討論。然而,雖然RAG為某些問題提供了解決方案,但它也引入了自己的一系列挑戰,包括信息不足的可能性和對相關數據的誤解,如第4.2.2節中詳細說明。本小節深入探討了為緩解這些挑戰而設計的各種策略。在檢索增強生成的領域內,增強技術可以廣泛地分為幾個關鍵領域: (1) 利用檢索文本進行生成的正常設置(第5.2.1節)。 (2) 交互式檢索和生成(第5.2.2節):這里的例子包括將Chain-of-Thoughts步驟集成到查詢檢索中(He等人,2022),以及使用基于LLM的代理框架進入外部知識APIs(Yao等人,2023a)。 (3) 將LLMs適應到RAG設置(第5.2.3節):這涉及到像Peng等人提出的方法(2023),該方法結合了一個固定的LLM和一個即插即用的檢索模塊。另一個值得注意的方法是REPLUG(Shi等人,2023),一個檢索增強框架,將LLM視為一個黑盒,并使用語言建模分數對檢索模型進行微調。 (4) 從其他知識庫中檢索(第5.2.5節和第5.2.4節):這一類包括從外部參數記憶(Chen等人,2023a)或知識圖(Zhang等人,2023d)檢索的方法,以增強模型的知識庫。 **領域事實增強的LLMs **
領域知識缺陷不僅是限制LLM在特定領域應用的重要原因,而且是學術界和工業界都非常關心的一個主題。在這個小節中,我們討論了那些特定領域的LLMs是如何增強它們的領域事實性的。 表8列出了領域事實性增強的LLMs。在此,我們包括了幾個領域,包括醫療健康(H)、金融(F)、法律/法規(L)、地球科學/環境(G)、教育(E)、食品檢測(FT)和家居翻新(HR)。
結論
在這份綜述中,我們系統地探討了大型語言模型(LLMs)內部事實性問題的復雜景觀。我們首先定義了事實性的概念(第2.2節),然后討論了其更廣泛的意義(第2.3節)。我們的旅程帶領我們穿越了事實性評估的多面領域,包括基準(第3.2節)、指標(第3.1節)、特定評估研究(第3.3節)和特定領域的評估(第3.4節)。接著,我們深入探索,探討了支撐LLMs中事實性的內在機制(第4節)。我們的探索在增強技術的討論中達到高潮,既有純LLMs(第5.1節)也有檢索增強型LLMs(第5.2節),特別關注特定領域的LLM增強(第5.3節)。 盡管本綜述中詳細描述了許多進展,但仍有許多挑戰。事實性的評估仍然是一個復雜的難題,由自然語言的固有變異性和細微差別使其變得復雜。關于LLMs如何存儲、更新和產生事實的核心過程尚未完全揭示。盡管某些技術,如持續培訓和檢索,顯示出了前景,但它們也不是沒有局限性。展望未來,尋求完全基于事實的LLMs既帶來挑戰,也帶來機會。未來的研究可能會深入了解LLMs的神經結構,開發更為強大的評估指標,并在增強技術上進行創新。隨著LLMs日益融入我們的數字生態系統,確保其事實可靠性將始終是最重要的,這對AI社區及其更廣泛的領域都有影響。
大型語言模型(LLMs)在自然語言處理方面展示了令人印象深刻的能力。然而,它們的內部機制仍然不清楚,這種不透明性對下游應用帶來了不希望的風險。因此,理解和解釋這些模型對于闡明它們的行為、局限性和社會影響至關重要。在本文中,我們引入了可解釋性技術的分類體系,并提供了關于解釋基于Transformer的語言模型方法的結構化概述。我們根據LLMs的訓練范式對技術進行分類:傳統的微調范式和基于提示的范式。對于每個范式,我們總結了生成個體預測的局部解釋和總體模型知識的全局解釋的目標和主要方法。我們還討論了用于評估生成解釋的度量標準,并討論了如何利用解釋來調試模型和提高性能。最后,我們比較了LLMs時代解釋技術面臨的關鍵挑戰和新興機會與傳統機器學習模型。
大型語言模型(LLMs),如BERT(Devlin等,2019a)、GPT-3(Brown等,2020)、GPT-4(Bubeck等,2023)、LLaMA-2(Touvron等,2023b)和Claude(AnthropicAI,2023),在各種自然語言處理(NLP)任務中展示出了令人印象深刻的性能。主要科技公司,如微軟、谷歌和百度,已在其商業產品和服務中部署了LLMs以增強功能。例如,微軟利用GPT-3.5來改善新Bing的搜索相關性排名(Mehdi,2023)。由于LLMs通常是復雜的“黑盒子”系統,其內部工作機制是不透明的,高復雜性使模型解釋變得更加具有挑戰性。這種模型不透明性的缺乏有時會導致生成有害內容或幻覺的產生(Weidinger等,2021)。因此,開發解釋能力以揭示這些強大模型的工作方式至關重要。
可解釋性指的是以人類可理解的方式解釋或呈現模型行為的能力(Doshi-Velez和Kim,2017;Du等,2019a)。提高LLMs的可解釋性至關重要,有兩個關鍵原因。首先,對于一般終端用戶,可解釋性通過以可理解的方式闡明模型預測背后的推理機制來建立適當的信任,無需技術專業知識。通過這種方式,終端用戶能夠理解LLMs的能力、局限性和潛在缺陷。其次,對于研究人員和開發人員,解釋模型行為提供了洞察力,以識別意外偏見、風險和性能改進的領域。換句話說,可解釋性充當了一個調試輔助工具,可以快速提高下游任務上的模型性能(Strobelt等,2018;Bastings等,2022;Yuksekgonul等,2023)。它有助于追蹤模型能力隨時間的變化,進行不同模型之間的比較,并開發可靠、道德和安全的模型,以供實際部署使用。 由于LLMs的獨特屬性,其可解釋性技術與傳統機器學習(ML)模型的技術有所不同。LLMs和傳統ML模型之間的差異可以歸因于多個方面。從數據的角度來看,ML模型以監督方式依賴人工構建的特征,而LLMs旨在自動從原始輸入數據中學習特征(Chai和Li,2019)。解釋LLMs捕捉了哪些特征以及這些特征中包含了什么知識是重要的。從模型的角度來看,傳統ML模型通常是針對具體任務設計的,具有不同的模型架構(Liu和Sun,2023)。相比之下,經過廣泛數據集的預訓練的LLMs可以通過微調泛化到各種下游任務(Yang等,2023)。此外,LLMs的注意力機制已被廣泛用于通過為輸入的相關部分分配更高的值來確定輸入的重要性(Hu,2020)。由于注意力權重中編碼的知識和模式可能提示了模型的理解,注意力權重可以被認為是精細調校模型的另一個重要解釋標準。此外,由于LLMs的性能更好,還應進一步研究transformer的組件,包括神經元、層和模塊,學到了什么以及它們是否有不同的功能。從應用的角度來看,傳統ML模型專注于低級模式識別任務,如解析和形態分析,而LLMs可以處理高級推理任務,如回答問題和常識推理(Lauriola等,2022)。特別是,理解LLMs在上下文學習和思維鏈提示以及幻覺現象方面的獨特能力對于解釋和改進模型至關重要。為了更好地理解和改進LLMs,有必要回顧和總結專為LLMs定制的解釋技術。 在本文中,我們提供了一種解釋基于Transformer的語言模型的方法的全面概述。在第2節中,我們介紹了應用LLMs的兩個主要范式:1)傳統的下游微調范式和2)提示范式。基于這一分類,我們在第3節中回顧了適用于微調LLMs的解釋方法,并在第4節中回顧了適用于提示LLMs的解釋方法。在第5節中,我們討論了解釋方法的評估。最后,在第6節中,我們進一步討論了與傳統機器學習模型相比解釋LLMs所面臨的研究挑戰,并提供了有關潛在未來研究方向的見解。本文旨在全面整理關于解釋復雜語言模型的最新研究進展。 LLMs的訓練范式
LLMs的訓練可以基本分為兩個范式,傳統微調和提示,根據它們如何用于適應下游任務。由于這兩個范式之間存在重大區別,因此分別提出了各種類型的解釋(如圖1所示)。 傳統微調范式
在這個范式中,首先對語言模型進行了大規模無標簽文本數據的預訓練,然后在特定下游領域的一組標記數據上進行微調,例如GLUE基準測試中的SST-2、MNLI和QQP(Wang等人,2019)。在微調過程中,很容易在語言模型的最終編碼器層上方添加完全連接的層,使其適應各種下游任務(Rogers等人,2021)。這個范式已經在包含多達十億參數的中型語言模型上取得了成功。例如,包括BERT(Devlin等人,2019a)、RoBERTa(Liu等人,2019)、ELECTRA(Clark等人,2020)、DeBERTa(He等人,2021)等。對于這個范式的解釋重點在于兩個關鍵領域:1)理解自監督預訓練如何使模型獲得語言的基礎理解(例如句法、語義和上下文關系);以及2)分析微調過程如何賦予這些預訓練模型有效解決下游任務的能力。
**提示范式 **
提示范式涉及使用提示,例如自然語言句子中的空白,以便模型填充,實現零樣本學習或少樣本學習,而無需額外的訓練數據。根據其開發階段,這個范式下的模型可以分為兩種類型: 基礎模型:隨著LLMs的規模和訓練數據的增加,它們展示了令人印象深刻的新能力,無需額外的訓練數據。其中一種能力是通過提示實現少樣本學習。這種類型的范式通常適用于大規模語言模型(擁有數十億參數)(例如GPT-3(Brown等人,2020)、OPT(Zhang等人,2022b)、LLaMA-1(Touvron等人,2023a)、LLaMA-2(Touvron等人,2023b)、Falcon(Almazrouei等人,2023))。這些模型被稱為基礎模型或基礎模型,它們可以與用戶進行對話,無需進一步與人類喜好對齊。大規模模型通常適用于這種范式,規模超過10億。例如,LLaMA-2(Touvron等人,2023b)擁有高達700億個參數。基礎模型的解釋旨在理解模型如何學習在回應提示時利用其預訓練知識。 助手模型:基礎模型存在兩個主要限制:1)它們不能按照用戶的指令進行操作,因為預訓練數據包含少量指令-響應示例,2)它們傾向于生成有偏見和有毒的內容(Carlini等人,2023)。為了解決這些限制,基礎模型通過監督微調進一步進行微調(見圖2),以實現人類級別的能力,例如開放域對話。關鍵思想是通過將模型的響應與人類反饋和喜好對齊來實現。這個過程最典型的方式是通過(提示,響應)演示對和來自人類反饋的強化學習(RLHF)進行指導調整。模型通過自然語言反饋進行訓練,以進行復雜的多輪對話。屬于這一類別的模型包括OpenAI的GPT-3.5和GPT4(Bubeck等人,2023)、Anthropic的Claude(AnthropicAI,2023)以及一些開源模型,如Meta的LLaMA-2-Chat(Touvron等人,2023b)、Alpaca(Taori等人,2023)和Vicuna(Chiang等人,2023)。這些模型也可以稱為助手模型、聊天助手或對話模型。助手模型的解釋重點在于理解模型如何從對話中學習開放式互動行為。
**傳統微調范式的解釋 **
在本節中,我們回顧了針對采用預訓練和下游微調范式訓練的LLMs的解釋技術。首先,我們介紹了提供局部解釋(第3.1節)和全局解釋(第3.2節)的方法。在這里,局部解釋旨在提供對語言模型如何對特定輸入實例進行預測的理解,而全局解釋旨在提供對LLM整體工作方式的廣泛理解。接下來,我們討論了如何利用解釋來調試和改進模型(第3.3節)。
局部解釋
解釋的第一類別涉及解釋LLMs生成的預測。讓我們考慮這樣一種情景,我們有一個語言模型,并將特定文本輸入模型。模型隨后產生分類輸出,例如情感分類或下一個標記的預測。在這種情景下,解釋的作用是闡明模型生成特定分類或標記預測的過程。由于目標是解釋LLM如何為特定輸入做出預測,我們將其稱為局部解釋。這個類別包括四個主要方法流,包括基于特征歸因的解釋、基于注意力的解釋、基于示例的解釋和自然語言解釋。
**全局解釋 **
不同于旨在解釋模型的個體預測的局部解釋,全局解釋有助于從模型的角度理解LLMs的工作方式。全局解釋旨在理解個體組件(神經元、隱藏層和較大模塊)編碼了什么,以及解釋了個體組件所學習的知識/語言屬性。我們考察了三種主要的全局解釋方法:探測方法,用于分析模型表示和參數;神經元激活分析,用于確定模型對輸入的響應性;以及基于概念的方法。
**提示范式的解釋 **
在本節中,我們介紹了解釋屬于提示范式的模型的技術,包括1)解釋基礎模型,如LLaMA-2(第4.1節),2)解釋助手模型,如LLaMA-2-Chat(第4.2節),以及3)如何利用LLMs的推理和解釋能力生成用戶友好的解釋(第4.3節)。
基礎模型解釋
隨著語言模型的規模增大,它們展示出了新的能力,如少樣本學習,即僅從少量示例中學習概念的能力。它們還展示了一種思維鏈(CoT)提示能力。鑒于這些新興屬性,解釋性研究有三個主要目標:1)研究提供解釋是否實際有助于模型自身更快地從僅有少量示例中“理解”新任務,2)理解這些大型語言模型如何能夠迅速從有限示例中掌握新任務,從而幫助終端用戶解釋模型的推理,以及3)解釋思維鏈提示。
**助手模型解釋 **
由于大規模無監督預訓練和有監督對齊微調,屬于這一范式的LLMs具有強大的推理能力。然而,它們的巨大規模也使它們容易生成問題輸出,如幻覺。解釋性研究旨在:1)闡明對齊微調的作用,2)分析幻覺產生的原因。
結論
在本文中,我們提供了對LLMs的可解釋性技術的全面概述。我們總結了基于模型訓練范式的局部和全局解釋方法。我們還討論了如何利用解釋來改進模型、評估以及主要挑戰。未來的重要發展選項包括開發針對不同LLMs的解釋方法、評估解釋的忠實性,以及提高人類可解釋性。隨著LLMs的不斷進步,可解釋性將變得極其重要,以確保這些模型具有透明性、公平性和益處。我們希望這份調查為這一新興研究領域提供了有用的組織,同時突顯了未來工作的開放性問題。
近年來,許多自然語言生成方面的先進技術都得益于在互聯網規模的數據上訓練大型語言模型。然而,這種范式可能導致生成有毒、不準確和無益的內容的模型,自動評估指標常常無法識別這些行為。隨著模型能力的提高,人類反饋對于評估和改進模型具有無可估量的價值。本綜述旨在概述近期利用人類反饋改進自然語言生成的研究。首先,我們引入一個全面的反饋形式化,并將現有研究按照這種形式化進行分類和組織。接下來,我們討論反饋的格式和目標,涵蓋了兩種利用反饋(用于訓練或解碼)的方法:直接使用反饋或訓練反饋模型。我們還討論了現有的人類反饋數據收集數據集,以及反饋收集的相關問題。最后,我們對AI反饋這一新興領域進行了概述,該領域利用大型語言模型根據一系列原則進行判斷,盡量減少對人類干預的需求。
1. 引言
要使生成系統得到廣泛應用,它們必須生成的文本不僅流暢且高質量,而且要與人類的期望和規范緊密相符(Vamplew等人,2018;Hendrycks等人,2020;Kenton等人,2021a;Turner等人,2022;Ngo,2022)。實現這樣雄心勃勃的目標需要現代大型語言模型(LLM)超越傳統訓練方法。這方面的最近改進主要集中在納入人類反饋(Bai等人,2022b;Ouyang等人,2022;OpenAI,2023a)。這種反饋作為一種指導力量,引導LLM實現所期望的結果,就像物理機械中的反饋機制一樣(?str?m和Murray,2021)。通常,最先進的語言生成系統是通過使用最大似然估計(MLE)在大量數據上訓練概率性的、自回歸的LLM獲得的。然而,用于訓練這些模型的數據通常來自互聯網,常常包含噪音、社會偏見和錯誤(Bolukbasi等人,2016;Dodge等人,2021)。當這種情況與最大化給定前面的詞匯產生下一個詞匯的概率的目標相結合時,可能導致目標行為的誤設定(Kenton等人,2021b),并可能導致生成有毒、不準確和無益的內容(Sheng等人,2019;Bender等人,2021)。使這個問題更加嚴重的是,這些模型通常使用自動度量評估,它們將生成的文本與某個“參考”文本進行表層特征(如詞匯重疊)比較,這些特征通常與人類感知到的文本質量不相關(Schluter,2017;Mathur等人,2020;Gehrmann等人,2022a),特別是當模型針對它們進行優化時(Paulus等人,2017;Amrhein和Sennrich,2022)。評估困難部分是因為對于許多任務來說,沒有唯一的正確答案,因為相同的交際意圖可以用多種方式傳達。
利用人類評估來評估模型生成文本的質量是一種熱門方法。關鍵的是,考慮到人類感知的質量可以幫助縮小機器生成文本和人類生成文本之間的差距,并有助于應對古德哈特定律帶來的挑戰:“當一個衡量標準成為目標時,它就不再是一個好的衡量標準”(Goodhart,1984)。這一認識激發了人們利用人類對模型生成輸出的反饋來改進自然語言生成系統的興趣,并導致了第一個廣泛使用的通用語言助手的出現(OpenAI,2023a)。人類反饋不僅提高了系統性能,還作為一種機制,使系統與期望的結果或目標保持一致(Rosenblueth等人,1943;Wiener,1948)。
反饋作為一個概念,包含了廣泛的含義和解釋(Wiener,1948);然而,可以識別出一些普遍特征,如其格式、其預期結果以及它作為模型開發過程的一部分的使用方式。在本調查中,我們關注人類反饋在改進語言生成中的作用。我們首先對人類反饋的概念進行形式化,并創建一個文獻中不同類型反饋的分類法,并說明它們是如何被使用的(§2)。我們討論如何根據反饋的格式和目標描述反饋,從期望的模型行為角度(§3)。我們討論直接針對人類反饋優化模型的方法,例如使用人類獎勵函數進行強化學習(§4)。然后,我們轉向繞過直接反饋優化成本的方法,首先訓練反饋模型來近似人類反饋,然后使用這些代理模型改進生成(§5)。我們討論現有的人類反饋數據集,這些數據集通常如何收集,以及收集過程可能對模型行為的影響(§6)。最后,我們討論一項最近的減少收集人類反饋需求的工作,通過利用大型語言模型的AI反饋(§7).
現在我們確定四個關鍵軸,根據它們我們可以對人工反饋的使用進行分類:
**反饋的格式是什么?**人工反饋的格式可以不同,包括二元判斷、數字分數、順序排名或定性的自然語言解釋。
**它的目標是什么?**根據我們模型的用例,反饋可以有各種目的,從評估模型性能和準確性到防止毒性和有害行為。
**什么時候使用?**人工反饋可以融入到訓練階段,直接優化模型參數。或者,它可以在推理時用于指導解碼過程。
**它是如何建模的?**雖然理想情況下,我們將盡可能使用來自人類的直接反饋,但其收集的高昂成本意味著,使用近似人類偏好的代理模型通常是有用的。
反饋格式
當我們想通過人工反饋改進語言生成系統時,需要做出的一個重要決定是以何種格式收集這些反饋。格式的選擇影響到反饋的表現力、收集的便利性,以及我們如何使用它來改進系統。特別是,反饋格式的復雜性是一個重要因素:更簡單的格式通常更容易收集和用作訓練/解碼過程的一部分,但比更“復雜”的格式包含更少的信息,并且可能無法捕獲用于改進系統的重要信息。格式的選擇還影響到人類提供反饋的難度、其一致性/一致性以及反饋的合理性水平(Ghosal等人,2023)。表1中總結了反饋的類型和示例。
目標
收集反饋的目的是使模型的行為與某個(通常定義不明確的)目標行為保持一致:我們可能希望我們的摘要模型生成包含所有核心信息的摘要,即使這意味著它們有點長;在商業機器翻譯中,要格外注意確保模型不會翻譯錯誤關鍵業務信息;在對話代理中,我們可能希望模型能夠生成禮貌且無害的回應。這種對齊目標在AI安全和對齊文獻中得到了廣泛研究(Bostrom,2014;Amodei等人,2016;Bommasani等人,2021)。此外,Kenton等人(2021b)討論了語言代理(自然語言生成模型)中由于錯誤指定的對齊目標(例如,來自訓練數據中的噪聲標簽)而產生的一些行為問題,Leike等人(2018)提出了使用反饋模型來解決指定該目標的困難。Bai等人(2022a)明確地將“對齊”語言模型的問題劃分為提高其有用性和增加其無害性。大多數工作隱含地考慮了針對性能因素(例如,針對任務中的整體性能或遵循指示的能力)或無害因素(例如,不產生有毒文本或提供可能導致傷害的信息)的反饋使用。
什么時候使用?
在理想情況下,我們將直接利用人類反饋來改進生成:人類將為訓練或解碼程序提供反饋,一旦收集到人工反饋,一種使用方法是直接優化模型參數。然而,這要求反饋是“可優化的”,即可能表示為一個優化問題,基于此我們可以獲得改進的模型。例如,如果反饋是一個數值分數(f∈R),我們可以創建以下優化問題:
根據訓練機制的不同,可以將其分為三類,分別稱為基于反饋的模仿學習、聯合反饋建模和強化學習(RL)。 雖然直接優化模型參數提供了更好的控制,但修改它們可能并不總是可行的,特別是在LLM的情況下。此外,在模型訓練期間可能無法獲得反饋,限制了參數調整的范圍。在這種情況下,在解碼過程中利用人工反饋對提高LLM的性能起著關鍵作用。這種類型的反饋來自于實際場景中LLM和用戶之間的交互,使模型能夠從他們的錯誤中學習,并提供了在不改變模型參數的情況下進行改進的機會。此外,反饋作為一種指導機制,允許模型通過利用其現有能力產生更理想的輸出。
如何建模?
一般情況下,直接使用人工反饋來改進模型行為是不可行的:要求人工為每個模型輸出提供反饋既昂貴又耗時。獲取人工反饋的另一種方法是開發可以預測或近似反饋的模型。盡管這些模型可能并不完美,但它們提供了在訓練后以低成本提供反饋的優勢,從而使依賴反饋的技術能夠擴展。在訓練一個反饋模型之后,我們可以使用它來改進生成,幾乎與我們使用人工反饋一樣:要么在生成模型的訓練過程中利用這個反饋模型,要么在解碼過程中合并反饋模型。
反饋模型在有效利用反饋推進生成技術方面起到了關鍵作用。然而,它們嚴重依賴于人類輸入:例如,Gao等人(2022)發現,在各種偏好模型尺寸中,使用少于1000次比較僅能導致微小改進,結果近似于隨機。此外,采用靜態反饋可能導致一致性和準確性方面的挑戰,因為反饋的整合會改變模型輸出分布。AI生成的反饋是一項新興研究領域,側重于利用大型語言模型自身的能力來評估和改進其輸出,提高模型性能而無需持續人類干預。在這個領域,已經出現了兩種主要方法:自我AI反饋和外部AI反饋。
結論
在本文中,我們概述了最近利用人類反饋來改進自然語言生成的研究,強調了不同的定義、收集和利用方法,以及各自的優缺點。大型語言模型的最新發展強調了人類反饋的必要性,以確保模型具有理想的行為并生成有益且無害的文本。我們希望這份調查能幫助研究人員了解當前的技術水平,并發現新的和現有的反饋來源以及利用它們的方法。
多模態學習旨在理解和分析來自多種模態的信息,近年來在監督機制方面取得了實質性進展。然而,對數據的嚴重依賴加上昂貴的人工標注阻礙了模型的擴展。與此同時,考慮到現實世界中大規模的未標注數據的可用性,自監督學習已經成為緩解標注瓶頸的一種有吸引力的策略。基于這兩個方向,自監督多模態學習(SSML)提供了從原始多模態數據中利用監督的方法。在本綜述中,我們對SSML的最先進技術進行了全面的回顧,我們沿著三個正交的軸進行分類: 目標函數、數據對齊和模型架構。這些坐標軸對應于自監督學習方法和多模態數據的固有特征。具體來說,我們將訓練目標分為實例判別、聚類和掩碼預測類別。我們還討論了訓練期間的多模態輸入數據配對和對齊策略。最后,回顧了模型架構,包括編碼器、融合模塊和解碼器的設計,這些是SSML方法的重要組成部分。回顧了下游的多模態應用任務,報告了最先進的圖像-文本模型和多模態視頻模型的具體性能,還回顧了SSML算法在不同領域的實際應用,如醫療保健、遙感和機器翻譯。最后,討論了SSML面臨的挑戰和未來的方向。相關資源的集合可以在: //github.com/ys-zong/awesome-self-supervised-multimodal-learning。
1. 引言
人類通過各種感官感知世界,包括視覺、聽覺、觸覺和嗅覺。我們通過利用每個模態的互補信息來全面了解我們的周圍環境。AI研究一直致力于開發模仿人類行為并以類似方式理解世界的智能體。為此,多模態機器學習領域[1]、[2]旨在開發能夠處理和整合來自多個不同模態的數據的模型。近年來,多模態學習取得了重大進展,導致了視覺和語言學習[3]、視頻理解[4]、[5]、生物醫學[6]、自動駕駛[7]等領域的一系列應用。更根本的是,多模態學習正在推進人工智能中長期存在的接地問題[8],使我們更接近更一般的人工智能。 然而,多模態算法往往仍然需要昂貴的人工標注才能進行有效的訓練,這阻礙了它們的擴展。最近,自監督學習(SSL)[9],[10]已經開始通過從現成的未注釋數據中生成監督來緩解這一問題。單模態學習中自監督的定義相當完善,僅取決于訓練目標,以及是否利用人工標注進行監督。然而,在多模態學習的背景下,它的定義則更為微妙。在多模態學習中,一種模態經常充當另一種模態的監督信號。就消除人工標注瓶頸進行向上擴展的目標而言,定義自我監督范圍的關鍵問題是跨模態配對是否自由獲取。
通過利用免費可用的多模態數據和自監督目標,自監督多模態學習(SSML)顯著增強了多模態模型的能力。在本綜述中,我們回顧了SSML算法及其應用。我們沿著三個正交的軸分解各種方法:目標函數、數據對齊和模型架構。這些坐標軸對應于自監督學習算法的特點和多模態數據所需的具體考慮。圖1提供了擬議分類法的概述。基于前置任務,我們將訓練目標分為實例判別、聚類和掩碼預測類別。還討論了將這些方法中的兩種或兩種以上結合起來的混合方法。
多模態自監督所特有的是多模態數據配對的問題。模態之間的配對,或者更一般的對齊,可以被SSML算法利用作為輸入(例如,當使用一種模態為另一種模態提供監督時),但也可以作為輸出(例如,從未配對的數據中學習并將配對作為副產品誘導)。我們討論了對齊在粗粒度上的不同作用,這種粗粒度通常被假定在多模態自監督中免費可用(例如,網絡爬取的圖像和標題[11]);vs有時由SSML算法顯式或隱式誘導的細粒度對齊(例如,標題詞和圖像塊[12]之間的對應關系)。此外,我們探索了目標函數和數據對齊假設的交集。 還分析了當代SSML模型架構的設計。具體來說,我們考慮編碼器和融合模塊的設計空間,將特定模式的編碼器(沒有融合或具有后期融合)和具有早期融合的統一編碼器進行對比。我們也檢查具有特定解碼器設計的架構,并討論這些設計選擇的影響。
最后,討論了這些算法在多個真實世界領域的應用,包括醫療保健、遙感、機器翻譯等,并對SSML的技術挑戰和社會影響進行了深入討論,指出了潛在的未來研究方向。我們總結了在方法、數據集和實現方面的最新進展,為該領域的研究人員和從業人員提供一個起點。
現有的綜述論文要么只關注有監督的多模態學習[1],[2],[13],[14],或單模態自監督學習[9],[10],[15],或SSML的某個子區域,例如視覺-語言預訓練[16]。最相關的綜述是[17],但它更側重于時間數據,忽略了對齊和架構的多模態自監督的關鍵考慮因素。相比之下,我們提供了一個全面和最新的SSML算法綜述,并提供了一個涵蓋算法、數據和架構的新分類法。
2. 背景知識
多模態學習中的自監督
我們首先描述了本次調研中所考慮的SSML的范圍,因為這個術語在之前的文獻中使用不一致。通過調用不同借口任務的無標簽性質,在單模態環境中定義自監督更為直接,例如,著名的實例辨別[20]或掩蓋預測目標[21]實現了自監督。相比之下,多模態學習中的情況更加復雜,因為模態和標簽的作用變得模糊。例如,在監督圖像字幕[22]中,文本通常被視為標簽,但在自監督多模態視覺和語言表示學習[11]中,文本則被視為輸入模態。
在多模態環境中,術語自監督已被用于指至少四種情況:(1)從自動成對的多模態數據中進行無標簽學習——例如帶有視頻和音頻軌道的電影[23],或來自RGBD攝像機[24]的圖像和深度數據。(2)從多模態數據中學習,其中一個模態已經被手動注釋,或者兩個模態已經被手動配對,但這個注釋已經為不同的目的創建,因此可以被認為是免費的,用于SSML預訓練。例如,從網絡爬取的匹配圖像-標題對,如開創性的CLIP[11]所使用的,實際上是監督度量學習[25],[26]的一個例子,其中配對是監督。然而,由于模式和配對都是大規模免費提供的,因此它通常被描述為自監督的。這種未經策劃的偶然創建的數據通常比專門策劃的數據集(如COCO[22]和Visual Genome[27])質量更低,噪音更大。(3)從高質量的目的注釋的多模態數據(例如,COCO[22]中的手動字幕圖像)中學習,但具有自監督的風格目標,例如Pixel-BERT[28]。(4)最后,還有一些“自監督”方法,它們混合使用免費和手動注釋的多模態數據[29],[30]。為了本次調查的目的,我們遵循自監督的思想,旨在通過打破手動注釋的瓶頸來擴大規模。因此,就能夠在免費可用的數據上進行訓練而言,我們包括了前面兩類和第四類方法。我們排除了僅顯示用于手動管理數據集的方法,因為它們在管理數據集上應用典型的“自監督”目標(例如,屏蔽預測)。
(a)監督式多模態學習和(b)自監督式多模態學習的學習范式:Top,無手動注釋的自監督預訓練;底部,對下游任務進行監督微調或線性讀出。
3. 目標函數
在本節中,我們將介紹用于訓練三類自監督多模態算法的目標函數:實例判別、聚類和掩蓋預測。最后我們還討論了混合目標。
3.1 實例判別
在單模學習中,實例判別(instance discrimination, ID)將原始數據中的每個實例視為一個單獨的類,并對模型進行訓練,以區分不同的實例。在多模態學習的背景下,實例判別通常旨在確定來自兩個輸入模態的樣本是否來自同一個實例,即配對。通過這樣做,它試圖對齊成對模式的表示空間,同時將不同實例對的表示空間推得更遠。有兩種類型的實例識別目標:對比預測和匹配預測,這取決于輸入是如何采樣的。
3.2 聚類
聚類方法假設應用經過訓練的端到端聚類將導致根據語義顯著特征對數據進行分組。在實踐中,這些方法迭代地預測編碼表示的聚類分配,并使用這些預測(也稱為偽標簽)作為監督信號來更新特征表示。多模態聚類提供了學習多模態表示的機會,還通過使用每個模態的偽標簽監督其他模態來改進傳統聚類。
3.3 掩碼預測
掩碼預測任務可以采用自動編碼(類似于BERT[101])或自動回歸方法(類似于GPT[102])來執行。