博客專欄

EEPW首頁 > 博客 > 語言模型自己學會用搜索引擎了?Meta AI提出API調(diào)用自監(jiān)督學習方法Toolformer

語言模型自己學會用搜索引擎了?Meta AI提出API調(diào)用自監(jiān)督學習方法Toolformer

發(fā)布人:機器之心 時間:2023-02-21 來源:工程師 發(fā)布文章

單一的大型語言模型或許無法實現(xiàn) AGI,但如果它學會使用其他工具呢?


在自然語言處理任務(wù)中,大型語言模型在零樣本和少樣本學習方面取得了令人印象深刻的結(jié)果。然而,所有模型都存在固有的局限性,往往只能通過進一步擴展來部分解決。具體來講,模型的局限性包括無法訪問最新信息、會對事實產(chǎn)生「信息幻覺」、低資源語言理解困難、缺乏進行精確計算的數(shù)學技能等等。


解決這些問題的一種簡單方法就是給模型配備外部工具,如搜索引擎、計算器或日歷。然而,現(xiàn)有方法通常依賴于大量的人工注釋,或?qū)⒐ぞ叩氖褂孟拗圃谔囟ǖ娜蝿?wù)設(shè)置下,使得語言模型與外部工具的結(jié)合使用難以推廣。


為了打破這種瓶頸,近期 Meta AI 提出了一種稱為 Toolformer 的新方法,使得語言模型學會「使用」各種外部工具。


圖片

論文地址:https://arxiv.org/pdf/2302.04761v1.pdf


Toolformer 很快就引起了人們的高度關(guān)注,有人認為這篇論文解決了目前大型語言模型的許多問題,稱贊道:「這是最近幾周最重要的論文」。


有人指出 Toolformer 以自監(jiān)督學習的方式,僅用極少數(shù)樣本就讓大型語言模型學會使用一些 API 和工具,這是非常靈活且高效的:


圖片

甚至有人認為 Toolformer 將讓我們離通用人工智能(AGI)更近一步。


圖片

Toolformer 之所以能獲得如此高的評價,是因為它滿足了以下的實際需求:


  • 大型語言模型應(yīng)該在自監(jiān)督的方式下學習工具的使用,而不需要大量的人工注釋。這一點很關(guān)鍵, 人工注釋的成本很高只是一方面,更重要的是人類認為有用的東西可能與模型認為有用的東西不同。

  • 語言模型需要更全面地使用不受特定任務(wù)約束的工具。 


這明確打破了前文所述的瓶頸。我們來具體看一下 Toolformer 的方法和實驗結(jié)果。


方法


Toolformer 基于帶有 in-context learning(ICL)的大型語言模型從頭開始生成數(shù)據(jù)集(Schick and Schütze, 2021b; Honovich et al., 2022; Wang et al., 2022)的思路:只需給出少數(shù)幾個人類使用 API 的樣本,就可以讓 LM 用潛在的 API 調(diào)用標注一個巨大的語言建模數(shù)據(jù)集;然后使用自監(jiān)督損失函數(shù)來確定哪些 API 調(diào)用實際上有助于模型預測未來的 token;最后根據(jù)對 LM 本身有用的 API 調(diào)用進行微調(diào)。


由于 Toolformer 與所使用的數(shù)據(jù)集無關(guān),因此可以將其用于與模型預訓練完全相同的數(shù)據(jù)集,這確保了模型不會失去任何通用性和語言建模能力。


具體來說,該研究的目標是讓語言模型 M 具備一種能力 —— 通過 API 調(diào)用使用各種工具。這就要求每個 API 的輸入和輸出都可以表征為文本序列。這允許將 API 調(diào)用無縫插入到任何給定文本中,并使用特殊的 token 來標記每個此類調(diào)用的開始和結(jié)束。


該研究將每個 API 調(diào)用表示為一個元組圖片,其中 a_c 是 API 的名稱,i_c 是相應(yīng)的輸入。給定具有相應(yīng)結(jié)果 r 的 API 調(diào)用 c,該研究將不包括和包括其結(jié)果的 API 調(diào)用的線性化序列分別表示為:


圖片

其中,<API>,</API > 和「→」是特殊的 token。如下圖 1 所示,這種方法讓 LM 學會了控制各種工具,并為自己選擇在何時以及如何使用哪種工具。


圖片

給定數(shù)據(jù)集圖片,該研究首先將這個數(shù)據(jù)集轉(zhuǎn)換成一個增加了 API 調(diào)用的數(shù)據(jù)集 C*。這分三個步驟完成,如下圖 2 所示:首先,該研究利用 M 的 in-context learning 能力對大量潛在的 API 調(diào)用進行采樣,然后執(zhí)行這些 API 調(diào)用,再檢查獲得的響應(yīng)是否有助于預測未來的 token,以用作篩選標準。篩選之后,該研究合并對不同工具的 API 調(diào)用,最終生成數(shù)據(jù)集 C*,并在此數(shù)據(jù)集上微調(diào) M 本身。


圖片

實驗及結(jié)果


該研究對各種不同的下游任務(wù)進行了實驗,結(jié)果表明:基于 6.7B 參數(shù)預訓練 GPT-J 模型的 Toolformer(學習過使用各種 API 和工具)在各種任務(wù)上明顯優(yōu)于更大的 GPT-3 模型和其他幾個基線。


該研究在 LAMA 基準的 SQuAD、GoogleRE 和 T-REx 子集上對幾種模型進行了評估,實驗結(jié)果如下表 3 所示:


圖片

為了測試 Toolformer 的數(shù)學推理能力,該研究在 ASDiv、SVAMP 和 MAWPS 基準上進行了實驗。實驗表明,Toolformer 在大多情況下都使用了計算器工具,這明顯比 OPT (66B)和 GPT-3 (175B)略勝一籌。


圖片

在問答方面,該研究在 Web Questions、Natural Questions 和 TriviaQA 三個問答數(shù)據(jù)集上進行了實驗。Toolformer 明顯優(yōu)于大小相同的基線模型,但遜于 GPT-3 (175B)。


圖片

在跨語言任務(wù)方面,該研究將 Toolformer 和 MLQA 上所有的基線模型進行了比較,結(jié)果如下表 6 所示:

圖片

為了研究日歷 API 的效用,該研究在 TEMPLAMA 和一個名為 DATESET 的新數(shù)據(jù)集上對幾種模型進行了實驗。Toolformer 優(yōu)于所有基線,但沒有使用 TEMPLAMA 日歷工具。

圖片

除了驗證各種下游任務(wù)的性能改進之外,該研究還希望確保 Toolformer 的語言建模性能不會因為 API 調(diào)用的微調(diào)而降低。為此,該研究在兩個語言建模數(shù)據(jù)集上進行實驗來評估,模型的困惑度如下表 8 所示。
對于沒有任何 API 調(diào)用的語言建模來說,添加 API 調(diào)用無需花費任何成本。

圖片

最后,研究人員分析了隨著語言模型規(guī)模的擴大,向外部工具尋求幫助的能力對模型性能的影響,分析結(jié)果如下圖 4 所示

圖片

感興趣的讀者可以閱讀論文原文,了解更多研究細節(jié)。


*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。



關(guān)鍵詞: AI

相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