[筆記] The Illusion of Thinking

 

https://www.arxiv.org/pdf/2506.06941

Apple 在 2025 6月份 發布的 paper
主要探討當前 LLM 當中所謂的 Resaoning Model (像是 claude-3.7-sonnet-thinkingDeepSeek-R1) 是否真的具有思考 (thinking) 能力?

評測方法最直觀的思路就是舉一反三,做泛化能力的測試:

如果 LLM 在解謎遊戲中,會解困難較低的題目,那麼,不改變解謎遊戲規則,只是單純增加難度的話,應該可以依循同樣的思路下去順利解掉,只需要增加運算時間跟運算長度即可。

但如果當遊戲困難度提升後,LLM 卻出現了停止思考,或是完全解不出來的現象,那就可以合理懷疑,LLM 可能不是透過真正的思考過程來解謎,而是基於過往訓練時有看過的解法來解。

以上這是本篇快速的重點

Abstract

KEY:

  1. 「數據污染(data contamination)是傳統 benchmark 面臨的一大問題,訓練資料可能早已涵蓋考題範例」

  2. 使用可控的 Puzzle 問題依照複雜度分類做測試,可以避免受到數據污染的影響:
    可控制任務難度可分成低複雜度問題,中複雜度問題,高複雜度問題

  3. 現在的 Large Reasoning Model (LRM) 到底有沒有真實的 reasoning (或是所謂的 thinking) 能力還是一個問號

  4. LRM 之所以看起來有 thinking 能力,可能僅是因為透過 reasoning 的 data 訓練做出類似 reasoning 的表現型而不是像人類那樣具有泛化能力!

  5. 「模型在面對更高複雜度時,出現推理中斷或完全失敗的現象,就值得懷疑其是否真具備泛化的推理能力」

比較 thinking v.s non-thinking LLM 在數學考試上的表現


上圖比較了 thinking v.s non-thinking 兩種模型

在 MATH-500 (大概是小學數學程度)
以及 AIME24 與 AIME25 (高中奧林匹克) 的表現

  • 所謂的 thinking model 就是訓練模型有 reasoning 能力的
    claude-3.7-sonnet-thinkingDeepSeek-R1

  • non-thinking model 代表則是
    claude-3.7-sonnet-no-thinkingDeepSeek-V3

  • 數學題目的難度為: MATH-500 < AIME25 < AIME24
    (同樣都是奧林匹克數學題,人類在 AIME25 的表現上優於 AIME24)

  • 圖中的橫坐標,代表思考的長度 token 數,越往右代表思維鏈越長,運算時間越久

觀察討論

  • MATH-500 上的測試 thinking v.s non-thinking 表現相當
    無論是 claude-3.7-sonnet-thinking v.s. claude-3.7-sonnet-no-thinking
    還是 DeepSeek-R1 v.s. DeepSeek-V3
    他們差距的 Gap 都是非常小的

  • AIME24 上的測試 thinking 優於 non-thinking 出現明顯的 Gap
    所謂的 Reasoning model (claude-3.7-sonnet-thinking 與 DeepSeek-R1) 表現較優,符合預期

  • 在 AIME25 上的測試 thinking 優於 non-thinking 出現更大的 Gap
    明明 AIME25 的題目應該是比 AIME24 還要簡單,原本預期 non-thinking 應該會表現更好一點點,縮小跟 thinking 之間的差距。
    但實驗結果顯示,差距變大,可能的原因是出在 data contamination 所謂的 資料污染 上:

問題可能的原因:
過去訓練 LLM 模型的資料中可能涵蓋了 AIME24 出現的題目,而 AIME25 在今年(2025)的時間點是較新的資料,在網路上洩題的機會較小,因此 thinking 跟 non-thinking 之間的差距才會呈現如此結果

採用「可控拼圖遊戲controllable puzzle games」做測試

由於數學考試問題可能會遇到 data contamination 的情況
論文作者嘗試使用 puzzle 的問題來測試 thinking 能力
puzzle 問題有個特色,就是問題複雜度是可控制的
如圖

