【導(dǎo)讀】由普林斯頓和谷歌DeepMind聯(lián)合提出的全新「思維樹」框架,讓GPT-4可以自己提案、評估和決策,推理能力最高可提升1750%。
2022年,前谷歌大腦華人科學(xué)家Jason Wei在一篇思維鏈的開山之作中首次提出,CoT可以增強LLM的推理能力。
但即便有了思維鏈,LLM有時也會在非常簡單的問題上犯錯。
最近,來自普林斯頓大學(xué)和Google DeepMind研究人員提出了一種全新的語言模型推理框架——「思維樹」(ToT)。
ToT將當(dāng)前流行的「思維鏈」方法泛化到引導(dǎo)語言模型,并通過探索文本(思維)的連貫單元來解決問題的中間步驟。
論文地址:https://arxiv.org/abs/2305.10601
項目地址:https://github.com/kyegomez/tree-of-thoughts
簡單來說,「思維樹」可以讓LLM:
· 自己給出多條不同的推理路徑
· 分別進行評估后,決定下一步的行動方案
· 在必要時向前或向后追溯,以便實現(xiàn)進行全局的決策
論文實驗結(jié)果顯示,ToT顯著提高了LLM在三個新任務(wù)(24點游戲,創(chuàng)意寫作,迷你填字游戲)中的問題解決能力。
比如,在24點游戲中,GPT-4只解決了4%的任務(wù),但ToT方法的成功率達到了74%。
讓LLM「反復(fù)思考」
用于生成文本的大語言模型GPT、PaLM,現(xiàn)已經(jīng)證明能夠執(zhí)行各種廣泛的任務(wù)。
所有這些模型取得進步的基礎(chǔ)仍是最初用于生成文本的「自回歸機制」,以從左到右的方式一個接一個地進行token級的決策。
那么,這樣一個簡單的機制能否足以建立一個通向「解決通用問題的語言模型」?如果不是,哪些問題會挑戰(zhàn)當(dāng)前的范式,真正的替代機制應(yīng)該是什么?
恰恰關(guān)于「人類認(rèn)知」的文獻為這個問題提供了一些線索。
「雙重過程」模型的研究表明,人類有兩種決策模式:快速、自動、無意識模式——「系統(tǒng)1」和緩慢、深思熟慮、有意識模式——「系統(tǒng)2」。
語言模型簡單關(guān)聯(lián)token級選擇可以讓人聯(lián)想到「系統(tǒng)1」,因此這種能力可能會從「系統(tǒng)2」規(guī)劃過程中增強。
「系統(tǒng)1」可以讓LLM保持和探索當(dāng)前選擇的多種替代方案,而不僅僅是選擇一個,而「系統(tǒng)2」評估其當(dāng)前狀態(tài),并積極地預(yù)見、回溯以做出更全局的決策。
為了設(shè)計這樣一個規(guī)劃過程,研究者便追溯到人工智能和認(rèn)知科學(xué)的起源,從科學(xué)家Newell、Shaw和Simon在20世紀(jì)50年代開始探索的規(guī)劃過程中汲取靈感。
Newell及其同事將問題解決描述為「通過組合問題空間進行搜索」,表示為一棵樹。
一個真正的問題解決過程包括重復(fù)使用現(xiàn)有信息來探索,反過來,這將發(fā)現(xiàn)更多的信息,直到最終找到解決方法。
這個觀點突出了現(xiàn)有使用LLM解決通用問題方法的2個主要缺點:
1. 局部來看,LLM沒有探索思維過程中的不同延續(xù)——樹的分支。
2. 總的來看,LLM不包含任何類型的計劃、前瞻或回溯,來幫助評估這些不同的選擇。
為了解決這些問題,研究者提出了用語言模型解決通用問題的思維樹框架(ToT),讓LLM可以探索多種思維推理路徑。
ToT四步法
當(dāng)前,現(xiàn)有的方法,如IO、CoT、CoT-SC,通過采樣連續(xù)的語言序列進行問題解決。
而ToT主動維護了一個「思維樹」。每個矩形框代表一個思維,并且每個思維都是一個連貫的語言序列,作為解決問題的中間步驟。
ToT將任何問題定義為在樹上進行搜索,其中每個節(jié)點都是一個狀態(tài)
,表示到目前為止輸入和思維序列的部分解。
ToT執(zhí)行一個具體任務(wù)時需要回答4個問題: 如何將中間過程分解為思維步驟;如何從每個狀態(tài)生成潛在的想法;如何啟發(fā)性地評估狀態(tài);使用什么搜索算法。1. 思維分解CoT在沒有明確分解的情況下連貫抽樣思維,而ToT利用問題的屬性來設(shè)計和分解中間的思維步驟。 根據(jù)不同的問題,一個想法可以是幾個單詞(填字游戲) ,一條方程式(24點) ,或者一整段寫作計劃(創(chuàng)意寫作)。 一般來說,一個想法應(yīng)該足夠「小」,以便LLM能夠產(chǎn)生有意義、多樣化的樣本。比如,生成一本完整的書通常太「大」而無法連貫 。 但一個想法也應(yīng)該「大」,足以讓LLM能夠評估其解決問題的前景。例如,生成一個token通常太「小」而無法評估。2.思維生成器
給定樹狀態(tài)
,通過2種策略來為下一個思維步驟生成k個候選者。
(a)從一個CoT提示采樣思維:
在思維空間豐富(比如每個想法都是一個段落),并且導(dǎo)致多樣性時,效果更好。
(b)使用「proposal prompt」按順序提出想法:
。這在思維空間受限制(比如每個思維只是一個詞或一行)時效果更好,因此在同一上下文中提出不同的想法可以避免重復(fù)。
3.狀態(tài)求值器
給定不同狀態(tài)的前沿,狀態(tài)評估器評估它們解決問題的進展,作為搜索算法的啟發(fā)式算法,以確定哪些狀態(tài)需要繼續(xù)探索,以及以何種順序探索。 雖然啟發(fā)式算法是解決搜索問題的標(biāo)準(zhǔn)方法,但它們通常是編程的(DeepBlue)或?qū)W習(xí)的(AlphaGo)。這里,研究者提出了第三種選擇,通過LLM有意識地推理狀態(tài)。 在適用的情況下,這種深思熟慮的啟發(fā)式方法可以比程序規(guī)則更靈活,比學(xué)習(xí)模型更有效率。與思維生成器,研究人員也考慮2種策略來獨立或一起評估狀態(tài):對每個狀態(tài)獨立賦值;跨狀態(tài)投票。4.搜索算法最后,在ToT框架中,人們可以根據(jù)樹的結(jié)構(gòu),即插即用不同的搜索算法。 研究人員在此探索了2個相對簡單的搜索算法: 算法1——廣度優(yōu)先搜索(BFS),每一步維護一組b最有希望的狀態(tài)。 算法2——深度優(yōu)先搜索(DFS),首先探索最有希望的狀態(tài),直到達到最終的輸出,或者狀態(tài)評估器認(rèn)為不可能從當(dāng)前的為閾值解決問題。在這兩種情況下,DFS都會回溯到s的父狀態(tài)以繼續(xù)探索。
由上,LLM通過自我評估和有意識的決策,來實現(xiàn)啟發(fā)式搜索的方法是新穎的。
實驗
為此,團隊提出了三個任務(wù)用于測試——即使是最先進的語言模型GPT-4,在標(biāo)準(zhǔn)的IO提示或思維鏈(CoT)提示下,都是非常富有挑戰(zhàn)的。
24點(Game of 24)
24點是一個數(shù)學(xué)推理游戲,目標(biāo)是使用4個數(shù)字和基本算術(shù)運算(+-*/)來得到24。
例如,給定輸入「4 9 10 13」,答案的輸出可能是「(10-4)*(13-9)=24」。
ToT設(shè)置
團隊將模型的思維過程分解為3個步驟,每個步驟都是一個中間方程。
如圖2(a)所示,在每個節(jié)點上,提取「左邊」的數(shù)字并提示LLM生成可能的下一步。(每一步給出的「提議提示」都相同)
其中,團隊在ToT中進行寬度優(yōu)先搜索(BFS),并在每一步都保留最好的b=5個候選項。
如圖2(b)所示,提示LLM評估每個思維候選項是「肯定/可能/不可能」達到24?;凇高^大/過小」的常識消除不可能的部分解決方案,保留剩下的「可能」項。
結(jié)果
如表2所示,IO,CoT和CoT-SC提示方法在任務(wù)上的表現(xiàn)不佳,成功率僅為7.3%,4.0%和9.0%。相比之下,ToT在廣度為b=1時已經(jīng)達到了45%的成功率,而在b=5時達到了74%。
團隊還考慮了IO/CoT的預(yù)測設(shè)置,通過使用最佳的k個樣本(1≤k≤100)來計算成功率,并在圖3(a)中繪出5個成功率。
不出所料,CoT比IO擴展得更好,最佳的100個CoT樣本達到了49%的成功率,但仍然比在ToT中探索更多節(jié)點(b>1)要差。
錯誤分析
圖3(b)分析了CoT和ToT樣本在哪一步失敗了任務(wù),即思維(在CoT中)或所有b個思維(在ToT中)都是無效的或無法達到24。
值得注意的是,大約60%的CoT樣本在第一步就已經(jīng)失敗了,或者說,是前三個詞(例如「4+9」)。
創(chuàng)意寫作
接下來,團隊設(shè)計了一個創(chuàng)意寫作任務(wù)。
其中,輸入是四個隨機句子,輸出應(yīng)該是一個連貫的段落,每段都以四個輸入句子分別結(jié)束。這樣的任務(wù)開放且富有探索性,挑戰(zhàn)創(chuàng)造性思維以及高級規(guī)劃。
值得注意的是,團隊還在每個任務(wù)的隨機IO樣本上使用迭代-優(yōu)化(k≤5)方法,其中LLM基于輸入限制和最后生成的段落來判斷段落是否已經(jīng)「完全連貫」,如果不是,就生成一個優(yōu)化后的。
ToT設(shè)置
團隊構(gòu)建了一個深度為2(只有1個中間思維步驟)的ToT。
LLM首先生成k=5的計劃并投票選擇最佳的一個(圖4),然后根據(jù)最佳計劃生成k=5的段落,然后投票選擇最佳的一個。
一個簡單的zero-shot投票提示(「分析以下選擇,然后得出哪個最有可能實現(xiàn)指令」)被用來在兩個步驟中抽取5票。
結(jié)果
圖5(a)顯示了100個任務(wù)中的GPT-4平均分?jǐn)?shù),其中ToT(7.56)被認(rèn)為比IO(6.19)和CoT(6.93)平均生成更連貫的段落。
雖然這樣的自動評測可能會有噪音,但圖5(b)通過顯示人類在100個段落對中有41個更喜歡ToT而只有21個更喜歡CoT(其他38對被認(rèn)為「同樣連貫」)來確認(rèn)這一發(fā)現(xiàn)。
最后,迭代優(yōu)化在這個自然語言任務(wù)上更有效——將IO連貫性分?jǐn)?shù)從6.19提高到7.67,將ToT連貫性分?jǐn)?shù)從7.56提高到7.91。
團隊認(rèn)為它可以被看作是在ToT框架下生成思維的第三種方法,新的思維可以通過優(yōu)化舊的思維而產(chǎn)生,而不是i.i.d.或順序生成。
迷你填字游戲
在24點游戲和創(chuàng)意寫作中,ToT相對較淺——最多需要3個思維步驟就能完成輸出。
最后,團隊決定通過5×5的迷你填字游戲,來設(shè)置一個更難的問題。
同樣,目標(biāo)不僅僅是解決任務(wù),而是研究LLM作為一個通用問題解決者的極限。通過窺視自己的思維,以有目的性的推理作為啟發(fā),來指導(dǎo)自己的探索。
ToT設(shè)置
團隊利用深度優(yōu)先搜索保持探索最有可能成功的后續(xù)單詞線索,直到狀態(tài)不再有希望,然后回溯到父狀態(tài)以探索替代的思維。
為了使搜索可行,后續(xù)的思維被限制不改變?nèi)魏我烟顚懙膯卧~或字母,這樣ToT最多有10個中間步驟。
對于思維生成,團隊在每個狀態(tài)下將所有現(xiàn)有的思維(例如,「h2.motor; h1.tasks」對于圖6(a)中的狀態(tài))轉(zhuǎn)換為剩余線索的字母限制(例如,「v1.To heap: tm___;...」),從而得到下一個單詞填寫位置和內(nèi)容的候選。
重要的是,團隊也提示LLM給出不同思維的置信度,并在提案中匯總這些以獲得下一個要探索的思維的排序列表(圖6(a))。
對于狀態(tài)評估,團隊類似地將每個狀態(tài)轉(zhuǎn)換為剩余線索的字母限制,然后評估每個線索是否可能在給定限制下填寫。
如果任何剩余的線索被認(rèn)為是「不可能」的(例如,「v1. To heap: tm_s_」),那么該狀態(tài)的子樹的探索就被剪枝,并且DFS回溯到其父節(jié)點來探索下一個可能的候選。
結(jié)果
如表3所示,IO和CoT的提示方法在單詞級成功率上表現(xiàn)不佳,低于16%,而ToT顯著改善了所有指標(biāo),實現(xiàn)了60%的單詞級成功率,并解決了20個游戲中的4個。
鑒于IO和CoT缺乏嘗試不同線索、改變決策或回溯的機制,這種改善并不令人驚訝。
局限性與結(jié)論
ToT是一個讓LLM可以更自主、更智能地做決策和解決問題的框架。
它提高了模型決策的可解釋性以及與人類對齊的機會,因為ToT所生成的表征表形式是可讀的、高級的語言推理,而不是隱式的、低級的token值。
對于那些GPT-4已經(jīng)十分擅長的任務(wù)來說,ToT可能并是不必要的。
此外,像ToT這樣的搜索方法需要更多的資源(如GPT-4 API成本)來提高任務(wù)性能,但ToT的模塊化靈活性讓用戶可以自定義這種性能-成本平衡。
不過,隨著LLM被用于更多真實世界的決策應(yīng)用(如編程、數(shù)據(jù)分析、機器人技術(shù)等),ToT可以為研究那些即將出現(xiàn)的更為復(fù)雜的任務(wù),提供新的機會。
審核編輯 :李倩
-
語言模型
+關(guān)注
關(guān)注
0文章
535瀏覽量
10306 -
GPT
+關(guān)注
關(guān)注
0文章
356瀏覽量
15455 -
DeepMind
+關(guān)注
關(guān)注
0文章
131瀏覽量
10901
原文標(biāo)題:GPT-4推理提升1750%!普林斯頓清華姚班校友提出全新「思維樹ToT」框架,讓LLM反復(fù)思考
文章出處:【微信號:AI智勝未來,微信公眾號:AI智勝未來】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論