你真的了解CoT?普林斯頓大學解密影響CoT效率的因素,引用5875次的CoT講了啥
2022年,Google研究團隊發(fā)表了名為《思路鏈提示引發(fā)大型語言模型的推理》的開創(chuàng)性論文,引入了思維鏈(Chain of Thought, CoT)prompting技術。短短兩年內,該論文已被引用5875次,彰顯了CoT在AI領域的重要地位。CoT prompting不僅顯著提升了大語言模型(LLMs)在復雜推理任務上的表現,還為我們理解和改進AI系統(tǒng)的推理能力開辟了新的研究方向。
然而,盡管CoT prompting的效果令人矚目,其背后的工作原理卻一直存在爭議。一些研究者認為CoT展現了語言模型的真正推理能力,而另一些人則懷疑這只是一種巧妙的記憶技巧。最近,來自北京大學和普林斯頓大學的研究團隊分別從理論和實驗角度對CoT進行了深入分析,為我們揭開了CoT的神秘面紗。本文將詳細介紹CoT的核心原理、理論基礎,以及影響其效率的關鍵因素,幫助正在開發(fā)AI產品的工程師和正在使用網頁界面與LLM交互的朋友們更好地理解和應用這一強大技術。
一、CoT的誕生與基本原理
1.1 CoT的靈感來源
CoT prompting的靈感來源于人類解決復雜問題的思維過程。當我們面對一個多步驟的數學題時,通常會將問題分解為若干個中間步驟,逐步推導出最終答案。例如:
"珍妮最初有10朵花。她給媽媽2朵后還剩8朵...然后她又給爸爸3朵,所以現在還剩5朵...因此最終答案是5朵。"
Google的研究團隊意識到,如果能讓語言模型生成類似的中間推理步驟,可能會顯著提升其解決復雜問題的能力。
Google團隊認為:
1. 首先,思想鏈原則上允許模型將多步驟問題分解為中間步驟,這意味著額外的計算可以分配給需要更多推理步驟的問題。
2. 其次,思想鏈提供了模型行為的可解釋窗口,表明模型如何得出特定答案,并提供調試推理路徑出錯位置的機會(盡管仍然需要充分表征支持答案的模型計算)。
3. 第三,思想鏈推理可用于數學應用題、常識推理和符號操作等任務,并且可能適用于(至少原則上)人類可以通過語言解決的任何任務。
4. 最后,只需將思維鏈序列的示例包含到少樣本提示的示例中,就可以在足夠大的現成語言模型中輕松引發(fā)思維鏈推理。
1.2 CoT的工作原理
CoT prompting的核心思想是在few-shot示例中加入中間推理步驟。具體來說,prompt中的每個示例都包含三個部分:
1. 輸入:問題描述
2. 思維鏈:解決問題的中間推理步驟
3. 輸出:最終答案
通過這種方式,模型不僅學習了輸入和輸出之間的映射關系,還學會了如何進行步驟分解和中間推理。在推理時,模型會先生成一系列中間步驟,然后基于這些步驟得出最終答案。
1.3 CoT的突破性成果
Google團隊的實驗結果令人振奮。在GSM8K數學詞問題基準測試中,僅使用8個CoT示例的PaLM 540B模型就達到了57%的準確率,超越了之前經過微調的GPT-3(55%)。這一結果不僅證明了CoT的有效性,還展示了大型語言模型的驚人潛力。
圖片
二、北京大學:CoT的理論基礎
盡管CoT在實踐中取得了顯著成功,但其理論基礎一直不夠清晰。北京大學的研究團隊在論文《揭示思想鏈背后的奧秘》中,從電路復雜理論角度對CoT進行了深入分析,為我們理解CoT提供了全新的視角。
2.1 CoT的表達能力提升
研究團隊首先證明了CoT顯著提高了Transformer模型的表達能力。他們發(fā)現,對于某些基本的數學任務(如算術表達式求值和線性方程求解),如果不使用CoT,要解決這些問題,模型的參數量需要隨著輸入長度呈超多項式增長。而使用CoT后,即使是固定大小的自回歸Transformer也能解決這些問題。
定理3.1和定理3.2都無法解決提出的問題,他們提出了以下定理:
定理3.3: 對于任意素數p和整數n>0,存在一個自回歸Transformer(如第2節(jié)所定義),其隱藏大小d=O(poly(p))(與n無關),深度L=5,每層有5個注意力頭,可以為Arithmetic(n,p)中的所有輸入生成CoT解決方案。此外,Transformer中所有參數值都被限制在O(poly(n))范圍內。
定理3.4: 對于任意素數p和整數m>0,存在一個自回歸Transformer(如第2節(jié)所定義),其隱藏大小d=O(poly(p))(與m無關),深度L=4,每層有5個注意力頭,可以為Equation(m,p)中的所有輸入生成CoT解決方案。此外,Transformer中所有參數值都被限制在O(poly(m))范圍內。
這些理論結果表明,CoT不僅僅是一種簡單的提示技巧,它實際上從根本上擴展了模型的計算能力。通過生成中間步驟,模型能夠將復雜問題分解為一系列簡單操作,從而突破了原有的計算瓶頸。實驗表明,雖然Transformer總是無法直接預測答案,但在充分的CoT演示的情況下,它們可以始終如一地學習逐步生成正確的解決方案。
2.2 CoT與動態(tài)規(guī)劃的聯(lián)系
更令人驚訝的是,研究者們證明CoT使得語言模型能夠模擬動態(tài)規(guī)劃(Dynamic Programming, DP)算法。DP是一種強大的問題求解框架,廣泛應用于序列決策問題。研究團隊提出了以下定理:
定理4.7: 考慮任何滿足假設4.2至4.5的DP問題。對于任何整數n∈N,存在一個自回歸Transformer,其深度L、隱藏維度d和注意力頭數H都是常數(與n無關),使得Transformer生成的答案對于所有長度不超過n的輸入序列都是正確的。此外,所有參數值都被限制在O(poly(n))范圍內。
這一定理表明,CoT使得模型能夠將復雜問題分解為子問題,并利用之前子問題的解來解決當前問題,這與DP的核心思想高度一致。這不僅解釋了CoT為何能顯著提升模型的推理能力,還為設計更高效的prompting策略提供了理論依據。
2.3 CoT的局限性
盡管CoT表現出色,研究者們也指出了它的一些局限性。例如,他們證明了在某些需要精確符號推理的任務中,如上下文無關文法成員資格測試問題,即使使用CoT,有限深度的Transformer模型也無法完全解決。這提醒我們,盡管CoT大大增強了語言模型的推理能力,但它并不等同于真正的符號推理。
三、影響CoT效率的關鍵因素
在北京大學團隊建立CoT理論基礎的基礎上,普林斯頓大學的研究團隊通過一系列精心設計的實驗,進一步揭示了影響CoT效率的三個關鍵因素:概率、記憶和噪聲推理。他們的研究不僅驗證了理論分析的結果,還為我們提供了更深入的洞察。
3.1 實驗設計:解密移位密碼
研究團隊選擇了一個相對簡單但又富有洞察力的任務:解密移位密碼。在這個任務中,每個字母都被向前移動固定數量的位置(稱為shift_level)。例如,使用ROT-3加密時,"CAT"會變成"FDW"。
圖片
這個任務之所以被選中,是因為它允許研究者獨立操控多個可能影響CoT性能的因素:
1. 任務難度:可以通過改變shift_level來調整
2. 頻率:不同的shift_level在互聯(lián)網文本中出現的頻率不同
3. 答案概率:可以通過選擇不同概率的單詞作為答案來調整
3.2 概率因素的影響
實驗發(fā)現,CoT的效果與正確輸出的概率密切相關。當正確答案是高概率單詞時,CoT的性能顯著提升。這一發(fā)現揭示了語言模型在進行CoT推理時,仍然受到其預訓練階段學到的概率分布的強烈影響。
研究者們觀察到:
1. 當中間推理步驟指向一個低概率的最終輸出時,模型可能會"自我糾正",生成一個概率更高的答案。
2. 在高概率設置中,即使中間推理步驟有錯誤,模型也更容易得出正確的最終答案。
3. 相反,在低概率設置中,即使中間推理步驟正確,模型也更容易產生錯誤的最終答案。
這些觀察結果表明,CoT并不是純粹的符號推理,而是一種受概率影響的推理過程。這與北京大學團隊提出的理論模型相一致,說明了CoT雖然增強了模型的推理能力,但這種能力仍然部分依賴于統(tǒng)計學習。
3.3 記憶因素的影響
研究還發(fā)現,模型在預訓練階段接觸過的任務頻率對CoT的效果有顯著影響。例如,ROT-13(shift_level=13)在互聯(lián)網論壇中被廣泛用于隱藏文本,因此模型在這個特定的shift_level上表現出色。
具體表現為:
1. 在ROT-13任務上,即使中間推理步驟有錯誤,模型也能更頻繁地得出正確的最終答案。
2. 相比其他shift_level,ROT-13任務中從錯誤的中間步驟到正確最終答案的"糾錯"能力更強。
這些發(fā)現表明,CoT性能部分依賴于模型對特定任務的"記憶",而不僅僅是通用的推理能力。這一結果與北京大學團隊的理論分析相呼應,說明CoT雖然提高了模型的表達能力,但這種能力的發(fā)揮仍然受到預訓練數據分布的影響。
3.4 噪聲推理的影響
實驗還揭示了CoT推理過程中存在"噪聲"。隨著shift_level的增加(從1到12),模型的準確率呈下降趨勢,這與理想的符號推理不符。研究者們將這種現象解釋為"噪聲推理":每個推理步驟都有一定概率出錯,步驟越多,累積誤差就越大。
有趣的是,當shift_level超過13時,準確率又開始回升。這被解釋為模型采用了"雙向"策略:它可以選擇向前或向后移動字母,以最小化所需的步驟數。
這些發(fā)現與北京大學團隊的理論分析相一致。盡管CoT顯著提高了模型的表達能力,但這種能力的發(fā)揮仍然受到噪聲的影響。這解釋了為什么在某些復雜任務上,即使使用CoT,模型的性能也無法達到完美。
四、一個統(tǒng)一的理論框架
結合北京大學的理論分析和普林斯頓大學的實證研究,我們可以提出一個統(tǒng)一的理論框架來解釋CoT的工作原理:概率影響下的記憶輔助噪聲推理。
4.1 表達能力的提升
CoT通過允許模型生成中間推理步驟,顯著提高了Transformer的表達能力。這使得固定大小的模型能夠解決原本需要超多項式參數量才能解決的問題。這一能力提升的機制可以理解為:
1. 問題分解:CoT使模型能夠將復雜問題分解為一系列簡單子問題。
2. 遞歸計算:通過反復生成和條件化中間步驟,模型實現了一種類似遞歸的計算過程。
3. 動態(tài)規(guī)劃模擬:CoT使模型能夠模擬動態(tài)規(guī)劃算法,有效處理具有重疊子問題的復雜任務。
4.2 概率推理
盡管CoT提高了模型的表達能力,但推理過程仍然受到概率分布的強烈影響。這表現在:
1. 答案偏好:模型傾向于生成高概率的答案,即使中間推理步驟可能指向低概率答案。
2. 錯誤糾正:在高概率設置中,模型更容易糾正中間步驟的錯誤。
3. 推理不穩(wěn)定性:在低概率設置中,即使中間推理正確,最終答案也可能出錯。
這種概率影響反映了語言模型的統(tǒng)計學習本質,說明CoT并非純粹的符號推理。
4.3 記憶輔助
模型在預訓練階段接觸過的任務模式會被"記憶"下來,并在后續(xù)的CoT推理中發(fā)揮作用。這表現為:
1. 頻繁任務優(yōu)勢:對于常見的任務模式(如ROT-13),模型表現感謝您的提醒。我將繼續(xù)完成上述內容,并提出一個基于統(tǒng)一理論框架的改進型CoTPrompt框架。
2. 任務特異性:模型對特定任務類型可能形成"快捷方式",快速給出詳細的推理步驟。
3. 知識遷移:模型可能將預訓練中學到的解題模式應用到新任務中,即使這些模式并不總是適用。這種記憶效應解釋了為什么CoT在某些任務上表現出色,而在其他任務上效果有限。它也說明了為什么增加預訓練數據量可能會提升CoT的效果。
4.4 噪聲推理:CoT推理過程并非完美無誤,而是存在一定的"噪聲"。這種噪聲表現為:
1. 累積誤差:推理步驟越多,出錯概率越高。
2. 策略混淆:如在移位密碼任務中觀察到的"雙向"策略混淆。
3. 不一致性:相同輸入可能產生不同的推理路徑和結果。
這種噪聲特性解釋了為什么CoT在某些復雜任務上無法達到完美性能,也說明了為什么降低推理溫度可能會提高CoT的準確性。(很多朋友喜歡把溫度設置很高,這可以增加內容輸出的豐富程度,但同時一起增加的還有幻覺)
4.5 自適應策略
盡管存在上述限制,模型仍表現出一定的自適應能力:
1. 任務識別:模型能夠根據輸入特征選擇合適的推理策略。
2. 步驟調整:根據任務復雜度動態(tài)調整推理步驟的數量和復雜度。
3. 錯誤恢復:在某些情況下,模型能夠從錯誤的中間步驟中恢復,得出正確結果。
這種自適應能力是CoT強大性能的關鍵,也為進一步改進CoT提供了方向。
五、改進型CoT Prompt框架
基于上述統(tǒng)一的理論框架,我們可以提出一個改進型的CoTPrompt框架,能減輕概率、記憶和噪聲三個因素的負面影響,從而提升推理效率。
5.1 框架概述
改進型CoTPrompt框架包括以下關鍵組成部分:
1. 任務描述增強
2. 多樣化示例池
3. 動態(tài)推理路徑
4. 自校驗機制
---
5.2 任務描述增強
目標:減少對預訓練記憶的依賴,促進真正的推理。
這個綜合框架旨在通過減少對預訓練記憶的依賴、增強真實推理能力、降低噪聲影響和提高自我監(jiān)控能力來提升CoT的效率。它鼓勵模型進行更深入、更可靠的推理,同時也為研究人員提供了更多關于模型推理過程的洞察。
我用這個框架運行了金融、醫(yī)療和創(chuàng)意寫作案例
圖片
圖片
圖片
一個簡單的提示,用改進了影響因素的CoT Prompt框架在GPT 4o和Claude運行的結果,如上圖所示。
通過綜合北京大學的理論突破和普林斯頓大學的實證研究,我們對CoT的工作原理有了更深入的理解。CoT不僅是一個簡單的提示技巧,而是一種能夠顯著提升語言模型表達能力和推理能力的方法。然而,這種能力的提升仍然受到概率、記憶和噪聲等因素的影響?;谶@些影響我提出了這個改進型的CoTPrompt框架。這個框架通過任務描述增強、多樣化示例池、動態(tài)推理路徑、自校驗機制等方法,減輕了各種限制因素的影響,進一步提升CoT的推理效率。對于AI研究者和工程師來說,深入理解CoT的工作原理及其局限性至關重要。如果您也需要這個框架可以到群里來向我索要。
圖片
本文轉載自微信公眾號「AI修貓Prompt」,可以通過以下二維碼關注。轉載本文請聯(lián)系公眾號。