大模型為啥這麼慢,原來是想多了:新方向是和人一樣的思維算法


圖片來源:由無界AI 生成

人類直覺是一種常被AI 研究者忽視的能力,但其精妙程度連我們自身也沒有徹底理解。弗吉尼亞理工大學和微軟的一個研究團隊在近日的一篇論文中提出了思維算法(AoT),其組合了直覺能力與算法方法的條理性,從而能在保證LLM 性能的同時極大節省成本。

大型語言模型近來發展速度很快,其在解決一般問題、生成代碼和跟隨指令方面表現出了顯著的非凡能力。

儘管早期的模型依賴於直接回答策略,但當前的研究則轉向了線性推理路徑,其做法是將問題分解成子任務來發現解決方案,或通過修改上下文來利用外部機制來改變token 的生成。

與人類認知類似,早期的LLM 策略似乎模仿的是即時的System 1(快速反應),其特徵是通過脈衝決策實現。相較之下,思維鏈(CoT)和least-to-most prompting(L2M)等更新的一些方法則反映了System 2(慢速思考)的內省式本質。值得注意的是,通過整合中間推理步驟,可讓LLM 的算術推理能力獲得提升。

但是,如果任務需要更深度的規劃和更廣度的思維探索,那麼這些的方法的局限性就顯現出來了。儘管整合了自我一致性的CoT(CoT-SC)可使用多個LLM 輸出來達成共識性結果,但由於缺少細緻的評估,可能會導致模型走向錯誤方向。 2023 年出現的思維樹(ToT)是一種值得注意的解決方案。其中使用一個LLM 來生成想法,再使用另一個LLM 來評估這些想法的優點,之後續以「暫停– 評估– 繼續」的循環。這種基於樹搜索的迭代過程明顯是有效的,尤其是對於具有較長延續性的任務。研究者認為,這種進展是使用外部工具來增強LLM,類似於人類使用工具來規避自身工作記憶的限制。

另一方面,這種增強過的LLM 方法也不是沒有缺點。一個明顯的缺點是查詢數量和計算需求會大幅飆升。對GPT-4 等在線LLM API 的每一次查詢都會產生可觀的金錢開支,同時還會拉長延遲,這一局限對實時應用而言尤為關鍵。這些查詢上漲的延遲可能有損方案的整體效率。基礎設施方面,持續的交互會給系統帶來壓力,這可能限制帶寬和降低模型可用性。此外,還不能忽視對環境的影響,不斷的查詢會加大已經能耗很大的數據中心的能耗,使碳足跡進一步增大。

基於這些考量,研究者的優化目標是大幅減少當前多查詢推理方法所使用的查詢數量,同時維持足夠的性能,使模型能應對需要熟練使用世界知識的任務,從而引導人們更負責任和更熟練地使用AI 資源。

通過思考LLM 從System 1 到System 2 的演變,可以看到一個關鍵因素浮出了水面:算法。算法是富有條理的,其能提供一條幫助人們探索問題空間、制定策略和構建解決方案的途徑。儘管許多主流文獻都將算法看作是LLM 的外部工具,但考慮到LLM 固有的生成式複現能力,我們能否引導這種迭代式邏輯來將一個算法內化到LLM 內部?

弗吉尼亞理工大學和微軟的一個研究團隊將人類推理的複雜精妙和算法方法的富有條理的精確性聚合到了一起,試圖通過融合這兩方面來增強LLM 內部的推理能力。

已有的研究強調,人類在解決複雜問題時會本能地借鑒過去的經歷,確保自己進行全面思考而不是狹隘地關注某一細節。 LLM 生成範圍僅受其token 限制限定,似乎是注定要突破人類工作記憶的阻礙。

受這一觀察啟發,研究者探究了LLM 能否實現類似的對想法的分層探索,通過參考之前的中間步驟來篩除不可行的選項—— 所有這些都在LLM 的生成周期內完成。而人類長於直覺敏銳,算法善於組織化和系統性的探索。 CoT 等當前技術往往迴避了這種協同性潛力,而過於關注LLM 的現場精度。通過利用LLM 的遞歸能力,研究者構建了一種人類– 算法混合方法。其實現方式是通過使用算法示例,這些示例能體現探索的本質—— 從最初的候選項到經過驗證的解決方案。

