Chain-of-Thought Prompting Elicits Reasoning in Large Language Models
摘要
本文探索了思維鏈(chain of thought),即一系列中間推理過程,可以有效地增強大語言模型的復雜推理能力。
在三個大型語言模型上的實驗表明,思維鏈提示提高了一系列算術、常識和符號推理任務的性能。
引言
這項工作探討了如何通過一個簡單的方法來解鎖大型語言模型的推理能力,這個方法由兩個想法驅動:首先,算術推理技術可以從生成導致最終答案的自然語言基本原理中受益。其次,大型語言模型提供了令人興奮的前景,即通過提示在上下文中進行少量的學習。
困難:
- 對于基本原理增強訓練和微調方法,創建大量高質量的基本原理集是昂貴的,這比普通機器學習中使用的簡單輸入輸出對要復雜得多
- 對于傳統的幾次提示方法,它在需要推理能力的任務上表現不佳,并且通常不會隨著語言模型規模的增加而得到實質性的改善
在本文中,作者以一種避免其局限性的方式結合了這兩種理念的優勢。具體來說,我們探索了語言模型在給定由三元組組成的提示符的情況下為推理任務執行少量提示的能力:<輸入,思維鏈,輸出>。思維鏈是一系列導致最終輸出的中間自然語言推理步驟,我們將這種方法稱為思維鏈提示
思維鏈
賦予語言模型產生類似思維鏈的能力,即一系列連貫的中間推理步驟,并推導出問題的最終答案。思維鏈提示作為一種促進語言模型推理的方法有幾個吸引人的特性:
- 首先,思維鏈原則上允許模型將多步驟問題分解為中間步驟,這意味著可以將額外的計算分配給需要更多推理步驟的問題
- 其次,思想鏈為模型的行為提供了一個可解釋的窗口,提示它是如何得出特定答案的,并提供了調試推理路徑出錯的機會(盡管完全描述支持答案的模型計算仍然是一個開放的問題)
- 第三,思維鏈推理可以用于數學單詞問題、常識推理和符號操作等任務,并且可能(至少在原則上)適用于人類可以通過語言解決的任何任務
- 最后,思維鏈推理可以很容易地在足夠大的現成語言模型中引出,只需將思維鏈序列的示例包含到少數提示的示例中
計算推理
我們首先考慮圖1中形式的數學單詞問題,它衡量語言模型的算術推理能力。雖然對人類來說很簡單,但算術推理是語言模型經常難以完成的任務。引人注目的是,當與540B540B540B參數語言模型一起使用時,思維鏈提示在一些任務上的表現與特定于任務的微調模型相當,甚至在具有挑戰性的任務上達到了新的技術水平GSM8KGSM8KGSM8K基準
實驗步驟
在多個基準測試中探索各種語言模型的思維鏈提示
基準:我們考慮以下五個數學單詞問題基準:
- 數學單詞問題的GSM8KGSM8KGSM8K基準
- 具有不同結構的數學單詞問題的SVAMPSVAMPSVAMP數據集
- 各種數學單詞問題的ASDivASDivASDiv數據集
- 代數字題的AQuAAQuAAQuA數據集
- MAWPSMAWPSMAWPS基準
標準提示:對于基線,我們考慮標準的幾次提示,其中語言模型在輸出測試時間示例的預測之前給出輸入輸出對的上下文示例
思維鏈提示:我們建議的方法是在幾次提示中增加每個示例,并使用相關答案的思維鏈,如圖1(右)所示。由于大多數數據集只有一個評估分割,我們手動組成了一組8個帶有思維鏈的小樣本——圖1(右)顯示了一個思維鏈樣本
語言模型:五個語言模型:
- GPT-3
- LaMDA
- PaLM
- UL2 20B
- Codex
結果
消融實驗
觀察到使用思維鏈提示的好處后,自然會提出一個問題,即是否可以通過其他類型的提示來獲得同樣的性能改進。圖5顯示了一項消融研究,其中包含如下所述的三種思維鏈變化:
- 僅限方程:思維鏈提示可能有幫助的一個原因是,它產生了要評估的數學方程,因此我們測試了一個變量,其中模型在給出答案之前被提示只輸出一個數學方程
-
僅限變量計算:另一種直覺是,思維鏈允許模型在更難的問題上花費更多的計算(即中間令牌)。為了將變量計算的影響與思維鏈推理隔離開來,我們測試了一個配置,其中提示模型只輸出與解決問題所需的方程中的字符數相等的點(…)
-
回答后的思維鏈:思維鏈提示的另一個潛在好處是,這樣的提示可以讓模型更好地訪問在預訓練期間獲得的相關知識。因此,我們測試了另一種配置,其中思想鏈提示僅在答案之后給出,從而隔離模型是否實際上依賴于生成的思想鏈來給出最終答案
思維鏈的魯棒性
對樣本的敏感性是提示方法的關鍵考慮因素,例如,改變少量樣本的排列可能會導致GPT-3的準確性SST-2的范圍從接近偶然(54.3%)到接近最新技術(93.4%)
常識推理
雖然思維鏈特別適用于數學單詞問題,但思維鏈基于語言的性質實際上使其適用于廣泛的常識推理問題,這些問題涉及在一般背景知識的假設下對物理和人類互動進行推理。常識推理是與世界互動的關鍵,目前的自然語言理解系統仍然無法做到
基準:CSQA、StrategyQA、Date、Sports、SayCan
提示:遵循與前一節相同的實驗設置
結果: 圖7突出顯示了PaLM的這些結果(LaMDA、GPT-3和不同模型尺度的完整結果見表4)。
符號推理
我們最后的實驗評估考慮了符號推理,這對人類來說很簡單,但對語言模型來說可能具有挑戰性。我們表明,思維鏈提示不僅使語言模型能夠執行在標準提示設置中具有挑戰性的符號推理任務,而且還有助于長度泛化到比在少數示例中看到的更長的推理時間輸入
Task:
- Last letter concatenation。這個任務要求模型將名字中單詞的最后一個字母連接起來(例如:“Amy Brown”→\rightarrow→“yn”)
- Coin flip。這個任務要求模型回答在人們拋硬幣或不拋硬幣后,硬幣是否仍然是正面朝上的(例如,“硬幣是正面朝上的。Phoebe拋硬幣。Osvaldo不會拋硬幣。硬幣還是正面朝上嗎?”→\rightarrow→“不”)