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 中評估時。為了盡可能減少模型查詢,研究者採用了不間斷的解答創建過程。即不帶任何生成停頓,為主要子問題直接和連續地產生解。
重寫後的內容: 這種方法有很多優點。首先,所有產生的答案都在同一個共享的上下文中,不需要為每個答案產生單獨的模型查詢進行評估。其次,儘管一開始看起來有些反直覺,但孤立的標記或標記組機率可能無法總是得到有意義的選擇。圖4展示了一個簡單的示意圖
#3. 衡量子問題的前景。 如上所述,現有技術依靠額外的提示來識別樹節點的潛力,幫助做出探索方向的決策。而研究者的觀察表明,如果能將最有前途的路徑封裝在上下文範例中,LLM 會固有地傾向於優先考慮那些有前途的候選項。這能降低對複雜 prompt 工程設計的需求並允許整合複雜精細的啟發式方法,不管這些方法是直覺式的或知識驅動的。同樣,新方法中不含脫節的 prompt,這使得能在同一個生成結果中即時評估候選項的可行性。
4. 回溯到更好的節點。 決定接下來要探索的節點(包括回溯到之前的節點)本質上取決於所選的樹搜尋演算法。儘管之前已有研究為搜尋過程採用了編碼機制等外部方法,但這會限制其更廣泛的吸引力並需要額外的客製化。這篇論文提出的新設計主要採用 DFS 方法並輔以剪枝。目標是維持有同一父節點的子節點之間的近鄰度,以鼓勵 LLM 優先考慮本地特徵而不是遠端特徵。此外,研究者也提出了基於 BFS 的 AoT 方法的效能指標。研究者表示,借助於模型從上下文範例中收集見解的固有能力,可以消除額外的客製化機制的必要性。
研究人員進行了一項實驗,對於24點和5x5迷你填詞遊戲進行了研究。結果顯示,AoT方法在效能表現上優於單一提示方法(如標準方法、CoT、CoT-SC),同時也可以媲美利用外部機制的方法(如ToT)
從表1可以清楚看出,使用LLM進行樹搜尋的方法明顯優於結合了CoT/CoT-SC的標準提示設計方法
在迷你填詞任務中,表3 顯示了AoT的有效性,其填詞成功率超過了先前使用各種提示技術的方法
但是,它比ToT 差。一個重要的觀察是 ToT 使用的查詢量龐大,超過了 AoT 一百倍以上。另一個讓 AoT 遜於 ToT 的因素是演算法範例中固有的回溯能力沒有充分啟動。如果能完全解鎖該能力,會導致生成階段顯著延長。相較之下,ToT 的優點在於可以利用外在記憶來進行回溯。
AoT 能否在模仿 DFS 的基礎上取得突破?
根據圖5所示,AoT所使用的節點整體上比DFS版本少。 DFS在選擇要探索的子樹時採用了統一的策略,而AoT的LLM則整合了其固有的啟發式方法。這種對基本演算法的放大體現了LLM遞歸推理能力的優勢
演算法的選擇會如何影響 AoT 的效能?
在實驗中發現,表5顯示了這三種AoT變體都比單一查詢的CoT更優越
這一結果符合預期,因為無論演算法是什麼,它都會進行搜尋並重新審視潛在的錯誤—— 要么是透過隨機搜尋變體中的隨機嘗試,要么是透過深度優先搜尋(DFS )或廣度優先搜尋(BFS)配置中的回溯。值得注意的是,DFS版本的AoT和BFS版本的AoT這兩個結構化搜尋的效率都優於隨機版本的AoT,這突顯了演算法洞察在解答發現中的優勢。但是,BFS版本的AoT落後於DFS版本的AoT。透過更進一步分析BFS版本的AoT的錯誤,研究者發現,相較於DFS版本的AoT,BFS版本的AoT更難辨識最佳操作
在調節AoT 的行為時,我們需要關注演算法範例中的搜尋步數
在圖6中展示了總搜尋步數的影響。其中,AoT(長)和AoT(短)分別表示相對於原始AoT生成結果更長且更短的版本
##研究結果顯示,搜尋步驟會對LLM的搜尋速度產生隱含的偏差。需要注意的是,即使在採取錯誤的步驟時,強調探索有潛力的方向仍然非常重要
以上是新標題:揭秘大模型運行緩慢的原因:人類思維演算法的新方向的詳細內容。更多資訊請關注PHP中文網其他相關文章!