hero

看一條 RL 訓練曲線往上走,很容易得出「模型正在學會解題」的結論。Michael Noukhovitch 這篇文章反過來拆開平均值:如果進步幾乎都發生在原本已經有些把握的題目上,那條漂亮曲線究竟是在報告能力成長,還是在報告模型更會挑它本來就差一點會的題目?作者把這個偏差命名為 LLM RL 的 Matthew Effect,並提出 Never Give Up(NGU)把採樣算力挪回一開始全錯的難題。

原文摘要

這篇文章是作者近期 LLM RL 後訓練論文的較非正式、互動式說明;更深入的技術細節可見其 arXiv 論文與程式碼。問題從一個再熟悉不過的畫面開始:Olmo 3 的 7B base 模型在 Dolci RL-Zero math 上做 RL 後,AIME 2025 的整體評測曲線上升。照總平均看,模型的數學能力似乎變好了;但作者問,這條曲線實際量到了什麼?

AIME 評測共有 30 題。作者先用訓練前模型的 pass@32 把題目切成三個難度桶:初始 pass@32 為零的題目定義為「困難」;其餘題目按 pass rate 平分為中等與容易。三組的初始 pass@1 平均分別是 0%、3.8% 與 22.7%。這個切法刻意不以人類直覺替題目貼標籤,而是以模型尚未做 RL 前的實際能力來分。

把總分拆開後,結果很不對稱:容易題的正確率大幅提高,原本有些解開的題目變成大多能解;但訓練前 pass@32 為零的困難題,訓練後多半仍是 pass@32 為零。逐題追蹤解題率的熱圖也顯示,同一批題目的進展主要集中於初始較容易的區塊。平均 AIME 分數因此遮住了關鍵事實:最難題幾乎沒有得到相稱的改善。

作者接著確認這不只是數學 RL 的特例。他檢視 DeepCoder 與 DeepSWE 兩個公開釋出模型和訓練紀錄的開源專案。對 LiveCodeBench v6,可用 DeepSeek-R1-Distilled-Qwen-14B 的初始表現把任務分桶;對 SWE-Bench,則可採用既有的任務長度與難度標籤。跨過數學、程式碼與 agentic RL,得到的是同一個圖樣:從 RL 獲得的增益,與問題在訓練開始時有多容易成比例。

作者借用網路科學與經濟學中的「Matthew Effect」——常被概括為「富者愈富」——為此命名:在 LLM 的 RL 裡,模型初始越有能力處理的任務,表現越容易繼續改善;初始困難的任務則常停留在困難狀態。文章給出的定義是:RL 對一項任務的改善程度,正比於模型的初始勝任度;於是容易任務愈來愈容易,困難任務卻往往沒有鬆動。

問題不只是不夠多抽樣

一個直覺解釋是 GRPO 的採樣數 $k$ 太小:難題可能只是沒有抽到正確答案,因而缺乏可用訓練訊號。既有工作確實提出增加 completion 數量、運用特權資訊或 curriculum learning;作者強調,這些方向與本文方法並不互斥。要檢驗「只要把 $k$ 拉大」是否足夠,他用 Qwen 2.5 0.5B Instruct 在 GSM8K Platinum 上做 GRPO 訓練與同資料集測試。

實驗依初始 pass@1 將題目分為容易(25%)、中等(10%)、困難(5%)與極困難(0%),並比較 $k=4、8、16、32$。結果反而是較小的 $k=4$ 能解開更多難題,不是較大的 $k$。這迫使問題從「難題每次抽得不夠多」轉成「訓練批次裡究竟留下了哪些題」。

GRPO 在此設定會濾掉一個 prompt 的 completions 全對或全錯的情況,因此真正進入訓練批次的,必須是同一題既有對答、也有錯答。作者畫出容易題與極困難題在批次中的比例隨時間如何變化。較大的 $k$ 雖然較容易在很難的題目上抽到至少一個正確 completion,卻也更快地讓容易題滿足「有對有錯」的篩選條件,持續留在訓練裡;這些題會反覆消耗訓練資源。

相對地,較小的 $k$ 對容易題更快出現「全部答對」並將其濾掉,將批次空間騰給較難的題。作者的 asynchronous RL 設定下,省下來的算力不是消失,而是用於訓練更困難的問題。因此,Matthew Effect 的根因不只是難題被抽樣不足;更是太多 compute 花在已接近解開的容易題上。作者把這個焦點稱為 signal efficiency:怎麼讓每一次訓練訊號不一直回流到最容易產生訊號的地方。

Never Give Up:全錯時,不立刻把題目丟掉

作者的目標是保有小 $k$ 的效率,卻不讓難題因第一次小批抽樣全錯就永遠失去機會。NGU 的核心做法是:先用小 $k$ 採樣;若某一題的 completions 全錯,便以機率 $p$ 不放棄它,再做下一輪採樣。直到出現至少一個正確 completion,或在機率機制下停止。原文以 $k$ 與「NGU rounds」描述這種重試,並指出其期望採樣成本可寫為 $k/(1-p)$。

這使方法成為隱式的自適應機制。curriculum learning 是預先替問題排列難度;NGU 則在訓練途中根據當下結果決定是否繼續採樣。作者認為這很重要,因為隨訓練進行,原本容易的題可能變得相對困難,反之亦然,固定的課程排序未必追得上模型狀態。GSM8K 實驗中,以 $k=4$、$p=0.9$ 的 NGU 勝過所有比較過的固定 $k$。

