思維鏈如何釋放語言模型的隱藏能力?最新理論研究揭示其背后奧秘
思維鏈提示(CoT)是大模型涌現(xiàn)中最神秘的現(xiàn)象之一,尤其在解決數(shù)學(xué)推理和決策問題中取得了驚艷效果。CoT到底有多重要呢?它背后成功的機(jī)制是什么?本文中,北大的幾位研究者證明了CoT在實(shí)現(xiàn)大語言模型(LLM)推理中是不可或缺的,并從理論和實(shí)驗(yàn)角度揭示了CoT如何釋放LLM的巨大潛力。
最近的研究發(fā)現(xiàn),思維鏈提示(Chain of Thought prompting,簡(jiǎn)稱為 CoT)可以顯著提升大語言模型(LLM)的性能,尤其適用于處理涉及數(shù)學(xué)或推理的復(fù)雜任務(wù)。不過盡管取得了很大成功,但 CoT 背后的機(jī)制以及如何釋放 LLM 的潛力仍然難以捉摸。
近日,北京大學(xué)的一項(xiàng)新研究從理論視角揭示了 CoT 背后的奧秘。
論文鏈接:https://arxiv.org/abs/2305.15408
基于 Transformer 的大語言模型已經(jīng)成為自然語言處理中的通用模型,在各種任務(wù)上都獲得了廣泛的應(yīng)用。主流的大模型通?;谧曰貧w范式來實(shí)現(xiàn),具體而言,各種不同的任務(wù)(如文本翻譯、文本生成、問題回答等)都可以統(tǒng)一地視為序列生成問題,其中問題的輸入和問題描述被一起被編碼為一個(gè)單詞(token)序列,稱為提示(prompt);問題的答案便可以轉(zhuǎn)化為基于提示來?xiàng)l件生成后續(xù)單詞的任務(wù)。
在大模型領(lǐng)域中有大量的研究已經(jīng)表明,精心設(shè)計(jì)的提示詞對(duì)模型的表現(xiàn)起著至關(guān)重要的作用。特別是在涉及算術(shù)或推理相關(guān)的任務(wù)時(shí), CoT 已被表明能夠大大提高所生成答案的正確性。如下圖所示,對(duì)于一個(gè)需要數(shù)學(xué)推理的任務(wù),大模型直接生成的答案往往是錯(cuò)誤的(下圖 a,b)。但是如果通過修改提示使得大模型輸出整個(gè)思維鏈(中間推導(dǎo)步驟),最終便能夠得到正確答案(下圖 c,d)。
在實(shí)踐中,思維鏈提示有兩種主流的實(shí)現(xiàn)方式:一種是在提示中添加特定短語,如 “Let’s think step by step” 來觸發(fā)(如上圖 c);另一種是通過提供少量的思維鏈演示的例子來讓大模型模擬相應(yīng)的推導(dǎo)過程(如上圖 d)。
然而,盡管 CoT 在大量實(shí)驗(yàn)上都取得了顯著的表現(xiàn),但背后的理論機(jī)制卻仍然是個(gè)謎。一方面,大模型在直接回答數(shù)學(xué)、推理等問題方面是否確實(shí)存在固有理論缺陷?另一方面,為什么 CoT 可以提升大模型在這些任務(wù)上的能力?這篇論文從理論角度對(duì)上述問題進(jìn)行了回答。
具體而言,研究者從模型表達(dá)能力的角度來研究 CoT:對(duì)于數(shù)學(xué)任務(wù)和一般的決策任務(wù),本文研究了基于自回歸的 Transformer 模型在以下兩個(gè)方面的表達(dá)能力:(1)直接生成答案,以及(2)采用 CoT 的方式生成完整的解決步驟。
CoT 是解決數(shù)學(xué)問題的關(guān)鍵
以 GPT-4 為代表的大模型已經(jīng)展現(xiàn)出了令人震驚的數(shù)學(xué)能力。例如,它能夠正確求解大部分高中數(shù)學(xué)題,甚至已經(jīng)成為數(shù)學(xué)家們的研究助手。
為了研究大模型在數(shù)學(xué)方面的能力,本文選取了兩個(gè)非?;A(chǔ)但核心的數(shù)學(xué)任務(wù):算術(shù)和方程(下圖給出了這兩個(gè)任務(wù)的輸入輸出示例)。由于它們是解決復(fù)雜數(shù)學(xué)問題的基本組件,因此通過對(duì)這兩個(gè)核心數(shù)學(xué)問題的研究,我們可以對(duì)大模型在一般數(shù)學(xué)問題上的能力有一個(gè)更深刻的理解。
研究者首先探究了 Transformer 是否能夠輸出上述問題的答案而不輸出中間步驟。他們考慮了一種與實(shí)際非常吻合的假設(shè) ——log 精度 Transformer,即 Transformer 的每個(gè)神經(jīng)元只能表示有限精度的浮點(diǎn)數(shù)(精度為 log n 比特),其中 n 是句子的最大長(zhǎng)度。這一假設(shè)與實(shí)際非常接近,例如在 GPT-3 中,機(jī)器精度(16 位或 32 位)通常要遠(yuǎn)小于最大輸出句子長(zhǎng)度(2048)。
在這一假設(shè)下,研究者證明了一個(gè)核心不可能結(jié)果:對(duì)于常數(shù)層、寬度為 d 的自回歸 Transformer 模型,以直接輸出答案的方式求解上述兩個(gè)數(shù)學(xué)問題時(shí),需要使用極大的模型寬度 d。具體而言,d 需要以超越多項(xiàng)式的增長(zhǎng)速度隨輸入長(zhǎng)度 n 的增長(zhǎng)而變大。
造成這一結(jié)果的本質(zhì)原因在于,上述兩個(gè)問題不存在高效的并行算法,因此 Transformer 作為一種典型的并行模型無法對(duì)其進(jìn)行求解。文章使用理論計(jì)算機(jī)科學(xué)中的電路復(fù)雜性理論對(duì)上述定理進(jìn)行了嚴(yán)格證明。
那么,如果模型不直接輸出答案,而是按照上圖的形式輸出中間推導(dǎo)步驟呢?研究者進(jìn)一步通過構(gòu)造證明了,當(dāng)模型可以輸出中間步驟時(shí),一個(gè)固定大?。ú灰蕾囉谳斎腴L(zhǎng)度 n)的自回歸 Transformer 模型便可以解決上述兩個(gè)數(shù)學(xué)問題。
對(duì)比之前的結(jié)果可以看出,加入 CoT 極大地提升了大模型的表達(dá)能力。研究者進(jìn)一步對(duì)此給出了直觀的理解:這是因?yàn)?CoT 的引入會(huì)將生成的輸出單詞不斷回饋到輸入層,這大大增加了模型的有效深度,使其正比于 CoT 的輸出長(zhǎng)度,從而極大地提升了 Transformer 的并行復(fù)雜度。
CoT 是解決一般決策問題的關(guān)鍵
除了數(shù)學(xué)問題,研究者進(jìn)一步考慮了 CoT 在解決一般任務(wù)上的能力。他們從決策問題出發(fā),考慮了一種解決決策問題的通用框架,稱為動(dòng)態(tài)規(guī)劃。
動(dòng)態(tài)規(guī)劃(DP)的基本思想在于將復(fù)雜問題分解為一系列可以按順序解決的小規(guī)模子問題。其中對(duì)問題的分解確保了各個(gè)子問題之間存在顯著的相互關(guān)聯(lián)(重疊),從而使得每個(gè)子問題可以利用之前的子問題上的答案來高效解決。
最長(zhǎng)上升子序列(LIS)和求解編輯距離(ED)是《算法導(dǎo)論》一書中提出的兩個(gè)著名的 DP 問題,下表列出了這兩個(gè)問題的狀態(tài)空間、轉(zhuǎn)移函數(shù)的聚合函數(shù)。
研究者證明了,自回歸 Transformer 模型可以按照解決子問題的順序輸出一個(gè)完整的動(dòng)態(tài)規(guī)劃思維鏈,從而對(duì)于所有能夠用動(dòng)態(tài)規(guī)劃解決的任務(wù)都能輸出正確答案。同樣地,研究者進(jìn)一步證明了生成思維鏈?zhǔn)潜匾模簩?duì)于很多困難的動(dòng)態(tài)規(guī)劃問題,一個(gè)常數(shù)層、多項(xiàng)式大小的 Transformer 模型無法直接輸出正確答案。文章通過上下文無關(guān)文法成員測(cè)試這一問題給出了反例。
實(shí)驗(yàn)
研究者最后設(shè)計(jì)了大量實(shí)驗(yàn)對(duì)上述理論進(jìn)行了驗(yàn)證,考慮了四種不同的任務(wù):算術(shù)表達(dá)式求值、解線性方程組、求解最長(zhǎng)上升子序列以及求解編輯距離。
實(shí)驗(yàn)結(jié)果表明,當(dāng)使用 CoT 數(shù)據(jù)進(jìn)行訓(xùn)練時(shí),一個(gè) 3 層的自回歸 Transformer 模型已經(jīng)能夠在所有任務(wù)上均取得幾乎完美的表現(xiàn)。然而,直接輸出正確答案在所有任務(wù)上的表現(xiàn)都很差(即使使用更深的模型)。這一結(jié)果清楚地展示了自回歸 Transformer 在解決各種復(fù)雜任務(wù)上的能力,并表明了 CoT 在解決這些任務(wù)中的重要性。