這篇論文中設計了四款「可控拼圖遊戲(controllable puzzle games)」,用來評估大型語言模型的推理與規劃能力。以下是四款遊戲的玩法說明,包含其規則、挑戰點與複雜度控制方式:

🧩 1. Tower of Hanoi(河內塔)

玩法目標:

  • 將所有盤子從第一根柱子移到第三根柱子,保持由大到小的順序。

基本規則:

  • 有三根柱子和 N 個大小不一的盤子。
  • 每次只能移動「一個」盤子。
  • 不能把大的盤子放在小的盤子上。

挑戰點:

  • 需要遞迴式分解問題(例如先把上面 N-1 個盤子移走)。
  • 組合數量呈指數級增加(解需要至少 2^N - 1 次移動)。

複雜度控制:

  • 調整盤子的數量 N。

🧩 2. Checkers Jumping(跳棋交換)

玩法目標:

  • 將左右兩邊的紅藍棋子完全對調位置,中間有一格空位。

基本規則:

  • 棋盤為 1D 線性陣列:[R, R, , _, B, B, ]。

棋子只能:

  • 向前滑動到相鄰空格。
  • 跳過一顆異色棋子到空格。
  • 棋子不能往回走(紅往右、藍往左)。

挑戰點:

  • 空間規劃與避免卡死。
  • 需要預見數步行動的後果。

** 複雜度控制:**

  • 調整紅藍棋子的數量 N,總長度 = 2N + 1。

🧩 3. River Crossing(河流渡船)

玩法目標:

  • 將所有「角色(actors)」與其「保鑣(agents)」安全送到對岸。

基本規則:

  • 每位 actor 有對應的 agent,總共 N 對。
  • 船最多載 k 人(不可空船來回)。

安全限制:

  • Actor 不能單獨與其他 agent 相處(船上或岸邊),除非自己的 agent 在場。

挑戰點:

  • 高度 constraint-based reasoning。
  • 類似「傳教士與野人」問題,避免不安全組合。
  • 有效的狀態追蹤與角色排程。

複雜度控制:

  • 調整 N 對角色與 agent;小 N 用船容量 k=2,大 N 用 k=3。

🧩 4. Blocks World(積木重組)

玩法目標:
將初始堆疊狀態的積木,依指定順序重組為目標狀態。

基本規則:

  • 多堆積木,每堆可以有多個積木。
  • 只可以移動「最上方」的積木。
  • 移動後可以放在空堆或其他積木上。

挑戰點:

  • 涉及狀態分解與暫存(需要移開某些積木,才能調整底層)。
  • 類似 AI 規劃中的典型 block-stacking 問題。

複雜度控制:

  • 調整積木數 N,或堆疊配置(interleaved target pattern)。

比較 thinking v.s non-thinking LLM 解 puzzle 的表現


Figure 1: 河內塔 (Tower of Hanoi) 解謎任務實驗結果
河內塔遊戲設定盤子(dishes)數量多寡來控制遊戲謎題難度
圖中的黃色區域: low complexity 盤子數量 <=3
圖中的藍色區域: medium complexity 盤子數量 3~8
圖中的紅色區域: high complexity 盤子數量 >=10

實驗指標定義:

  • Complexity 可控看有幾個盤子
  • Accuracy 解任務的正確率
  • Response Length (Tokens) 模型在思考的時候輸出多少個 token
  • Position within Thoughts 大型語言產生 CoT 過程中,例如嘗試了很多思路,正確的思路在整個 CoT 裡面出現的位子
    整個 CoT 長度 normalize 成 1,想要看正確思路出現在 CoT 裡面的前面還是後面

實驗結果解讀:

  • 當任務複雜度很簡單時,(dishes <= 3) thinking model 沒有優勢
  • 當任務複雜程度中等時 (3 < dishes <=8 ) thinking model 的優勢就展現出來了!
  • 當 puzzle 複雜度到達一個閾值時( dishes >= 10) 正確率歸零出現 Collapse 現象
    無論 thinking or non-thinking 的 LLM 的正確率全部崩潰歸零 (collapse) 這種 accuracy 下降是瞬間的陡降現象

