henry 發自 凹非寺量子位 | 公眾號 QbitAI
大語言模型在解心算題時,隻依賴最後一個token?
最近,來自加州大學聖克魯茲分校、喬治·梅森大學和Datadog的研究人員發現:在心算任務中,幾乎所有實際的數學計算都集中在序列的最後一個token上完成,而不是分散在所有token中。
這意味著,相較於在Transformer和多層感知機(MLP)中常見的全局信息訪問——即每個token在預測時都能查詢並利用整個上文信息——在諸如心算這樣的特定任務中,全局訪問其實並不是必需的。
這是怎麽一回事?
心算隻要最後一個token?!
總的來說,研究人員采用了上下文感知平均消融(Context-Aware Mean Ablation, CAMA)基於注意力的窺視(attention-based peeking)技術對Llama-3-8B等Transformer架構的模型進行了一係列的消融實驗。
這些實驗通過係統性地移除或改變模型的一部分,探究能讓模型依然表現良好的“最少計算量”
在這一過程中,研究人員發現模型內部會形成一個稀疏子圖(sparse subgraph)——他們把它稱為“人人為我”(All-for-One, AF1)。
這個子圖通過最少的計算層和最有限的信息傳遞,讓模型高效完成運算。
在“人人為我”中,輸入Transformer前幾層(L_wait)的token並沒有做跟“自己數值”相關的計算,而是“等待”,並主要承擔一些通用的準備工作(比如識別token、結構編碼、預測下一步所需的通用表示)。
然後,在中間的兩層(L_transfer)裏,它們就將信息傳遞給最後一個token。
之後,最後一個token獨自完成計算並給出答案。
這一過程表明,模型內部將任務通用型計算(如 token 識別、數值與結構編碼)與輸入特定型計算(如實際算術運算)是分開的。
(注:這篇研究聚焦於心算任務,即涉及兩個或三個操作數的算術問題(例如42+20−15),這些問題可以通過單個token的輸出解決,而無需模型進行顯式的鏈式思維推理。)
接下來,国产AV蜜桃网站具體來看。
眾所周知,大語言模型在許多計算任務上表現出色,而其中一個重要原因是其采用了Transformer架構。
與RNN不同,Transformer允許任意token通過自注意力機製立即訪問所有先前的token以傳遞信息,並使每個token能夠通過多層感知機(MLP)並行執行各自的獨立計算。
但即便如此,模型內部的信息流和計算過程仍然是不透明的。
因此,為了揭開大語言模型的“黑箱”,研究人員采用了以下三個步驟來進行探索。
首先,在模型的初始層抑製token針對特定輸入的計算
研究人員發現,在傳統Transformer的每一層中,token都能訪問所有之前的token,但對於簡單的心算任務,每個token可能未必從一開始就要獲得全局信息。
由此,研究人員引入了等待期(L_wait):讓在前麵的L_wait層中的token獨立計算,隻執行任務通用操作(如理解數字、識別算術結構),而不訪問其他token。
為了實現這一點,他們使用了上下文感知平均消融(CAMA)
CAMA的作用是屏蔽掉token之間的輸入特定信息,同時保留每個token的普遍計算能力,使模型能夠在不依賴具體輸入的情況下完成基礎準備工作。
接下來,在少數幾層中限製跨token位置的信息傳遞路徑。隻讓最後token在L_transfer層中訪問所有token,其餘層隻關注自己。
最後,在剩餘的層中強製所有計算都在最後一個token上發生
由於CAMA隻能從第一層開始,因此,研究人員引入了一種可以在任意層控製信息訪問的方法——基於注意力的窺視(ABP)
它通過修改注意力掩碼(attention mask),精確指定每個“查詢”(query)token可以關注哪些“鍵”(key)。
在這篇論文中,研究人員主要使用了以下兩種模式:
完全窺探 (Full-peeking):token可以關注所有在它之前的token,這是標準的因果注意力。在AF1的傳遞階段,最後一個token使用此模式來收集信息。自我窺探 (Self-peeking):token隻能關注它自己,在傳遞和計算階段,所有非末尾的token都使用此模式;在計算階段,最後一個token也切換到此模式。
實驗驗證
在完成方法和操作流程的構建後,研究者進行了一係列實驗來發現、驗證和分析AF1子圖。這裏主要涉及到Llama-3-8B和Llama-3.1-8B,以及在Pythia和GPT-J模型上的驗證。
首先,通過三階段消融與窺視實驗,研究人員發現Llama-3-8B在A+B+C任務中隻需前14層做任務通用計算(CAMA 層),然後通過2層信息傳輸讓最後的token獲取全局信息,剩餘層僅進行最後token的自計算。
這個幾乎保留全部性能的子圖被命名為AF1_llama
接下來,研究人員又進一步驗證了AF1_llama在Llama-3-8B和Llama-3.1-8B上的表現。
實驗表明,AF1_llama在八個任務中總體表現出高忠實度。
更進一步,實驗進一步驗證了第15和16層的信息傳輸在Llama-3-8B中的重要性。
研究表明,僅少數注意力頭對算術計算關鍵,即使移除近60個頭部,模型仍能保持約95%的準確率,表明大部分注意力頭冗餘,而關鍵頭集中在少數層。
此外,為了探究AF1_llama是否可以在Llama-3-8B上泛化到表示A+B和A−B運算的其他算術形式,研究進一步將口頭描述運算以及將運算嵌入到應用題或Python代碼中。
實驗表明,AF1_llama在不包含額外語義上下文的直接算術任務中仍保持了相當高的準確率。
然而,它在需要語義理解的任務上,如應用題和Python代碼,完全失敗了,這表明它需要額外的組件來處理其他能力,比如理解自然語言或Python程序輸入。
最後,研究人員在Pythia和GPT-J中也發現了類似AF1的子圖,但與Llama不同,這些模型的等待期更短(L_wait ≈ 9–11)、信息傳輸層更長,且性能邊界不如Llama清晰。
盡管忠實度普遍低於Llama,但對二元運算任務的子圖仍能恢複超過一半的原始模型準確率。
總體而言,這項工作為大語言模型中的算術推理和跨token計算的機製理解做出了貢獻。此外,它通過CAMA和ABP提供了方法論上的創新,可服務於算術任務之外的更廣泛應用。
[1]http://x.com/rohanpaul_ai/status/1966788202238448101
[2]http://www.arxiv.org/pdf/2509.09650