基於這些觀察,研究者提出了思維算法(Algorithm of Thoughts /AoT)。

論文:https://arxiv.org/pdf/2308.10379.pdf

從更廣義的範圍看,這種新方法有望催生出一種上下文學習新範式。這種新方法沒有使用傳統的監督學習模式,即 [问题,解答] 或 [问题,用于获得解答的后续步骤],而是採用了一種新模式 [问题,搜索过程,解答]。很自然,當通過指令讓LLM 使用某算法時,我們通常預計LLM 只會簡單模仿該算法的迭代式思維。但是,有趣的是LLM 有能力注入其自身的「直覺」,甚至能使其搜索效率超過該算法本身。

思維算法

研究者表示,其研究策略的核心是認識到當前上下文學習範式的核心短板。 CoT 儘管能提升思維聯繫的一致性,但偶爾也會出問題,給出錯誤的中間步驟。

為了說明這一現象,研究者設計了一個實驗。用算術任務(如11 − 2 =)查詢text-davinci-003 時,研究者會在前面添加多個會得到同等輸出結果的上下文等式(如15 − 5 = 10, 8 + 2 = 10)。

結果發現,準確度陡然下跌,這說明只是在上下文中給出正確的推理可能會在無意中損害LLM 的基礎算術能力。

為了減少這種偏差,讓示例更加多樣化也許是可行的解決方案,但這可能會稍微改變輸出的分佈。只是添加一些不成功的嘗試(就像是隨機搜索),可能會無意地鼓勵模型重新嘗試,而不是真正解決問題。了解了算法行為的真正本質(其中失敗的搜索和後續的恢復以及對這些嘗試的學習都很重要),研究者整合上下文示例的方式是按照搜索算法的模式,尤其是深度優先搜索(DFS)和廣度優先搜索(BFS)。圖1 給出了一個示例。

這篇論文關注的重點是與樹搜索問題類似的一大類任務。

這類任務必需對主要問題進行分解,為每一部分構建可行的解決方案,並決定採納或放棄某些路徑,並可以選擇重新評估更有潛力的部分。

研究者的做法不是為每個子集都給出單獨的查詢,而是利用了LLM 的迭代能力,在一次統一的生成式掃描中解決它們。通過限定自己僅能進行一兩次LLM 交互,該方法可以自然地整合來自之前的上下文候選項的洞見,並解決需要對解答域進行深度探索的複雜問題。對於這些思維的大小應當如何以及應該為LLM 提供何種類型的上下文示例,從而提升token 效率,研究者也給出了自己的見解。下面將給出樹搜索算法的關鍵組件以及它們在新框架中的表現形式。

1. 分解成子問題。給定一個問題,就算不看實際解決問題方面,構建一個描述可行推理路徑的搜索樹已經是一項艱鉅的任務。任何分解都不僅要考慮子任務之間的相互關係,還要考慮解決各個問題的難易程度。

以簡單的多位數加法為例:儘管對計算機而言,將數值轉換成二進制數後效率很高,但人類通常認為十進制數更加直觀。此外,即便子問題是一樣的,執行方法也可能不同。直覺能找到解答步驟之間的捷徑,而如果沒有直覺,可能就必需更為詳細的步驟。

為了創建出正確的prompt(即上下文算法示例),這些細微之處非常重要,它們決定了LLM 為了取得可靠表現所需的最少token 數量。這不僅能滿足LLM 對上下文的限制,而也對LLM 的能力很重要,因為我們希望LLM 能使用相似的token 量解決與其上下文有共鳴的問題。

2. 為子問題提議解答。現目前的一種主流方法涉及到直接採樣LLM token 輸出概率。儘管這種方法對一次性答案有效(有一定的限制),但也無力應對一些場景,比如當需要將樣本序列整合進後續prompt 中或在後續prompt 中評估時。為了盡可能減少模型查詢,研究者採用了一種不間斷的解答創建過程。即不帶任何生成停頓,為主要子問題直接和連續地生成解答。

