表格數學推理準確率達98.78%!UCLA推出全新「變色龍推理框架」
在自然語言處理任務中取得顯著成就的大型語言模型(LLMs)盡管表現(xiàn)出色,但在實時信息獲取、外部工具利用和精確數學推理方面仍顯不足。
為了應對這些挑戰(zhàn),來自UCLA等機構的研究人員打造了全新的Chameleon框架,其獨特的即插即用模型融合了多種工具,包括LLMs、視覺模型、網絡搜索引擎、Python功能及基于規(guī)則的模塊。
項目鏈接:https://chameleon-llm.github.io/
論文鏈接:https://arxiv.org/abs/2304.09842
代碼鏈接:https://github.com/lupantech/chameleon-llm
解讀:https://www.youtube.com/watch?v=EWFixIk4vjs&ab_channel=WorldofAI
Chameleon的核心在于通過LLM規(guī)劃器生成自然語言程序,從而找到最佳工具組合,并依次執(zhí)行這些工具來得出結論。
在科學問答任務ScienceQA和表格數學推理任務TabMWP上,Chameleon展示了其卓越性能,其中在ScienceQA中,模型以86.54%的準確率超越了現(xiàn)有的少樣本模型,而在TabMWP中更是達到了驚人的98.78%準確率,遠超現(xiàn)有模型。
Chameleon之名源于變色龍的適應和融合能力,象征著大型語言模型在執(zhí)行外部工具組合推理任務時的多功能性和適應性。
自發(fā)布以來,Chameleon引起了廣泛關注,GitHub項目收藏近1000次,學術界引用近100次。在1682篇AI論文中脫穎而出,被AlphaSignal評為「周最佳論文」。
此外,一位著名學術博主在YouTube上深入解析了Chameleon,視頻播放量已超過1萬次。
源自變色龍的靈感
在實際應用中,我們經常會面臨各種類型和領域的不同工具,比如來自Hugging Face和GitHub的開源模型、像谷歌和必應這樣的網絡搜索服務、維基百科等知識庫、生成式人工智能模型、Python函數、語言翻譯和圖像生成等等。
一個引人注目的問題是,如何將這些多樣的工具與大型語言模型相結合,以解決復雜的任務。
答案就在于工具增強(Tool-Augmented)的大型語言模型或大型語言模型代理(LLM Agent)!
通過規(guī)劃和整合多個工具和資源到大型語言模型框架中,我們可以創(chuàng)建一個更加多功能和強大的系統(tǒng),以便處理各種領域的復雜任務。
因此,UCLA的研究人員提出了Chameleon-變色龍推理框架。Chameleon的靈感來自自然界中的變色龍,就像變色龍能夠通過改變皮膚顏色來適應周圍環(huán)境一樣,Chameleon模型可以根據不同的輸入問題,組合和使用各種不同的工具來完成相應的復雜推理。
例如,在解決多模態(tài)任務ScienceQA時,Chameleon模型會為不同的問題生成不同的程序,以靈活組合各種工具,并按照一定的順序執(zhí)行它們,從而最終得出答案。這種靈活性和適應性使Chameleon成為解決復雜任務的強大工具。
Chameleon模型與相關工作的比較
與相關工作相比,Chameleon模型在工具多樣性和調用靈活性方面具有顯著優(yōu)勢。首先,Chameleon支持LLM模型、視覺模型、網絡搜索引擎、Python函數以及基于規(guī)則的模塊,這些不同工具之間能夠通過自然語言進行通信。
與此不同,已有的工作如Toolformer僅支持少量工具,如問答、計算器、機器翻譯、WikiSearch和日歷查詢,而HuggingGPT僅適用于視覺處理相關的模型。
其次,Chameleon模型允許以類似自然語言的方式生成不同工具的調用組合,無需設計復雜格式的程序。而在已有的工作中,如ViperGPT,則需要生成精心設計、符合特定格式的Python代碼,這對編程水平有限的用戶來說并不友好。
基于LLM的工具規(guī)劃器
Chameleon模型與以往方法的不同之處在于其能夠合成各種工具的組合,以適應不同類型的推理問題。
該模型由兩個主要組成部分構成:工具箱(Module Inventory)和LLM規(guī)劃器(LLM Planner)。工具箱包含了多種工具,使Chameleon模型具備了多樣性和多維度的推理能力。
LLM規(guī)劃器基于大型語言模型實現(xiàn),可以根據不同的輸入問題生成自然語言形式的程序,從而實現(xiàn)對工具箱中的工具進行組合和調用。
LLM規(guī)劃器的實現(xiàn)非常簡潔高效,充分利用了大型語言模型的提示學習(Prompt Learning)和語境學習(In-Context Learning)能力。LLM規(guī)劃器的輸入提示描述了需要生成不同工具組合序列的情境,同時定義了工具箱中的所有工具。
LLM規(guī)劃器的提示還提供了一些語境示例,以指導大型語言模型如何根據輸入信息生成正確的程序。
基于這些描述和示例,大型語言模型,如ChatGPT和GPT-4,能夠學習如何針對新的輸入問題生成適當的程序,以組合和調用工具箱中的不同工具,從而完成涉及復雜推理的輸入問題。
Chameleon模型的一大優(yōu)勢在于為用戶提供了豐富的靈活性,只需提供語言描述,就能讓大型語言模型與外部工具協(xié)同工作,覆蓋多種類型和技能維度。此外,它具有即插即用的特性,允許用戶無縫更新底層大型語言模型、添加新工具,并適應新的任務。
Chameleon工具箱的多樣技能
為滿足多樣的推理需求,Chameleon的工具箱中包含了各種不同技能的工具,包括圖像理解、知識理解、數學推理、表格推理和問答。
基于LLM的工具實現(xiàn)
需要強調的是,Chameleon的工具箱中包括了基于LLM(大型語言模型)的工具。
以「知識檢索(Knowledge Retrieval)」工具為例。在幫助系統(tǒng)解決復雜問題時,檢索額外的知識至關重要。
這個工具模塊利用大型語言模型強大的生成能力來獲取特定領域的知識。這在處理專業(yè)領域問題,如科學和數學時尤為有用。
舉例來說,如果問題涉及理解稅表,這個模塊可以生成與稅務相關的背景知識,這對后續(xù)的推理步驟至關重要。
最近的研究表明,程序輔助方法可以提高大型語言模型在邏輯和數學推理方面的能力。
因此,工具箱中還包括了「程序生成(Program Generator)」工具,它利用大型語言模型的語境學習和代碼生成能力,結合輸入問題,生成可以有效解決給定問題的Python程序。
此外,還可以構建「解答生成(Solution Generator)」工具,它能指導大型語言模型充分利用輸入問題、上下文信息和歷史工具執(zhí)行的中間結果,生成多步且詳細的解答。
Chameleon模型的評測表現(xiàn)
Chameleon模型在兩個復雜的多模態(tài)推理任務上進行了實驗評估,分別是ScienceQA和TabMWP。
ScienceQA,即科學問答,是一個涵蓋廣泛科學主題的多模態(tài)問答基準測試。如下圖的例子所示,回答ScienceQA中的問題需要使用各種知識、工具和技能,例如圖像描述、文本檢測、知識檢索、在線資源搜索,以及視覺推理。這要求模型具備包括視覺和語言推理在內的組合能力。
Chameleon模型中的LLM規(guī)劃器能夠合成程序,以調用不同的工具組合來回答ScienceQA中不同類型的問題。
例如,在下圖所示的第一個例子中,Chameleon模型識別到輸入圖像包含廣告文本,因此調用了「文本檢測(Text Detector)」工具來理解圖像中的文字。
隨后模型調用「知識檢索(Knowledge Retrieval)」工具來檢索問題所涉及到的術語「persuasive appeal」的相關背景知識。最后,模型根據輸入問題和執(zhí)行之前工具得到的中間結果得出最終的答案。
第二個問題涉及到識別圖像中的動物并回答環(huán)境適應性的問題。
Chameleon模型調用了「圖像描述(Image Captioner)」工具來理解圖像中的動物,并通過調用「必應搜索(Bing Search)」來獲取相關的學科背景知識,最終的答案充分利用了這些信息。
詳細的評測結果也充分證明了Chameleon模型在ScienceQA任務上的有效性。
Chameleon模型在表格推理任務TabMWP中同樣展現(xiàn)了其出色的靈活性和有效性。TabMWP是一個基于表格上下文的數學推理任務,要求模型理解多種形式的表格并執(zhí)行精確的數值計算。
在下圖的第一個示例中,涉及對計數表格進行數學推理。Chameleon模型調用「知識檢索(Knowledge Retrieval)」工具來理解如何計算列表的中位數。然后,它依賴于程序輔助工具進行精確計算。
第二個示例需要在較大的表格上下文中定位到一個單元格。
為此,Chameleon模型調用工具箱中的「行查找(Row Lookup)」工具來準確定位表格中的相關行。接下來,Chameleon模型只需理解簡化的表格,然后生成最終的自然語言答案,而無需生成Python代碼來增強數學推理。
類似地,Chameleon模型在TabMWP任務中也展現(xiàn)了強大的推理能力。
下圖突顯了這兩個任務中的關鍵基準模型。在ScienceQA任務中,Chameleon模型與GPT-4合作,實現(xiàn)了86.5%的準確率,是當前最優(yōu)秀的few-shot模型。
同樣地,Chameleon在TabMWP數據集上實現(xiàn)了98.8%的準確率,領先最先進模型17.0%的性能。
消融實驗揭示Chameleon的關鍵模塊
研究人員進行了消融實驗,分析了當禁用生成程序中的關鍵模塊時,Chameleon模型的準確率下降情況。
實驗結果顯示,「知識檢索(Knowledge Retrieval)」模塊在兩項任務中都扮演了重要的角色。
對于ScienceQA任務,特定領域的工具,如「必應搜索(Bing Search)」和與視覺相關的工具,起到了關鍵作用,而在TabMWP任務中,常用的「程序生成(Program Generator)」模塊對最終性能的影響也非常顯著。
Chameleon模型的工具規(guī)劃能力
不同工具的使用比例
通過可視化Chameleon模型生成的程序中不同工具的使用比例,可以觀察到使用不同的語言模型時,LLM規(guī)劃器表現(xiàn)出不同的規(guī)劃行為。
通常情況下,ChatGPT對于使用或不使用某些工具有較強的偏好。例如,在回答ScienceQA問題時,ChatGPT傾向于調用「知識檢索(Knowledge Retrieval)」,占用比例為72%,而僅在3%的情況下調用「必應搜索(Bing Search)」。
在TabMWP任務中,ChatGPT更依賴「行查找(Row Lookup)」工具,較少調用「列查找(Column Lookup)」。
而GPT-4在工具選擇上表現(xiàn)得更加客觀和理性。例如,在回答ScienceQA的科學問題時,GPT-4更頻繁地調用「知識檢索」,并且相對ChatGPT更頻繁地調用「Bing搜索」(11% vs. 3%)。
工具調用的轉態(tài)轉移圖
通過可視化Chameleon模型生成的程序中不同工具的狀態(tài)轉移圖,可以觀察到LLM規(guī)劃器在工具調用中所展現(xiàn)的規(guī)律。
例如,在ScienceQA任務中,Chameleon模型通常會選擇使用「知識檢索(Knowledge Retrieval)」來獲取大型語言模型中的內部知識,或者調用「必應搜索(Bing Search)」來獲取互聯(lián)網上的在線信息。
在TabMWP任務中,我們觀察到兩種主要的工具調用模式:Chameleon模型要么直接通過自然語言推理來完成回答,要么利用程序生成相關的工具來增強邏輯和數學推理。
Chameleon模型的進一步發(fā)展
Chameleon模型通過其簡單高效的框架,實現(xiàn)了大型語言模型與多種外部工具的高效協(xié)同,從而顯著增強了在復雜任務上的推理能力。
在大型語言模型的工具增強領域,未來有許多潛在的發(fā)展方向:
(1)擴展工具箱:可以將工具箱擴展到更多工具,包括特定領域的工具,如Wolfram。這將進一步增加Chameleon模型在不同任務和領域中的適用性,使其成為更全面的多功能工具。
(2)改進規(guī)劃器:可以考慮提出更加準確的規(guī)劃器,例如能夠逐步規(guī)劃下一步驟的工具,并根據執(zhí)行結果的反饋進行規(guī)劃優(yōu)化。這將有助于提高Chameleon模型在復雜任務中的效率和準確性。
(3)輕量化替代:未來可以考慮將涉及到大型語言模型的部分替換為更輕量級的本地模型,以減小計算資源的消耗,提高模型的響應速度,并降低部署成本。這將使Chameleon模型更適用于實際應用場景。
總之,Chameleon模型的未來發(fā)展有望在工具增強領域取得更大的突破,為解決復雜問題提供更強大的支持,并拓展其應用范圍。