另一種看法:
測試資料及不在訓練資料涵蓋內容範圍之 Out of Distribution (OOD) 的可能性:
在模型看過河內塔題目中,可能都不超過 10 dishes 因此一旦出現 10 盤以上的模型就不會了,代表模型不具有泛化能力(舉一反三能力)

人類在解決任務時,任務很難的話應該要花更多時間去思考
但圖中超過 10 dishes 後模型產生的 Token 不升反降
作者把這樣的觀察稱為 scaling limitaion

這類問題也可以用 OOD 來解釋,可能是模型遇到沒見過的任務時,就不知道該怎麼思考了!

這個圖可以先看 1~3 的區域,模型在 CoT 的中斷就已經找到正確思路了, 0.6 ~ 1.0 這段後期思考都是浪費的,佔了額外的思考時間,是 over-thinking 的體現

中等難度 (藍色段),模型會先嘗試不正確的思路然後再慢慢到 CoT 比較後期的地方找到正確的思路把問題解掉

對於那些非常複雜的任務,模型出現了 Collapse 的現象所以那段沒有任何結果。

Puzzle 複雜到達閾值以上出現 Accuracy Collapse 現象

其他的圖表基本上也都在展現上述結論

不同任務上 Collapse 的陡峭程度不一樣,不同模型 Collapse 的陡峭程度都不一樣,但相同的結論是,當任務複雜度到達一定成度以上都會發生 Collapse 的現象

Pass@K 觀察指標,代表模型性能的 upper bond

可以看到 compute budget 上升,簡單任務與中等難度任務的表現會提升
但在複雜任務裡面,即便有更多的 compute budget 模型表現也呈現躺平狀態,就好像是考試遇到難題時,即便還有時間作答,也直接放棄的現象

Fig.6 展示了更多的 Collapse 的現象
在不同的任務上,使用不同的 Reasoning model,都可以觀察到出現 Collapse

Fig 7 展示模型的思維鏈在整體的哪裡找到正確的思路
先看 Tower of Hanoi 這個遊戲謎題:

  • 當任務複雜度較低時,模型先找到正確的思路 (綠v) 在靠近 0.5 的位子先被找到,但後面 0.6 的地方出現錯誤思路 (紅x),這個現象在任務複雜度 N = 2 時更明顯,是一種過度思考的現象
  • 當任務複雜度逐漸提升到一定難度範圍內,模型就會從一開始找到錯誤思路,逐漸在思維練越後面的地方 (越接近1.0) 找到正確思路
  • 這樣的實驗的統計都是 probability distribution ,可以在圖上看到淺色的 distribution 的樣態
  • 當難度超過一個門檻後,只剩下錯誤的思路留下來,顯示出 Collapse 的現象

🧠 總結:LLM 的推理幻象?

本研究透過可控拼圖實驗設計,揭示當前最先進的推理模型(Large Reasoning Models, LRMs)在高複雜度任務面前仍面臨根本性的能力瓶頸。
雖然這些模型具備「思考 token」與「推理流程」的機制,表面上看似具備推理能力,
但從實驗觀察到的準確率崩潰、推理階段的過度探索(overthinking),以及推理 token 數在高難度題目中反而下降等現象來看,
目前的 LRM 還無法展現出類似人類的「舉一反三」與「抽象泛化」能力。

這提醒我們,在追求更強 AI 推理力的過程中,更重要的是回頭問一個根本問題:

模型真的「理解」了問題?還是只是「重播」過去看過的解法?

留言

這個網誌中的熱門文章

[筆記] CRLF跟LF之區別 --- 隱形的 bug

[ML筆記] Batch Normalization

[筆記] 統計實習(1) SAS 基礎用法 (匯入資料並另存SAS新檔,SUBSTR,計算總和與平均,BMI)

[ML筆記] Ensemble - Bagging, Boosting & Stacking