大型語言模型(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的不斷進步,可解釋性將變得極其重要,以確保這些模型具有透明性、公平性和益處。我們希望這份調查為這一新興研究領域提供了有用的組織,同時突顯了未來工作的開放性問題。
本文提供了一個關于大型語言模型(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顯示了軟件開發活動、研究領域和我們論文結構之間的映射。
本文提供了對多模態基礎模型的分類和演變的全面綜述,這些模型展示了視覺和視覺-語言能力,重點關注從專家模型到通用助手的轉變。研究范圍涵蓋了五個核心主題,分為兩類。(i) 我們從對既定研究領域的調查開始:為特定目的預訓練的多模態基礎模型,包括兩個主題 - 學習視覺基礎架構的方法,用于視覺理解和文本到圖像生成。(ii) 然后,我們介紹了探索性、開放性研究領域的最新進展:旨在擔任通用助手角色的多模態基礎模型,包括三個主題 - 由大型語言模型(LLMs)啟發的統一視覺模型,多模態LLMs的端到端訓練,以及將多模態工具與LLMs鏈接。本文的目標讀者是計算機視覺和視覺-語言多模態社區的研究人員、研究生和專業人士,他們渴望了解多模態基礎模型的基礎知識和最新進展。
視覺是人類和許多生物感知和與世界互動的主要渠道之一。人工智能(AI)的核心愿望之一是開發能夠模仿這種能力的AI智能體,以有效地感知和生成視覺信號,從而推理和與視覺世界互動。例如,識別場景中的對象和動作,以及為交流創建素描和圖片。建立具有視覺能力的基礎模型是一個旨在實現此目標的普遍研究領域。
在過去的十年中,AI領域在模型的開發中經歷了豐碩的軌跡。我們將它們分為圖1.1所示的四個類別。這個分類可以在AI的不同領域中共享,包括語言、視覺和多模態。我們首先使用自然語言處理中的語言模型來說明演變過程。(i)在早期,為各個數據集和任務開發了特定任務的模型,通常是從頭開始訓練的。(ii)通過大規模的預訓練,語言模型在許多已建立的語言理解和生成任務上實現了最先進的性能,例如BERT(Devlin等,2019)、RoBERTa(Liu等,2019)、T5(Raffel等,2020)、DeBERTa(He等,2021)和GPT-2(Radford等,2019)。這些預訓練的模型為下游任務適應提供了基礎。(iii)由GPT-3(Brown等,2020)舉例,大型語言模型(LLMs)將各種語言理解和生成任務統一到一個模型中。隨著網絡規模的訓練和統一,出現了一些新的能力,如上下文學習和思維鏈。(iv)伴隨著人工智能對齊的最新進展,LLMs開始扮演通用助手的角色,遵循人類的意圖,完成廣泛的語言任務,例如ChatGPT(OpenAI,2022)和GPT-4(OpenAI,2023a)。這些助手展示了有趣的能力,如交互和工具使用,并為開發通用AI智能體奠定了基礎。重要的是要注意,最新一代的基礎模型在提供額外功能的同時,也借鑒了其早期版本的顯著特性。
**受到NLP中LLMs的巨大成功的啟發,計算機視覺和視覺-語言社區的研究人員自然會問:ChatGPT/GPT-4在視覺、視覺-語言和多模態模型方面的對等物是什么?**毫無疑問,自從BERT誕生以來,視覺預訓練和視覺-語言預訓練(VLP)越來越受到關注,并已成為視覺的主流學習范式,承諾學習通用的可遷移的視覺和視覺-語言表示,或生成高度可能的圖像。可以說,它們可以被視為多模態基礎模型的早期生成,就像BERT/GPT-2對語言領域一樣。雖然建立像ChatGPT這樣的語言通用助手的路線圖很清晰,但研究社區越來越需要探索建立計算機視覺的對等物:通用視覺助手的可行解決方案。總的來說,建立通用智能體一直是AI的長期目標。具有新興屬性的LLMs已顯著降低了為語言任務建立此類智能體的成本。同樣,我們預見到視覺模型將展現出新的能力,例如遵循由各種視覺提示組成的指令,如用戶上傳的圖像、人類繪制的點擊、素描和遮罩,除了文本提示。這樣強大的零樣本視覺任務組成能力可以顯著降低建立AI智能體的成本。
在這篇文章中,我們將多模態基礎模型的范圍限制在視覺和視覺-語言領域。相關主題的最新綜述論文包括:(i) 圖像理解模型,如自監督學習(Jaiswal等,2020;Jing和Tian,2020;Ozbulak等,2023),切分任何東西(SAM)(Zhang等,2023a,c);(ii) 圖像生成模型(Zhang等,2023b;Zhou和Shimada,2023);以及(iii) 視覺-語言預訓練(VLP)。現有的VLP綜述論文涵蓋了在預訓練時代之前,針對特定VL問題的VLP方法,圖像-文本任務,核心視覺任務,和/或視頻-文本任務(Zhang等,2020;Du等,2022;Li等,2022c;Ruan和Jin,2022;Chen等,2022a;Gan等,2022;Zhang等,2023g)。兩篇最新的綜述論文討論了視覺模型與LLM的集成(Awais等,2023;Yin等,2022)。
其中,Gan等(2022)是一篇關于VLP的綜述,涵蓋了2022年及之前的CVPR關于視覺和語言研究的最新進展系列教程。本文總結了2023年CVPR關于視覺基礎模型最新進展的教程。與前述主要側重于給定研究主題的文獻回顧的綜述論文不同,本文提出了我們對多模態基礎模型從專家到大型語言模型時代的通用視覺助手的角色轉變的觀點。本綜述論文的貢獻總結如下。
?** 我們提供了一篇全面且及時的現代多模態基礎模型的綜述**,不僅涵蓋了視覺表示學習和圖像生成的成熟模型,還總結了過去6個月由LLM啟發的新興主題,包括統一視覺模型,與LLM的訓練和鏈接。 ? 本文旨在為觀眾提供一種觀點,推崇在開發多模態基礎模型中的一種轉變。在特定視覺問題的偉大建模成功的基礎上,我們正朝著構建能夠按照人類意圖完成廣泛計算機視覺任務的通用助手邁進。我們對這些高級主題進行了深入討論,展示了開發通用視覺助手的潛力。
正如Stanford基礎模型論文(Bommasani等,2021)所闡述的,AI正隨著諸如BERT、GPT家族、CLIP(Radford等,2021)和DALL-E(Ramesh等,2021a)這些模型的興起而經歷一場范式轉變,這些模型經過廣泛的數據訓練,可以適應各種下游任務。他們將這些模型稱為基礎模型,以強調它們在核心上的關鍵性但不完整的特性:研究社區的方法論的同質化和新能力的出現。從技術角度來看,使基礎模型成為可能的是遷移學習,使它們變得強大的是規模。基礎模型的出現主要觀察到在NLP領域,范例包括從BERT到ChatGPT。這一趨勢在近年來獲得了推動,擴展到計算機視覺和其他領域。在NLP中,BERT在2018年底的推出被視為基礎模型時代的開始。BERT的顯著成功迅速激發了計算機視覺社區對自監督學習的興趣,催生了如SimCLR(Chen等,2020a)、MoCo(He等,2020)、BEiT(Bao等,2022)和MAE(He等,2022a)等模型。在同一時期,預訓練的成功也顯著推動了視覺-語言多模態領域達到了前所未有的關注度。
在本文中,我們關注的是多模態基礎模型,這些模型繼承了Stanford論文(Bommasani等,2021)中討論的所有基礎模型的屬性,但側重于具有處理視覺和視覺-語言模態能力的模型。在不斷增長的文獻中,我們基于功能和通用性對多模態基礎模型進行分類,見圖1.2。對于每個類別,我們都展示了一些示例模型,展示了這些多模態基礎模型固有的主要能力。
學習通用視覺表示對于構建視覺基礎模型至關重要,因為預訓練一個強大的視覺主干對所有類型的計算機視覺下游任務都是基礎,這些任務范圍從圖像級別(例如,圖像分類、檢索和字幕)、區域級別(例如,檢測和定位)到像素級別任務(例如,分割)。我們將方法分為三類,取決于用于訓練模型的監督信號類型:
標簽監督。像ImageNet(Krizhevsky等,2012)和ImageNet21K(Ridnik等,2021)這樣的數據集一直受到監督學習的歡迎,更大規模的專有數據集也在工業實驗室中使用(Sun等,2017;Singh等,2022b;Zhai等,2022a)。
語言監督。語言是一種更豐富的監督形式。像CLIP(Radford等,2021)和ALIGN(Jia等,2021)這樣的模型使用來自網絡的數百萬甚至數十億噪聲圖像-文本對上的對比損失進行預訓練。這些模型使得零射擊圖像分類成為可能,并使傳統的計算機視覺(CV)模型執行開放詞匯CV任務。我們提倡在野外進行計算機視覺的概念,并鼓勵未來基礎模型的開發和評估。
僅圖像自監督。這一工作方向旨在從圖像本身中挖掘出監督信號來學習圖像表示,范圍從對比學習(Chen等,2020a;He等,2020)、非對比學習(Grill等,2020;Chen和He,2021;Caron等,2021)到遮蔽圖像建模(Bao等,2022;He等,2022a)。
多模態融合,區域級和像素級預訓練。除了預訓練圖像主干的方法外,我們還將討論允許多模態融合的預訓練方法,例如CoCa(Yu等,2022a)、Flamingo(Alayrac等,2022),區域級和像素級圖像理解,例如開放集對象檢測(例如,GLIP(Li等,2022e))和可提示分割(例如,SAM(Kirillov等,2023))。這些方法通常依賴于預訓練的圖像編碼器或預訓練的圖像-文本編碼器對。
最近,由于大規模圖像-文本數據的出現,已經構建了基礎圖像生成模型。使之成為可能的技術包括向量量化VAE方法(Razavi等,2019)、基于擴散的模型(Dhariwal和Nichol,2021)和自回歸模型。
基于文本的視覺生成。這個研究領域關注的是生成忠實的視覺內容,包括圖像、視頻等,這些內容是以開放式文本描述/提示為條件的。文本到圖像生成發展了生成模型,這些模型合成了忠實于文本提示的高保真度圖像。主要例子包括DALL-E(Ramesh等,2021a)、DALL-E 2(Ramesh等,2022)、Stable Diffusion(Rombach等,2021;sta,2022)、Imagen(Saharia等,2022)和Parti(Yu等,2022b)。基于文本到圖像生成模型的成功,文本到視頻生成模型基于文本提示生成視頻,例如Imagen Video(Ho等,2022)和Make-A-Video(Singer等,2022)。
與人類意圖一致的視覺生成器。這個研究領域關注的是改善預訓練的視覺生成器,以更好地遵循人類意圖。為解決基礎視覺生成器固有的各種挑戰,已經進行了努力。這些包括改善空間可控性(Zhang和Agrawala,2023;Yang等,2023b)、確保更好地遵循文本提示(Black等,2023)、支持靈活的基于文本的編輯(Brooks等
根據自然語言處理(NLP)中的模型發展歷史和分類,我們將圖1.2中的多模態基礎模型分為兩類。? 特定目的的預訓練視覺模型涵蓋了大多數現有的多模態基礎模型,包括視覺理解模型(例如,CLIP(Radford等,2021),SimCLR(Chen等,2020a),BEiT(Bao等,2022),SAM(Kirillov等,2023))和視覺生成模型(例如,Stable Diffusion(Rombach等,2021;sta,2022)),因為它們具有針對特定視覺問題的強大可遷移能力。? 通用助手指的是能夠遵循人類意圖以完成野外各種計算機視覺任務的AI代理。通用助手的含義有兩層面:(i)具有統一架構的通用型,可以完成不同類型問題的任務;以及(ii)容易遵循人類指令,而不是替代人類。為此,已經積極探討了一些研究課題,包括統一視覺建模(Lu等,2022a;Zhang等,2022b;Zou等,2023a),與大型語言模型(LLMs)的訓練和鏈接(Liu等,2023c;Zhu等,2023a;Wu等,2023a;Yang*等,2023)。
? 第1章介紹了多模態基礎模型研究的領域,并展示了從專家模型到通用助手的研究歷史轉變。? 第2章介紹了不同消耗視覺數據的方式,重點關注如何學習一個強大的圖像骨干。? 第3章描述了如何生成與人類意圖一致的視覺數據。? 第4章描述了如何設計統一的視覺模型,具有交互式和可提示的界面,特別是在沒有使用LLMs的情況下。? 第5章描述了如何以端到端的方式訓練LLM,以處理視覺輸入進行理解和推理。? 第6章描述了如何將多模態工具與LLM鏈接,以實現新的功能。? 第7章總結了本文并討論了研究趨勢。
第2至6章是本綜述論文的核心章節。這些章節的結構概述如圖1.2所示。我們首先討論了兩種特定任務的典型多模態基礎模型,包括第2章中的視覺理解和第3章中的視覺生成。由于多模態基礎模型最初是基于圖像骨干/表示學習用于理解任務的,因此我們首先對圖像骨干學習方法的過渡進行了全面回顧,從早期的監督方法發展到最近的語言-圖像對比方法,并將討論擴展到從圖像級別到區域級別和像素級別的圖像表示(第2章)。最近,生成型AI越來越受歡迎,視覺生成基礎模型已經得到了發展。在第3章中,我們討論了大規模預訓練的文本到圖像模型,以及社區如何利用生成基礎模型開發新技術,使它們更好地與人類意圖一致。受到自然語言處理領域最新進展的啟發,LLMs在日常生活中為各種語言任務提供通用助手,計算機視覺社區一直在期望并嘗試構建通用的視覺助手。我們討論了構建通用助手的三種不同方法。受到LLMs的精神啟發,第4章著重于統一不同的視覺理解和生成模型,而無需在建模中明確納入LLMs。相比之下,第5章和第6章側重于采用LLMs構建通用視覺助手,通過在建模中明確增加LLMs來實現。具體來說,第5章描述了端到端訓練方法,第6章專注于無需訓練的方法,將各種視覺模型鏈接到LLMs。
視覺語言模型(VLMs)最近已經展示出了強大的效能,作為可以解析關于視覺內容的自然查詢并生成類似人類輸出的視覺助手。在這項工作中,我們探討了這些模型基于感知信息展示人類式推理的能力。為了解決一個關鍵問題,即這些推理能力在多大程度上是完全一致和基于實際的,我們還測量了這些模型的推理一致性。我們通過提出基于思維鏈(CoT)的一致性度量來實現這一點。然而,這樣的評估需要一個包括高級推理和詳細推理鏈的基準,這是昂貴的。我們通過提出一個LLM-人在回路中的管道來解決這一挑戰,這顯著降低了成本,同時確保了高質量數據集的生成。基于這個管道和現有的粗粒度注釋數據集,我們構建了CURE基準,以測量VLMs的零樣本推理性能和一致性。我們評估了現有的最先進的VLMs,并發現即使在表現最佳的模型(BLIP-2)的情況下,也無法展示出強大的視覺推理能力和一致性,這表明需要大力努力,使VLMs能夠像人類一樣系統地和一致地進行視覺推理。作為早期步驟,我們提出了一個旨在提高VLMs的推理性能和一致性的兩階段培訓框架。第一階段涉及使用由LLMs自動生成的逐步推理樣本對VLMs進行監督微調。在第二階段中,我們進一步通過LLMs提供的反饋來增強訓練過程,以生成高度一致和基于實際的推理鏈。我們經驗性地突出了我們框架的有效性,并顯示了在推理性能和一致性方面的相對改進為4%。
最近的努力已經將大型語言模型(LLMs)與外部資源(例如,互聯網)或內部控制流(例如,提示鏈接)結合起來,用于需要定位或推理的任務。然而,這些努力大都是零散的,缺乏構建一個完整的語言智能體的系統框架。為了應對這一挑戰,我們借鑒了符號人工智能中智能體設計的豐富歷史,為新一波的認知語言智能體開發了一個藍圖。我們首先展示LLMs具有與生產系統相同的許多屬性,而最近為改進其定位或推理所做的努力反映了圍繞生產系統構建的認知架構的發展。接著,我們提出了“語言智能體的認知架構”(CoALA) ,這是一個概念框架,用于系統化地將基于LLM的推理、定位、學習和決策作為框架中語言智能體的實例化方法。最后,我們使用CoALA框架來突出顯示缺口,并提出實際的方向,以便在未來培養更有能力的語言智能體。
在短短幾年內,大型語言模型(LLMs)從不存在到在機器學習領域無處不在。由于該領域的發展速度很快,很難確定剩下的挑戰和已經產生成果的應用領域。在本文中,我們旨在建立一個系統的開放問題和應用成功的集合,這樣機器學習研究者可以更快地理解該領域的當前狀態并變得更加高效。
鑒于LLM研究論文的迅速增長,我們旨在回答兩個問題:(1) 挑戰:什么問題尚未解決? (2) 應用:LLMs目前應用在哪些領域,以及這些挑戰是如何限制它們的? 對于(1),我們將圖1中的挑戰分為三個更廣泛的類別:“設計”、“行為”和“科學”。為了回答(2),我們探討了聊天機器人、計算生物學、計算機編程、創意工作、知識工作、法律、醫學、推理、機器人技術和社會科學等領域。本文是一個帶有觀點的評論,并假設讀者已熟悉LLMs及其工作方式(我們在第4節中提供了更多的入門作品)。此外,我們主要關注基于文本數據訓練的模型。我們的目標讀者是技術研究者,不討論LLMs的政治、哲學或道德觀點。
在本節中,我們旨在為實踐者提供一個關于LLMs當前應用領域的寬泛概覽,并突出跨領域的一些常見應用架構。與“挑戰”部分類似,我們按如下方式突出每個應用領域的關鍵限制。
在這項工作中,我們確定了大型語言模型的幾個尚未解決的挑戰,提供了它們當前應用的概覽,并討論了前者如何限制后者。通過強調現有方法的局限性,我們希望促進未來針對這些問題的研究。我們還希望,通過提供在不同應用領域中使用的方法概覽,我們可以促進域間的思想轉移,并針對進一步的研究。
隨著大型語言模型(LLM)發展的日益普及,吸引了大量關注,各種應用領域的模型不斷涌現。然而,將大型語言模型與語義技術相結合以進行推理和推斷仍然是一項具有挑戰性的任務。本文分析了當前在基礎LLM方面的進展,如ChatGPT,如何與專用預訓練模型,如REBEL,進行比較,以實現實體和關系的聯合提取。為了評估這種方法,我們使用與可持續性相關的文本作為案例,進行了多個實驗。我們創建了從原始文本自動生成知識圖譜的流程,并發現使用先進的LLM模型可以提高從非結構化文本創建這些圖譜的過程的準確性。此外,我們還探討了使用基礎LLM模型進行自動本體創建的潛力,從而生成更相關且準確的知識圖譜。本節描述了本研究中使用的方法,包括數據收集過程以及用于分析收集到的數據的實體-關系提取算法。
**A. 數據收集過程 **為了對實體-關系提取的兩種方法進行實驗性比較,我們從網絡上收集了有關可持續性主題的新聞數據。為此,我們使用了News API [21]系統。News API是一個HTTP REST API,用于從網絡上搜索和檢索實時文章。它提供了通過指定以下選項在網絡上發布的文章中進行搜索的功能:關鍵詞或短語、發布日期、來源域名和語言。通過使用News API,我們收集了2023-02-15至2023-03-19關于可持續性主題的94篇新聞文章。收集到的文本包含各種字數,從50個到超過4200個不等。由于輸入到語言模型中的令牌數量受到限制,因此需要進行額外的預處理步驟來處理包含大量單詞的文本。
**B. 關系提取方法 **關系提取是自然語言處理(NLP)中的一項基本任務,旨在識別句子或文檔中實體之間的語義關系。這項任務具有挑戰性,因為它需要理解實體出現的上下文以及它們之間存在的關系類型。在本小節中,我們將介紹如何利用REBEL和ChatGPT進行關系提取任務。1) REBEL:我們首先嘗試使用REBEL從非結構化新聞文章中提取關系。為了讓REBEL能夠使用提供的文本,需要使用相應的分詞器功能對其進行分詞。分詞是將原始文本分割成稱為令牌的較小單位的過程。令牌可以是單詞、字符或子詞。模型對令牌的限制為512個令牌,這意味著在將較長的收集到的文章發送到模型進行三元組提取之前,需要對其進行預處理。為了解決這個限制,我們將原始文本進行分詞,并將令牌劃分為256個令牌的批次。這些批次分別由REBEL模型處理,然后合并結果以提取較長文本的關系。還向提取的關系添加元數據,引用生成關系的令牌批次。采用這種方法,由于令牌批次可能在句子的中間開始或結束,某些關系可能無法準確提取。然而,這種情況發生的次數微乎其微。因此,我們將其處理留給未來的工作。實體-關系提取過程完成后,提取的信息存儲在三元組結構中。為了進一步規范提取的實體,我們執行實體鏈接[22]。實體鏈接是指將原始文本中提到的實體與知識庫中相應實體進行識別和關聯的過程。實體鏈接過程不屬于REBEL模型的一部分,它是用于優化提取關系的額外后處理步驟。在本研究中,我們使用DBpedia作為知識庫,并認為如果兩個實體具有相同的DBpedia URL,則它們是相同的。這方法不適用于DBpedia上不存在的實體。
**本文回顧了在擴散模型在廣泛的生成任務中流行的背景下的文本到圖像的擴散模型。作為一項獨立的工作,本綜述首先簡要介紹基本擴散模型如何用于圖像合成,然后介紹條件或指導如何改善學習。**在此基礎上,綜述了文本條件圖像合成(即文本到圖像)的最新方法。本文進一步總結了文本到圖像生成之外的應用:文本指導的創意生成和文本指導的圖像編輯。除了迄今取得的進展,本文還討論了現有的挑戰和有希望的未來方向。
//www.zhuanzhi.ai/paper/8a64d962c13c8857d5c06bcdc0c43c0a
1. 引言
一幅畫勝過千言萬語。正如一句老話所說,圖像比純文本更能講述故事。當人們閱讀文本故事時,他們可以通過想象在腦海中畫出相關的圖像,這有助于他們理解和享受更多。因此,設計一個從紋理描述生成視覺逼真圖像的自動系統,即文本到圖像任務,是一項非平凡任務,因此可以被視為類人或通用人工智能的一個重要里程碑[1],[2],[3],[4]。隨著深度學習[5]的發展,文本到圖像任務已經成為計算機視覺中最令人印象深刻的應用之一[6]、[7]、[8]、[9]、[10]、[11]、[12]、[13]、[14]、[15]、[16]、[17]、[18]。我們在圖1中總結了文本到圖像生成的代表性工作的時間軸。如圖1所示,AlignDRAW[6]是一項從自然語言生成圖像的開創性工作,但受到了不現實的結果的影響。文本條件GAN[7]是第一個從字符級到像素級的端到端差分架構。不同于基于GAN的方法[7]、[8]、[9]、[10]主要在小規模數據環境下進行,自回歸方法[11]、[12]、[13]、[14]利用大規模數據進行文本到圖像生成,代表性方法包括OpenAI的DALL-E[11]和谷歌的Parti[14]。然而,自回歸特性使得這些方法[11],[12],[13],[14]存在較高的計算成本和序列誤差累積。
最近,擴散模型(DM)出現了成為文本到圖像生成中最先進的新模型的趨勢[15],[16],[17],[18]。基于擴散的文本到圖像合成也在社交媒體上引起了廣泛關注。在過去的一年里,大量關于文本到圖像擴散模型的工作已經出現,但更多的工作預計將在不久的將來出現。相關著作的數量使讀者在沒有全面調研的情況下,了解文本-圖像擴散模型的最新發展越來越具有挑戰性。然而,據我們所知,目前還沒有關于基于擴散的文本到圖像生成的最新進展的綜述工作。相關綜述的一個分支[19],[20],[21],[22]綜述了擴散模型在所有領域的進展,使其局限于對測試到圖像合成任務的有限覆蓋。另一個綜述流[21],[23],[24]專注于文本到圖像任務,但僅限于基于GAN的方法,考慮到擴散模型取代GAN的最近趨勢,這些方法有些過時。本文通過全面介紹基于擴散模型的文本到圖像任務的最新進展,并對其未來方向進行了展望,填補了上述兩個流之間的空白。 **該綜述首先回顧了基于擴散模型的文本到圖像任務的最新進展,因此處于擴散模型和文本到圖像合成的交叉點。**因此,我們將本文的其余部分組織如下。第二節介紹了擴散模型的背景,包括對文本到圖像合成很重要的指導方法。第三部分討論了基于擴散模型的文本生成圖像任務的開創性工作,包括GLIDE[15]、Imagen[16]、Stable diffusion[17]和DALL-E2[18]。第四部分從各個方面進一步論述了后續研究對第三部分開拓性工作的完善。通過總結最近的基準和分析,在第5節中從技術和道德角度進一步評估這些文本到圖像的方法。除了文本到圖像的生成外,還介紹了第六節中的相關任務,包括文本指導的創意生成(如文本到視頻)和文本指導的圖像編輯。回顧了文本到圖像生成之外的各種應用,并討論了挑戰和未來的機會。 2. 開創性的文本到圖像擴散模型
本節介紹基于擴散模型的文本到圖像的前沿框架,根據擴散先驗在哪里進行,可以大致分類,即像素空間或潛空間。第一類方法直接從高維像素級生成圖像,包括GLIDE[15]和Imagen[16]。另一組工作建議首先將圖像壓縮到一個低維空間,然后在這個潛空間上訓練擴散模型。潛空間類的代表性方法有Stable Diffusion[17]、VQ-diffusion[39]和DALL-E 2[18]。 像素空間中的框架
GLIDE:關于DM的第一個T2I工作。本質上,文本到圖像是以文本為條件的圖像合成。因此,將類條件DM中的標簽替換為文本,使采樣生成以文本為條件是很直觀的。正如在2.3節中討論的,引導擴散提高了條件DM中樣本[37]的真實感,其無分類器變體[38]有助于處理自由形式的提示。受此啟發,GLIDE[15]在T2I中采用無分類器指導,將原始類別標簽替換為文本。GLIDE[15]還調查了剪輯指導,但與無分類器指導相比,人類評估人員不太喜歡樣本的照片真實感和標題相似性。作為其框架中的一個重要組件,文本編碼器被設置為一個transformer[40],具有24個殘差塊,寬度為2048(大約1.2B參數)。實驗結果表明,GLIDE[15]在FID和人工評價指標上均優于DALL-E [11]。
Imagen:用預訓練語言模型編碼文本。
繼GLIDE[15]之后,Imagen[16]采用無分類器指導的圖像生成。GLIDE和Imagen的核心區別在于它們對文本編碼器的選擇。具體來說,GLIDE使用成對的圖像-文本數據與擴散先驗一起訓練文本編碼器,而Imagen[16]采用預訓練和凍結的大型語言模型作為文本編碼器。凍結預訓練編碼器的權重有助于離線文本嵌入,這為文本到圖像擴散先驗的在線訓練減少了可忽略不計的計算負擔。此外,文本編碼器可以在圖像-文本數據(如CLIP[41])或純文本語料庫(如BERT [42], GPT[43],[44],[45]和T5[46])上進行預訓練。純文本語料庫明顯大于成對的圖像-文本數據,使這些大型語言模型接觸到分布豐富而廣泛的文本。例如,BERT[42]中使用的純文本語料庫約為20GB, T5[46]中使用的純文本語料庫約為800GB。以不同的T5[46]變體作為文本編碼器,[16]揭示了在Imagen中增加語言模型的大小比擴大擴散模型的大小更能提高圖像保真度和圖文對齊。
隱空間框架
穩定擴散:潛空間的里程碑式研究。在隱空間上訓練擴散模型的代表性框架是穩定擴散,它是隱擴散模型(LDM)[17]的擴展版本。繼Dall-E[11]采用VQ-VAE學習視覺碼本之后,穩定擴散在第一階段使用VQ-GAN[47]進行潛表示。值得注意的是,VQ-GAN通過添加對抗性目標來改進VQ-VAE,以增加合成圖像的自然度。使用預訓練的VAE,穩定擴散逆轉了用噪聲擾動潛空間的前向擴散過程。穩定擴散還引入了交叉注意力,作為各種條件信號(如文本)的通用調節。在[17]上的實驗結果表明,在隱空間上進行擴散建模在降低復雜度和保持細節方面明顯優于在像素空間上進行擴散建模。在VQ-diffusion[39]中,采用先掩碼再替換的擴散策略,也實現了類似的擴散算法。與像素空間方法的發現類似,無分類器指導也顯著改善了隱空間[17]、[48]中的文本到圖像擴散模型。
3. 文本到圖像擴散模型的改進
3.1改進模型架構
關于指導的選擇。在無分類器指導的基礎上,[15]、[57]、[58]等工作也利用CLIP[41]探索了跨模態指導。具體來說,GLIDE[15]發現CLIP-guidance的表現低于無分類器指導的變體。相比之下,另一項修復[59]的工作指出,缺乏大規模的transformer語言模型,使得這些具有CLIP指導的模型難以編碼文本提示和生成具有細節的復雜場景。通過結合大型語言模型和跨模態匹配模型,修復[59]顯著提高了生成圖像的樣本保真度和圖像-文本對齊。通用的圖像合成能力使修復[59]可以在簡單和復雜的場景中生成圖像。 3.2 空間控制示意圖
盡管它們具有前所未有的高圖像保真度和標題相似性,但大多數文本到圖像的DMs,如Imagen[16]和DALL-E2[18],并不提供對空間布局的細粒度控制。為此,SpaText[62]引入了空間文本(ST)表示,可以通過調整SOTA DM的解碼器對其進行微調。具體來說,新的編碼器同時滿足局部ST和現有的全局文本。因此,SpaText[62]的核心在于ST,其中的擴散先驗單獨訓練,以將CLIP中的圖像嵌入轉換為其文本嵌入。在訓練過程中,通過使用CLIP圖像編碼器將分割后的圖像對象作為輸入直接生成ST。并發工作[63]提出通過簡單的草圖圖像實現細粒度的局部控制。他們的方法的核心是一個潛在引導預測器(LGP),這是一個像素級MLP,將噪聲圖像的潛在特征映射到相應的草圖輸入。經過訓練后(請參閱[63]了解更多訓練細節),LGP可以部署到預訓練的文本到圖像DM,而不需要進行微調。
3.3 面向概念控制的文本反轉
文本到圖像生成的先驅工作[15],[16],[17],[18]依靠自然語言來描述生成圖像的內容和風格。然而,在某些情況下,文本不能準確地描述用戶想要的語義,例如生成一個新的主題。為了合成具有特定概念或主題的新場景,[64],[65]引入了一些具有所需概念的參考圖像,然后將參考圖像翻轉為文本描述。具體來說,[64]將幾個參考圖像中的共享概念翻轉到文本(嵌入)空間,即“偽詞”。生成的“偽詞”可用于個性化生成。DreamBooth[65]采用了類似的技術,主要區別在于對預訓練DM模型進行微調(而不是凍結),以保留主題身份的關鍵視覺特征。
3.4 分布外檢索
SOTA文本到圖像模型令人印象深刻的性能是基于這樣的假設:該模型很好地暴露了以訓練風格描述公共實體的文本。然而,當實體很少見,或者期望的風格與訓練風格有很大不同時,這種假設就不成立了。為了緩解分布外性能的顯著下降,多個工作[66]、[67]、[68]、[69]都使用了將外部數據庫作為內存進行檢索的技術。這種技術首先在NLP[70],[71],[72],[73],[74]和最近在基于GAN的圖像合成[75]中獲得了關注,通過將全參數模型轉換為半參數模型。受此啟發,[66]增強了具有檢索的擴散模型。檢索增強擴散模型(RDM)[66]由條件DM和圖像數據庫組成,圖像數據庫被解釋為模型的顯式部分。通過在CLIP中測量距離,為每個查詢查詢k近鄰,即訓練樣本,在外部數據庫中,擴散先驗由具有固定CLIP圖像編碼器的KNN近鄰的更有信息的嵌入來指導,而不是文本嵌入。KNN-diffusion[67]采用了一種基本相似的方法,主要不同之處在于使擴散先驗地附加在文本嵌入上,以提高生成的樣本質量。后續的Re-Imagen[69]也采用了這種做法。與兩階段框架的RDM[66]和KNN-diffusion[67]相比,Re-Imagen[69]采用單階段框架,選擇與潛空間距離不相關的K-NN近鄰。此外,Re-Imagen還允許檢索到的鄰居既是圖像又是文本。如[69]所述,Re-Imagen在基準COCO數據集上的性能比KNN-diffusion有很大的優勢。
最近,高度成功但不透明的機器學習模型激增,這引發了對可解釋性的迫切需求。該畢業論文通過新穎的定義、方法和科學綜述解決了可解釋性問題,確保可解釋性在現實問題的背景下是有用的。我們首先定義什么是可解釋性,以及圍繞它的一些需求,強調語境的作用被低估。然后,我們深入研究解釋/改進神經網絡模型的新方法,專注于如何最好地評分、使用和提取交互。接下來,我們將從神經網絡轉向相對簡單的基于規則的模型,研究如何在維護極其簡潔的模型的同時提高預測性能。最后,我們總結了促進可解釋數據科學的開源軟件和數據的工作。在每個案例中,我們深入到一個特定的背景,這激發了所提出的方法論,從宇宙學到細胞生物學到醫學。所有代碼都可以在github.com/csinva上找到。
本論文工作
機器學習模型最近因其準確預測各種復雜現象的能力而受到相當大的關注。然而,人們越來越認識到,除了預測之外,這些模型還能夠產生關于數據中包含的領域關系的有用信息(即解釋)。更準確地說,可解釋機器學習可以定義為“從機器學習模型中提取有關數據中包含的關系或該模型學習到的關系的相關知識”186。解釋有其自身的用途,如醫學[153]、科學[13,278]和決策[37],以及審計預測本身,以應對監管壓力[97]和公平[74]等問題。在這些領域中,解釋已被證明有助于評估學習模型,提供修復模型的信息(如果需要),并與領域專家[47]建立信任。然而,隨著可解釋技術的爆炸式增長[186,193,291,273,90,11,300,100],可解釋方法在實踐中的使用引起了相當大的關注[4]。此外,我們還不清楚如何在現實環境中評估可解釋技術,以促進我們對特定問題的理解。
概述數據科學生命周期的不同階段,其中可解釋性很重要。 為此,我們首先回顧了2019年PNAS論文[186](與Jamie Murdoch、Reza Abbasi-Asl、Karl Kumbier和Bin Yu合著)之后對可解釋性的一些要求。然后我們討論了一些批判性評價解釋的方法。然后,我們闡述了新的方法,以解決機器學習模型的可解釋性的差距。至關重要的是,這種方法是在現實世界問題的背景下與領域專家一起開發和評估的。這項工作跨越了不同的層次,試圖從黑盒模型中提取洞察力,并盡可能用更簡單的模型替換它們。圖1.1顯示了本文的概述,旨在解決嚴格基于現實問題的可解釋性問題。第一部分從解釋神經網絡事后解釋的不同方法開始。這些方法使理解神經網絡中不同特征之間的相互作用成為可能,并以宇宙學參數預測為背景(第5章)。第二部分接著展示了如何使用這些解釋方法直接改善神經網絡。要么通過正則化(第6章),要么通過蒸餾(第7章)。這在分子伙伴預測(第8章)的背景下得到了展示。接下來,第三部分介紹了用于構建高度預測的基于規則的模型的改進方法,這些模型非常簡潔,基于臨床決策規則開發問題。最后,第四部分介紹了新的開源軟件和不可解讀建模數據。
第一部分: 事后神經網絡解釋
之前的大量工作集中于為單個特征分配重要性,如圖像中的像素或文檔中的單詞。對于不同的體系結構,有幾種方法產生了特征級的重要性。它們可以分為基于梯度的[255,264,240,18]、基于分解的[185,242,17]和其他的[59,83,218,303],方法之間有許多相似之處[10,159]。雖然已經開發了許多方法來將重要性歸因于模型輸入的單個特征,但用于理解關鍵特征之間的交互作用的工作相對較少。這些交互是解釋現代深度學習模型的關鍵部分,因為它們使結構化數據具有強大的預測性能。第一部分介紹了最近開發的兩種方法,用于提取(已經訓練過的)DNN已經學習到的特征之間的交互。第3章介紹了聚集上下文分解(ACD),它通過貪婪地打分和組合組級重要性來生成層次重要性。這使得簡單有效地可視化哪些特性對單個預測是重要的。第4章介紹了轉換重要性(TRIM),它允許計算模型輸入轉換交互的分數。這兩種方法都可以更好地理解宇宙參數預測(第5章),其中的可解釋性允許人們在將模型應用于真實天文數據時相信模型的預測。
第二部分: 利用解釋改進神經網絡
在第一部分中介紹了解釋交互和轉換的方法之后,第二部分介紹了使用這些屬性直接改進模型的兩種方法。在引入和評估解釋方法時,這是一個重要且經常被忽略的步驟,它有助于用直接的用例來建立解釋的效用。
第三部分: 基于規則的可解釋建模
本節將完全脫離深度學習,而將重點放在基于規則的建模上。只要有可能,首先擬合一個簡單的模型比擬合一個復雜的模型,然后用事后的解釋來檢查它更可取。一個足夠簡單的基于規則的模型可以被完全理解,并且很容易用手模擬、記憶和推理反事實。
第四部分:開源軟件與數據
在數據科學和機器學習領域,好的開源軟件和數據存儲庫與好的想法一樣有用(如果不是更有用的話)。這一部分涵蓋了上述研究中產生的兩個python包,以及一個為開源建模而策劃的數據存儲庫。
近年來,預訓練模型(PTMs)的出現將自然語言處理(NLP)帶入了一個新的時代。在這項綜述中,我們提供了一個全面的PTMs調研。首先簡要介紹了語言表示學習及其研究進展。然后,我們根據四種觀點對現有的PTMs進行了系統的分類。接下來,我們將描述如何將PTMs的知識應用于下游任務。最后,我們概述了未來PTMs研究的一些潛在方向。本調查旨在為理解、使用和開發各種NLP任務的PTMs提供實際指導。
1. 概述
隨著深度學習的發展,各種神經網絡被廣泛用于解決自然語言處理(NLP)任務,如卷積神經網絡(convolutional neural networks, CNNs)[75,80,45]、遞歸神經網絡(neural networks, RNNs)[160, 100]、基于圖的神經網絡(graphbased neural network, GNNs)[146, 161, 111]和注意力機制[6,171]等。這些神經模型的優點之一是能夠緩解特征工程問題。非神經NLP方法通常嚴重依賴于離散的手工特征,而神經方法通常使用低維和稠密的向量(又稱分布式表示)隱式地表示語言的語法或語義特征。這些表示是在特定的NLP任務中學習的。因此,神經方法使人們可以很容易地開發各種NLP系統。
盡管神經模型在NLP任務中取得了成功,但與計算機視覺(CV)領域相比,性能改進可能不那么顯著。主要原因是,當前用于大多數監督的NLP任務的數據集相當小(機器翻譯除外)。深度神經網絡通常具有大量的參數,使其對這些小的訓練數據過度擬合,在實際應用中泛化效果不佳。因此,許多NLP任務的早期神經模型相對較淺,通常只包含1 ~ 3個神經層。
最近大量的工作表明,在大型語料庫上的預訓練模型(PTMs)可以學習通用語言表示,這對后續的NLP任務是有益的,可以避免從零開始訓練新模型。隨著計算能力的發展,深層模型(即隨著訓練技能的不斷提高,PTMs的體系結構由淺向深推進。第一代PTM的目標是學習好的詞嵌入。由于下游任務不再需要這些模型本身,它們在計算效率方面通常非常膚淺,如Skip-Gram[116]和GloVe[120]。雖然這些預訓練的嵌入可以捕獲單詞的語義含義,但它們是上下文無關的,不能捕獲文本的高級概念,如語法結構、語義角色、回指等。第二代PTMs主要學習上下文詞嵌入,如CoVe[113]、ELMo[122]、OpenAI GPT[130]、BERT[32]等。這些學習過的編碼器仍然需要在上下文中通過下游任務來表示單詞。此外,還提出了各種預訓練的任務,以學習PTMs的不同目的。
這篇綜述的貢獻可以總結如下:
3.資源豐富。我們在PTMs上收集了豐富的資源,包括開源系統、論文列表等。
綜述的其余部分組織如下。第2節概述了PTMs的背景概念和常用符號。第3節簡要概述了PTMs,并澄清了PTMs的分類。第4節提供了PTMs的擴展。第5節討論如何將PTMs的知識遷移到下游任務。第6節給出了PTMs的相關資源,包括開源系統、論文列表等。第7節介紹了跨各種NLP任務的應用程序集合。第8節討論了當前的挑戰并提出了未來的方向。第9節對本文進行了總結。
2. 背景
2.1 語言表示學習
分布式表示的核心思想是用低維實值向量來描述文本的意義。而向量的每一個維度都沒有對應的意義,而整體則代表一個具體的概念。圖1說明了NLP的通用神經體系結構。詞嵌入有兩種:非上下文嵌入和上下文嵌入。它們之間的區別是,一個詞的嵌入是否根據它出現的上下文動態變化。
2.2 神經上下文編碼器
大部分的神經上下文編碼器可以分為三類:卷積模型、序列模型和基于圖的模型。圖2說明了這些模型的體系結構。
(1) 卷積模型。卷積模型采用單詞在輸入句中的嵌入,通過卷積運算將相鄰詞的局部信息聚合起來,從而獲取單詞的意義[80]。卷積模型通常易于訓練,能夠捕獲局部上下文信息。
(2 )序列模型。序列模型通常采用rns(如LSTM[60]和GRU[21])來捕獲單詞的上下文表示。在實踐中,雙向RNNs被用來收集單詞兩邊的信息,但其性能往往受到長期依賴問題的影響。
(3) 基于圖模型。與上述模型不同的是,基于圖的模型以單詞為節點,學習單詞之間具有預定義語言結構的上下文表示,如句法結構[146,161]或語義關系[111]。
2.3 為什么要預訓練?
隨著深度學習的發展,模型參數的數量迅速增加。需要更大的數據集來充分訓練模型參數并防止過度擬合。然而,對于大多數NLP任務來說,構建大規模的標記數據集是一個巨大的挑戰,因為注釋成本非常昂貴,特別是對于語法和語義相關的任務。
相比之下,大規模的未標記語料庫相對容易構建。為了利用巨大的未標記文本數據,我們可以首先從它們那里學習良好的表示,然后將這些表示用于其他任務。最近的研究表明,借助從大型無注釋語料庫的PTMs中提取的表示,許多NLP任務的性能都有顯著提高。
預訓練的好處可以總結如下:
3. 預訓練語言模型分類
為了明確現有PTMs與NLP之間的關系,我們構建了PTMs的分類法,該分類法從不同的角度對現有PTMs進行了分類: (1) PTMs使用的單詞表示類型,(2) PTMs使用的主干網絡,(3) PTMs使用的預訓練任務類型,(4) 為特定類型的場景或輸入設計的PTMs。圖6顯示了分類以及一些相應的代表性PTMs。
此外,表1詳細區分了一些有代表性的PTMs。
4. 預訓練語言模型擴展
4.1 知識增強的PTMs
PTMs通常從通用的大型文本語料庫中學習通用語言表示,但缺乏領域特定的知識。將來自外部知識庫的領域知識整合到PTM中已被證明是有效的。外部知識范圍從語言學[87,78,123,178],語義[92],常識[48],事實[199,123,101,188,182],到具體領域的知識[54]。
4.2 多模態PTMS 由于PTMs在許多NLP任務上的成功,一些研究集中在獲得PTMs的跨模態版本上。這些模型中的絕大多數是為一般的視覺和語言特征編碼而設計的。這些模型是在一些巨大的跨模態數據語料庫上進行預訓練的,例如帶有口語單詞的視頻或帶有字幕的圖像,結合擴展的預訓練任務來充分利用多模態特征。VideoBERT[152]和CBT[151]是視頻和文本的聯合模型。為了獲得用于預訓練的視覺和語言標記序列,視頻分別由基于cnn的編碼器和現成的語音識別技術進行預處理。在處理后的數據上訓練一個變壓器編碼器,以學習下游任務(如視頻字幕)的視覺語言表示。此外,UniViLM[109]提出引入生成任務來進一步預訓練下游任務中使用的解碼器。
4.3 模型壓縮
應用基準、機器翻譯、問答、情感分析、摘要、命名實體識別
(1) PTMs的上界
目前,PTMs還沒有達到其上限。現有的PTMs大多可以通過更多的訓練步驟和更大的語料庫來進一步完善。
通過增加模型的深度可以進一步提高NLP的技術水平,如Megatron-LM144和Turing-NLG(170億個參數,78個隱藏尺寸為4256和28個注意頭的Transformer層)。
通用型PTM一直是我們學習語言固有的通用知識(甚至是世界知識)的追求,但此類PTM通常需要更深入的體系結構、更大的語料庫和更具挑戰性的訓練前任務,這又進一步導致了更高的訓練成本。然而,訓練大模型也是一個具有挑戰性的問題,需要更復雜、更高效的訓練技術,如分布式訓練、混合精度、梯度積累等。因此,更實際的方向是使用現有的硬件和軟件設計更有效的模型架構、自我監督的訓練前任務、優化器和訓練技能。ELECTRA[22]是這個方向的一個很好的解決方案。
(2) 面向任務的預訓練和模型壓縮
在實踐中,不同的下游任務需要不同的PTMs能力。PTMs與下游任務之間的差異通常表現在兩個方面:模型體系結構和數據分布。較大的差異可能導致PTMs的益處可能不明顯。盡管較大的PTM通常可以帶來更好的性能,但一個實際問題是如何在特殊場景(如低容量設備和低延遲應用程序)中利用這些巨大的PTM。因此,我們可以為下游任務精心設計特定的模型架構和預訓練任務,或者從現有的PTMs中提取部分特定于任務的知識。
此外,我們可以通過使用模型壓縮等技術,用通用的現有PTM來教他們,而不是從頭開始訓練面向任務的ptm(參見4.3節)。雖然在CV[17]中,針對CNNs的模型壓縮已經得到了廣泛的研究,但針對NLP的PTMs的模型壓縮才剛剛開始。Transformer 的全連接結構也使模型壓縮更具挑戰性。
(3) PTMs架構
Transformer已被證明是一種有效的預訓練體系結構。然而,Transformer 的主要限制是它的計算復雜度,它是輸入長度的平方。由于GPU內存的限制,目前大多數PTM不能處理512個標記以上的序列。打破這一限制需要改進Transformer的架構,比如Transformer- xl[27]。因此,為PTMs搜索更有效的模型體系結構對于捕獲更長期的上下文信息非常重要。
深度架構的設計具有挑戰性,我們可以從一些自動化方法中尋求幫助,如神經架構搜索(neural architecture search, NAS)[205]。
(4)超越微調的知識遷移
目前,將PTMs的知識傳遞給下游任務的主要方法是微調,但其缺點是參數效率低下:每個下游任務都有自己的微調參數。一種改進的解決方案是對原有PTMs的參數進行修正,并為特定的任務添加小的可調自適應模塊[149,61]。因此,我們可以使用一個共享的PTM來服務多個下游任務。事實上,從PTMs中挖掘知識可以更加靈活,如特征提取、知識提取[195]、數據擴充[185,84],利用PTMs作為外部知識[125]等。期望有更有效的方法。
(5) PTMs的可解釋性和可靠性
雖然PTM的性能令人印象深刻,但其深層的非線性架構使得決策過程高度不透明。
近年來,可解釋人工智能[4]已經成為人工智能領域的一個研究熱點。與用于圖像的CNN不同,由于Transformer的架構和語言的復雜性,解釋PTMs更加困難。人們做了大量的工作(見3.3節)來分析PTMs中包含的語言和世界知識,這有助于我們以某種程度的透明性理解這些PMTs。然而,許多模型分析工作依賴于注意力機制,注意力對可解釋性的有效性仍存在爭議[66,142]。
此外,隨著PTMs在生產系統中的廣泛應用,PTMs的可靠性也成為一個備受關注的問題。深層神經模型容易受到對抗性樣本的影響,這些例子可能會誤導模型,使其產生一個特定的錯誤預測,而這種預測會受到來自原始輸入的難以察覺的干擾。在CV中,對抗性攻擊和防御被廣泛研究。然而,由于語言的離散性,文本仍然面臨著挑戰。為文本生成對抗性樣本需要具備以下品質:(1)不易被人類法官察覺,但容易被神經模型誤導;(2)語法流利,語義與原輸入一致。Jin等人[71]用對抗性的例子成功地在文本分類和文本蘊涵方面攻擊了經過微調的BERT。Wallace等人[175]定義了通用的對抗觸發器,當將模型連接到任何輸入時,該觸發器可以誘導模型產生特定目的的預測。有些觸發器甚至會導致GPT-2模型生成帶有種族主義色彩的文本。對PTM進行對抗性攻擊的研究有助于我們了解它們的能力,從而充分暴露它們的弱點。Sun等人[155]的研究表明,BERT對拼寫錯誤并不敏感。此外,針對PTMs的對抗防御也很有前途,它提高了PTMs的魯棒性,使其對對抗攻擊免疫。
總的來說,作為許多NLP應用中的關鍵組件,PTMs的可解釋性和可靠性在很多方面還有待進一步的探索,這有助于我們理解PTMs是如何工作的,并為更好的使用和進一步的改進提供指導。
參考文獻:
Akbik et al. [2018] Alan Akbik, Duncan Blythe, and Roland Vollgraf. Contextual string embeddings for sequence labeling. In COLING, pages 1638–1649, 2018.
Alberti et al. [2019] Chris Alberti, Jeffrey Ling, Michael Collins, and David Reitter. Fusion of detected objects in text for visual question answering. In EMNLP-IJCNLP, pages 2131–2140, 2019.
Alsentzer et al. [2019] Emily Alsentzer, John R. Murphy, Willie Boag, Wei-Hung Weng, Di Jin, Tristan Naumann, and Matthew B. A. McDermott. Publicly available clinical BERT embeddings. arXiv preprint arXiv:1904.03323, 2019.
Arrieta et al. [2020] Alejandro Barredo Arrieta, Natalia Díaz-Rodríguez, Javier Del Ser, Adrien Bennetot, Siham Tabik, Alberto Barbado, Salvador García, Sergio Gil-López, Daniel Molina, Richard Benjamins, et al. Explainable artificial intelligence (xai): Concepts, taxonomies, opportunities and challenges toward responsible ai. Information Fusion, 58:82–115, 2020.
Baevski et al. [2019] Alexei Baevski, Sergey Edunov, Yinhan Liu, Luke Zettlemoyer, and Michael Auli.Cloze-driven pretraining of self-attention networks. In Kentaro Inui, Jing Jiang, Vincent Ng, and Xiaojun Wan, editors, EMNLP-IJCNLP, pages 5359–5368, 2019.