作者將其效果概括成同時取到大、小 $k$ 的優點:小 $k$ 能快速辨識並移除已經太容易的題,避免它們反覆佔據批次;當小 $k$ 在難題上得到全錯時,NGU 又會重試,取得類似較大 $k$ 才可能得到的正確樣本。重點不是無限重試,而是將重試預算放在初次採樣仍未成功的題目上。

非同步 RL 的陳舊樣本

多輪重試也帶來非同步 RL 的風險:為了等到一個正確 completion,最早那批 completion 可能已經相對於目前模型參數過於陳舊。作者特別指出,陳舊的負樣本在深度 RL 中可能尤其有害。因此實作上應依年齡門檻過濾 completion,而不是把等待太久的樣本照單全收。

文章還介紹兩個處理這種 staleness 的技巧。示意例子以 $T=4$ 表達:若一組 completion 的年齡不同,可以忽略過期樣本,也可以調整其在 GRPO baseline 中的權重;原文比較「忽略、不重新縮放」與「錨定正樣本」等選擇。核心立場是,即使某些樣本已不適合直接拿來訓練,只要可用,仍可納入 GRPO 的 baseline 計算。作者也提醒,這一節是為處理實作細節,並非理解 NGU 主訊息的必要前提。

放大到數學 RL

接著作者把方法放進更接近實際規模的數學 RL 設定:DeepScaler,以 Qwen 3 4B base 為模型,並建立在一個強的 $k=16$ GRPO 基線上。結果顯示 NGU 在這個 realistic math task 上優於 GRPO。

更重要的是,放大後 Matthew Effect 並沒有自行消失:難題依舊比容易題更難取得增益。不過 NGU 能緩解它,在幾乎不傷害容易題表現的情況下,幫助模型解開更多困難問題。作者並未把它描述成一個讓所有題都同步變好的萬靈丹,而是主張它改變了改善落在不同難度題目上的分配。

程式碼任務:部分通過,仍不等於解題

程式碼 RL 與數學不同。數學題往往有二元 verifier,答案不是對就是錯;程式碼題則通常有多個測試,模型可能通過其中一些、卻無法全過。作者選擇 Manufactoria 這個困難設定來觀察:標準 GRPO 的確能提升表現,但最終會停滯在「某些測試更常通過,整題卻始終沒全過」的狀態。

作者認為 Matthew Effect 能解釋此一停滯。容易測試已接近完全解開,困難測試的改善卻卡住;GRPO 將大部分訓練訊號投入那些部分解開的中等測試,反覆在「多過一些」與「少過一些」之間擺動。也就是說,訓練正在優化局部得分,卻未必在推動整個 coding problem 跨過全部測試的門檻。

NGU 的調整是:若第一輪 $k$ 個 samples 沒有達到解題所需的完整成功,便繼續抽更多 samples,而非接受例如 12 個測試只通過 7 個的部分訊號作為終點。作者報告,在 Manufactoria 上,NGU 讓 RL 能夠完整解開程式設計問題;圖表同時比較困難任務與所有測試都通過的結果。

它像 primacy bias,但不是可塑性壞掉

由於初始狀態似乎決定後續哪類題更容易被學會,作者將 Matthew Effect 與深度 RL 的 primacy bias 作類比:後者指訓練可能被早期不好的 samples 帶偏,部分原因被歸於神經網路在 RL 下的 plasticity 問題。兩者都帶有「一開始發生什麼很重要」的味道。

但作者接著直接測試:Matthew Effect 是否其實是 plasticity 不足?答案是否定的。他從一個已訓練 6,000 steps、且至少有 3,000 steps 停滯的 post-GRPO checkpoint 出發,比較兩條恢復路徑:把 reward 改為只有全測試通過才給單一獎勵的 all-tests 方法,或保留逐測試 reward、只加入 per-test NGU。

兩種方法都能恢復強勁表現,即使模型先前已在次佳資料上訓練了一段時間。作者據此判斷,可塑性不是主要問題;LLM 大致能從早期較差的 samples 中恢復。真正值得處理的,是訓練資料與採樣程序如何持續把訊號供給已經相對容易的任務。

限制與結論

NGU 的直覺是迅速濾掉容易題,重新分配算力。因此,如果一個任務集幾乎全由極端困難問題構成,NGU 很可能無法發揮:沒有足夠容易題可快速篩除,就沒有明顯算力可以轉移。此外,「採樣、等待、再採樣」的流程,完成一整組 completions 的時間可能比一次用 $k/(1-p)$ 做完採樣更長,這是吞吐量上的代價。

作者最後重申兩點。第一,LLM 的 RL 存在 Matthew Effect:模型對初始較有能力的題目進步較多。第二,Never Give Up 透過用小 $k$ 快速略過容易題、並對初始全錯的難題做受控重試,將採樣與訓練資源重新導向。文章致謝共同作者 Hamish、Nathan、Aaron,以及提供建議的 Costa、Sam、Finbarr、Dima、Adrien;Ai2 提供算力、貼紙與同事。所有圖表以 Plotly 製作,作者也感謝 Sonnet 與 Sol 兩位「robot friends」。

城武觀點

我站 NGU 這邊,但作者最重要的貢獻不只是替重試策略取名,而是揭穿平均 benchmark 曲線如何把「簡單題由部分會做到大多會」誤讀成整體能力上升。NGU 的價值在於把算力從已接近解出的題目重新分配給初始全錯的題目;我賭下一輪 RL 比較應先公布各難度桶的學習曲線,否則總分仍在替模型挑它原本就會的題目鼓掌。

城武的未解檔案——當平均分數替每題投下同一票,最難的那群題,往往連發言權都沒有。