一、TL;DR
- 探索了COT(chain-of-thought prompting)通過一系列的中間推理步驟來顯著的提升了LLM的復雜推理能力
- 在三個大型語言模型上的實驗表明,思維鏈提示能夠提升模型在一系列算術、常識和符號推理任務上的表現
- 解釋了一下為什么COT有效,見3.3節:老實說我覺得全是猜測
- 給出了一些局限性:比如模型參數超過1000億才work,cot并不是真正的模仿人類在推理等等;
二、方法介紹
本研究探討了一種簡單方法,基于兩個想法,如何解鎖大型語言模型的推理能力:
- 算術推理技術可以從生成自然語言推理依據中受益,這些依據最終導向答案
- 大型語言模型通過提示實現上下文中的少樣本學習
但上述兩種方法都存在局限性:
- 對于推理依據增強的訓練和微調方法來說,創建大量高質量的推理依據成本高昂
- 傳統few-shot提示方法,它在需要推理能力的任務上表現不佳
本文如何做?
- 探索了語言模型在推理任務中進行few-shot提示的能力,提示內容由三元組組成:[輸入,思維鏈,輸出]。思維鏈是一系列導向最終輸出的中間自然語言推理步驟,我們稱這種方法為chain-of-thought prompting
示例如下:
圖1展示了一個模型生成思維鏈來解決一個它原本會答錯的數學文字題的例子。在這種情況下,思維鏈類似于一個解決方案,以更好地捕捉它模仿逐步思考過程以得出答案的想法
本文做到的benchmark(COT效果最佳,比finetune后的模型還要好):
三、COT
3.1 具體怎么做舉例
在解決復雜的推理任務時,例如多步驟的數學文字題時的思考過程,通常會將問題分解為中間步驟,并在給出最終答案之前先解決每個步驟,并在給出最終答案之前先解決每個步驟:
- 簡在送給媽媽2朵花之后還剩下10朵……
- 然后在送給爸爸3朵之后,她將剩下7朵……
- 所以答案是7
3.2 COT的目標:
- 賦予語言模型生成類似思維鏈的能力——一系列連貫的中間推理步驟,最終導向問題的答案
- 如果在少樣本提示的示例中提供思維鏈推理的演示,足夠大的語言模型可以生成思維鏈。
3.3 COT的優越性:
-
首先,COT允許模型將多步驟問題分解為中間步驟,這意味著可以為需要更多推理步驟的問題分配額外的計算資源。
-
其次,思維鏈為模型的行為提供了一個可解釋的窗口,暗示了它可能是如何得出特定答案的,并為調試推理路徑出錯的地方提供了機會(盡管完全描述支持答案的模型計算仍然是一個開放性問題)。
-
第三,思維鏈推理可以用于解決數學文字題、常識推理和符號操作等任務,并且原則上可以應用于任何人類可以通過語言解決的任務。
-
最后,通過在少樣本提示的示例中加入思維鏈序列的示例,足夠大的現成語言模型可以輕松地引發思維鏈推理。
在實證實驗中,我們將觀察到思維鏈提示在算術推理、常識推理和符號推理中的漲點作用(本文的核心消融實驗)。
四、?算術推理
我們首先考慮圖1中形式的數學文字題,這些題目衡量了語言模型的算術推理能力。當使用5400億參數的語言模型時,思維鏈提示在多個任務上的表現與針對特定任務進行微調的模型相當,甚至在具有挑戰性的GSM8K基準測試上達到了新的最佳水平。
4.1 實驗設置
基準測試:五個數學文字題基準測試:
-
數學文字題的GSM8K基準測試。
-
具有不同的結構的數學文字題的SVAMP數據集。
-
多樣化的數學文字題的ASDiv數據集。
-
代數文字題的AQuA數據集。
-
MAWPS基準測試(Koncel-Kedziorski等人,2016年)。?
標準的prompt:作為基線,我們考慮了由Brown等人提出的few-shot prompt。在這種方法中,語言模型在輸出測試樣本的預測之前,會先給出上下文中的輸入 - 輸出對示例。示例以問題和答案的形式呈現。模型直接給出答案,如圖1(左側)所示。
COT prrompt:我們提出的方法是在few-shot prompt的每個示例中加入與答案相關的思維鏈,如圖1(右側)所示。由于大多數數據集只有評估部分,我們手動編寫了一組包含八個少樣本示例的思維鏈用于提示——圖1(右側)展示了一個思維鏈示例,完整的示例集在附錄表20中給出。
語言模型:評估了五種大型語言模型。
-
GPT-3,使用了text-ada-001-3.5億、text-babbage-001-13億、text-curie-001-67億和text-davinci-002-1750億
-
LaMDA,參數分別為4.22億、20億、80億、680億和1370億參數。
-
PaLM,參數分別為80億、620億和5400億參數。
-
UL2 200億參數。
-
Codex。
通過貪婪解碼從模型中采樣。對于LaMDA,我們在五個隨機種子上報告平均結果,每個種子的示例順序都不同。由于LaMDA實驗在不同種子之間沒有顯示出很大的差異,為了節省計算資源,我們對所有其他模型報告了一個示例順序的結果。
4.2 實驗結果
思維鏈提示的最強結果總結在圖4中,每種模型集合、模型大小和基準測試的所有實驗輸出都顯示在附錄的表2中。
有三個關鍵要點:
-
模型規模的新興能力:圖4顯示,思維鏈提示是模型規模的一種新興能力。對于小模型,思維鏈提示并沒有積極影響性能,只有在與約1000億參數的模型一起使用時才帶來性能提升。我們定性地發現,較小規模的模型生成的思維鏈雖然流暢,但缺乏邏輯性,導致其性能低于標準提示。
-
復雜問題的性能提升更大:例如,在GSM8K(基線性能最低的數據集)上,對于最大的GPT和PaLM模型,性能提升了一倍以上。另一方面,對于SingleOp(MAWPS中最簡單的子集,只需要一個步驟來解決),性能提升要么是負的,要么非常小(見附錄表3)。
-
-
與先前最佳水平的比較:通過GPT-3(1750億參數)和PaLM 5400億參數的思維鏈提示,與通常在標記訓練數據集上對特定任務進行微調的先前最佳水平相比,表現良好
4.3 消融實驗
思維鏈提示帶來的性能提升引發了這樣一個自然的問題:是否可以通過其他類型的提示獲得相同的性能提升。圖5展示了一個消融研究,其中包含以下三種思維鏈的變體。
僅方程:思維鏈提示可能有幫助的一個原因是它生成了需要求解的數學方程,因此我們測試了一個變體,即模型在給出答案之前僅被提示輸出一個數學方程。圖5顯示,對于GSM8K,僅方程提示并沒有太大幫助,這意味著GSM8K中的問題語義過于復雜,無法直接翻譯成方程,而無需思維鏈中的自然語言推理步驟。然而,對于只需要一步或兩步解決的問題的數據集,我們發現僅方程提示確實提高了性能,因為方程可以從問題中輕松推導出來(見附錄表6)。
僅變量計算:思維鏈允許模型在更復雜的問題上花費更多的計算。為了將變量計算的效果與思維鏈推理分開,我們測試了一個配置,即模型被提示輸出一個點序列(...),其字符數等于解決該問題所需的方程的字符數。這種變體的表現與基線大致相同,這表明僅變量計算本身并不是思維鏈提示成功的原因,而且通過自然語言表達中間步驟似乎確實有其價值。
答案后的思維鏈:思維鏈提示的另一個潛在好處可能僅僅是這種提示使模型能夠更好地調用預訓練期間獲得的相關知識。因此,我們測試了一種替代配置,即思維鏈提示僅在答案之后給出,以確定模型是否實際上依賴生成的思維鏈來給出最終答案。這種變體的表現與基線大致相同,這表明思維鏈中體現的順序推理之所以有用,不僅僅是因為它激活了知識。
第二,對于更復雜的問題,思維鏈提示的性能提升更大。例如,在GSM8K(基線性能最低的數據集)上,對于最大的GPT和PaLM模型,性能提升了一倍以上。另一方面,對于SingleOp(MAWPS中最簡單的子集,只需要一個步驟來解決),性能提升要么是負的,要么非常小(見附錄表3)。
第三,通過GPT-3(1750億參數)和PaLM 5400億參數的思維鏈提示,與通常在標記訓練數據集上對特定任務進行微調的先前最佳水平相比,表現良好。圖4展示了PaLM 5400億參數如何通過思維鏈提示在GSM8K、SVAMP和MAWPS上達到新的最佳水平(盡管需要注意的是,標準提示已經超過了SVAMP的先前最佳水平)。在其他兩個數據集AQuA和ASDiv上,帶有思維鏈提示的PaLM達到了與最佳水平相差2%以內的水平(附錄表2)。
五、常識推理
在一些亂七八糟的各個領域數據集上COT也是work的:
流行的CSQA關于世界的常識性問題。StrategyQA要求模型推斷出一個多跳策略來回答問題。BIG-bench項目(BIG-bench合作,2021年)中選擇了兩個專門的評估集:日期理解(從給定上下文中推斷日期)和體育理解(判斷與體育相關的句子是否合理或不合理)。最后,SayCan數據集自然語言指令映射到離散集合中的機器人動作序列
五、符號推理
符號推理,這種任務對人類來說很簡單,但對語言模型來說可能具有挑戰性。COT不僅使語言模型能夠在標準提示設置中執行具有挑戰性的符號推理任務,還促進了對推理時輸入長度的泛化能力,使其能夠處理比少樣本示例中更長的輸入。
五、討論
探索了COT prompt作為一種簡單機制,用于激發大型語言模型中的多步驟推理行為。
- 首先發現,思維鏈提示在算術推理方面大幅提升了性能,其改進幅度遠強于消融研究,
- 常識推理的實驗強調了思維鏈推理的語言特性使其具有廣泛的適用性。
- 最后,我們展示了對于符號推理,思維鏈提示能夠促進對領域外(OOD)更長序列長度的泛化能力
局限性:
- 盡管思維鏈模仿了人類推理者的思維過程,但這并不回答神經網絡是否真正“在推理”
- 盡管在少樣本設置中,手動為示例添加思維鏈的成本極小,但這種標注成本在微調中可能會變得難以承受
- 無法保證推理路徑的正確性,這可能導致正確和錯誤的答案
- 思維鏈推理僅在大型模型中出現,這使得其在現實世界應用中的部署成本較高;進一步的研究可以探索如何在較小的模型中誘導推理能力。