這個方法存在諸多好處。第一,所有生成的解答都在同一個共享的上下文中,無需為評估每個解答生成單獨的模型查詢。第二,儘管一開始看起來挺反直覺,但孤立的token 或token 分組概率可能並不總能得到有意義的選擇。圖4 給出了一個簡單的示意圖。

3. 衡量子問題的前景。如上所述,現有技術依靠額外的提示來識別樹節點的潛力,幫助做出有關探索方向的決策。而研究者的觀察表明,如果能將最有前途的路徑封裝在上下文示例中,LLM 會固有地傾向於優先考慮那些有前途的候選項。這能降低對複雜prompt 工程設計的需求並允許整合複雜精細的啟發式方法,不管這些方法是直覺式的或知識驅動的。同樣,新方法中不含脫節的prompt,這使得能在同一個生成結果中即時評估候選項的可行性。

4. 回溯到更好的節點。決定接下來要探索的節點(包括回溯到之前的節點)本質上取決於所選的樹搜索算法。儘管之前已有研究為搜索過程採用了編碼機制等外部方法,但這會限制其更廣泛的吸引力並需要額外的定制。這篇論文提出的新設計主要採用DFS 方法並輔以剪枝。目標是維持有同一父節點的子節點之間的近鄰度,以此鼓勵LLM 優先考慮本地特徵而不是遠程特徵。此外,研究者還提出了基於BFS 的AoT 方法的性能指標。研究者表示,借助於模型從上下文示例中收集見解的固有能力,可以消除額外的定制機制的必要性。

實驗

研究者在24 點和5×5 迷你填詞遊戲上進行了實驗,結果表明了AoT 方法的優越性—— 其性能表現由於單prompt 方法(如標準方法、CoT、CoT-SC),同時也能媲美利用外部機制的方法(如ToT)。

從表1 可以明顯看出,結合了CoT/CoT-SC 的標準prompt 設計方法明顯落後於通過LLM 使用的樹搜索方法。

表3 凸顯了AoT 在迷你填詞任務上的有效性,其填詞成功率超過之前使用各種prompt 技術的方法。

但是,它比ToT 差。一個重要的觀察是ToT 使用的查詢量巨大,超過了AoT 百倍以上。另一個讓AoT 遜於ToT 的因素是算法示例中固有的回溯能力沒有充分得到激活。如果能完全解鎖該能力,會導致生成階段顯著延長。相比之下,ToT 的優勢在於可以利用外部記憶來進行回溯。

討論

AoT 能否超越它模仿的DFS?

如圖5 所示,AoT 所使用的節點整體上比DFS 版本更少。 DFS 在選擇後續要探究的子樹時採用了一種統一的策略,而AoT 的LLM 則集成了其固有的啟發式方法。這種對基本算法的放大體現了LLM 遞歸推理能力的優勢。

算法的選擇會如何影響AoT 的效能?

表5 給出了實驗發現,可以看到這三種AoT 變體都優於單查詢的CoT。

這一結果符合預期,因為無論算法是什麼,它都會進行搜索並重新審視潛在的錯誤—— 要么是通過隨機搜索變體中的隨機嘗試,要么是通過DFS 或BFS 配置中的回溯。值得注意的是,AoT (DFS) 和AoT (BFS) 這兩個結構化搜索的版本的效率都優於AoT (Random),這突顯了算法洞察在解答發現中的優勢。但是,AoT (BFS) 落後於AoT (DFS)。通過更進一步分析AoT (BFS) 的錯誤,研究者發現,相比於AoT (DFS),AoT (BFS) 更難識別最佳操作。

那麼,算法示例中的搜索步數怎麼調節AoT 的行為?

圖6 給出了總搜索步數的影響。其中AoT (Long) 和AoT (Short) 分別是相對於原始AoT 的生成結果更長和更短的版本。

結果表明,搜索步數會為LLM 的搜索速度引入隱含的偏差。值得注意的是,即使在採取錯誤的步驟時,強調探索有潛力的方向是很重要的。

資訊來源:由0x資訊編譯自8BTC。版權歸作者所有,未經許可,不得轉載

Total
0
Shares
Related Posts