機器之心發布
機器之心編輯部
OpenAI 的 o1 系列和 DeepSeek-R1 的成功充分證明,大規模強化學習已成為一種極為有效的方法,能夠激發大型語言模型(LLM) 的復雜推理行為并顯著提升其能力。
然而,這些推理模型的核心訓練方法在其技術報告中仍然鮮有披露。近期社區的主要工作也僅局限于數學推理領域,使得跨領域泛化這一挑戰依然未得到充分探索。此外,GRPO 訓練過程中存在多項常見問題,如性能瓶頸、樣本利用效率低下,以及在處理混合領域數據集時難以培養專業推理技能等,這些挑戰使得強化學習方法的有效擴展變得更加復雜。
針對這些挑戰,來自快手Kwaipilot團隊的研究者提出了一種創新的強化學習框架——兩階段歷史重采樣策略優化(two-Staged history-Resampling Policy Optimization,SRPO),旨在從多個維度系統性地解決上述訓練難題。他們對外發布了SRPO的技術報告,詳細披露了該訓練方法的技術細節,同時也開源了SRPO-Qwen-32B 模型。
- 論文標題:SRPO: A Cross-Domain Implementation of Large-Scale Reinforcement Learning on LLM
- 論文鏈接:https://arxiv.org/abs/2504.14286
- 模型開源地址:https://huggingface.co/Kwaipilot/SRPO-Qwen-32B
這是業界首個同時在數學和代碼兩個領域復現 DeepSeek-R1-Zero 性能的方法。通過使用與 DeepSeek 相同的基礎模型 (Qwen2.5-32B) 和純粹的強化學習訓練,SRPO 成功在 AIME24 和 LiveCodeBench 基準測試中取得了優異成績(AIME24 = 50、LiveCodeBench = 41.6),超越了 DeepSeek-R1-Zero-32B 的表現。
更值得注意的是,SRPO 僅需 R1-Zero 十分之一的訓練步數就達到了這一水平。
SRPO AIME24 和 LiveCodeBench 表現,每項為 pass@1 的 32 次平均得分
方法概覽
原始 GRPO 實現的挑戰
在最開始的探索中,快手 Kwaipilot 團隊使用過標準的 GRPO 算法(公式 1)直接進行訓練:
公式 1:GRPO 優化目標
然而,在訓練過程中,他們很快遇到了瓶頸,模型始終無法達到預期的 R1-Zero 性能水平。這些問題包括:
- 數學與代碼跨領域的優化沖突:數學問題很容易通過訓練誘發較長且細致的推理軌跡(長 CoT),而代碼數據這種傾向則弱很多。直接混合這兩種類型的數據也會產生沖突,導致模型在兩個領域中都表現欠佳。
- 相同的組獎勵導致訓練效率下降:GRPO 算法依賴于采樣組內非零的獎勵方差來計算優勢。當一個組的 rollout 產生幾乎相同的獎勵值時,計算得到的優勢會接近于零。當一個訓練 batch 的大部分數據都表現出這種現象時,有效的梯度貢獻會變得極小,大幅降低訓練效率。
- 過早的性能飽和:GRPO 訓練在 benchmark 評測中較早遇到了性能瓶頸,獎勵也遇到飽和平臺期。這個問題一定程度上源于數據集的質量不足。當訓練數據缺乏足夠的復雜性或多樣性,特別是簡單的問題太多,模型會傾向于保守地維持其在較容易任務中的性能,難以得到解決挑戰性問題所需的復雜、深入的推理能力。
階段訓練
為了解決數學和代碼之間內在的響應長度沖突問題,快手 Kwaipilot 團隊最終實現了一種兩階段訓練范式:
- Stage 1 (Eliciting Reasoning Abilities):初始訓練階段僅專注于具有挑戰性的數學數據。此階段的目標是充分激勵模型的 test-time scaling,發展出反思性停頓、回溯行為和逐步分解等多種能力。
- Stage 2 (Skill Integration):在此階段,將代碼數據引入到訓練過程中。利用在階段 1 中建立的推理基礎,進一步提升代碼能力,同時逐步強化程序性思維、遞歸和工具調用能力。
訓練策略的比較分析
不同訓練數據策略對響應長度的影響
Mixed Training:在數學和代碼混合數據上訓練的混合訓練模型,在響應長度的增長方面表現出局限性,且基準測試性能較差。雖然數學問題會引發一些推理模式,但代碼問題經常產生簡短、直接的響應,主要集中于即時代碼輸出,而很少進行初步分析或規劃。
Math-Only Training:僅使用數學數據進行訓練能夠穩定地增加回復長度,并在數學基準測試中表現出色。重要的是,這培養了強大的、能夠很好地泛化的推理能力;當面對編程任務時,模型會嘗試詳細的、逐步的推理。觀察到的行為包括在數學問題解決過程中細致的步驟檢查和重新審視。這反映了數學數據激發推理能力的特征。
Code-Only Training:盡管在代碼基準測試中的表現有所提高,但顯式推理行為的發展甚微,并且實現響應長度的顯著增加被證明是困難的。與純數學訓練相比,對代碼和數學問題的響應都明顯較短,代碼任務的解決方案通常是直接生成的,缺乏實質性的逐步推理或初步分析。
Staged Training:快手 Kwaipilot 團隊提出的兩階段訓練在數學和編程領域均表現出優異的結果。該模型在解決數學問題時始終如一地生成詳細的逐步推理模式,并在處理編程任務時生成結構化的推理模式。特別地,涌現出一些復雜的行為,例如模型自發地利用寫代碼來輔助數學推理。對這些響應模式的更詳細分析將在后文中介紹。
History Resampling
快手 Kwaipilot 團隊發現在訓練的中后期階段,batch 中近 50% 的采樣組產生相同的獎勵。這種情況通常發生在模型在較容易的問題上持續成功時,導致獎勵的方差極小,梯度更新效果不佳。
在訓練期間 batch 內近 50% 的優勢函數值為零(藍色線)
為了解決這種低效性并提高梯度信號的質量,他們引入了歷史重采樣(History Resampling)。在訓練過程中,他們記錄每個 epoch 內所有 rollout 獎勵的結果。在一個 epoch 結束時,他們按如下方式重建下一個 epoch 的數據集:
- 過濾過于簡單的樣本:排除所有 rollout 都得到正確答案的樣本,它們實際上沒有為策略改進提供任何信息信號。
- 保留信息樣本:保留結果多樣(既有正確又有不正確)或結果全部不正確的樣本。這些樣本生成正向獎勵方差,確保優勢非零及梯度信號有效。此外,對于當前 epoch 中所有展開都不正確的困難樣本,快手 Kwaipilot 團隊也將其保留在數據集中。理由是,這些最初具有挑戰性的一些問題,對于更新后的策略而言可能會變得相對容易,從而在后續的訓練中產生有效梯度。這種策略的根本思想與課程學習相一致,即逐步將模型暴露于平均而言更具挑戰性的樣本,以提高訓練效率。
Training statistics of History Resampling
與 DAPO 中提出的 Dynamic Sampling 方法相比,History Resampling 顯著提高了計算效率,響應長度增長也更加穩定。
數據
快手 Kwaipilot 團隊對社區開源的 Code&Math 數據進行了數據清洗和篩選,通過啟發式規則對原始數據進行過濾,清理題目文本中無關的 URL、格式噪聲等,確保核心字段(問題和答案真值)完整。參考 PRIME 對數學數據的清洗方法,剔除一題多問、純證明題、需要圖像或表格理解的題目。針對代碼數據,剔除依賴特定環境、需要文件 IO 或網絡交互的題目,專注于算法邏輯。
在數據入庫前,對數學和代碼題目進行正確性校驗,確保答案的正確性和可解性,剔除答案錯誤或存在歧義的題目;然后判斷題目難度,結合通過率(Pass@k)將題目細分為簡單、中等、困難三個等級。
實驗結果
本節詳細介紹使用 SRPO 方法的實驗結果。快手 Kwaipilot 團隊重點觀測了訓練過程中獎勵的變化情況以及響應長度等指標。
訓練過程
SRPO 的動態訓練
上圖展示了 SRPO 的訓練完整獎勵曲線和響應長度曲線。在獎勵增長開始趨于平穩后,整體進入了第 2 階段的訓練。在第 2 階段開始時,由于模型之前未訓練編碼能力,總體獎勵下降,后續訓練導致獎勵穩步增加。在整合編碼數據后,響應長度并沒有顯著增加,這與他們的預期一致。同時,基準測試結果表明,該模型的數學和編碼能力都有持續和穩定的提高,證明了新方法的有效性。
具體來說,History Resampling 確保了在每個訓練步驟中梯度更新始終有效,從而直接提高了信息梯度的比例。這種提升的采樣效率帶來了穩定的獎勵增長,清晰地展現了重采樣策略所實現的訓練效率提升。
思維行為
快手 Kwaipilot 團隊識別出了三種代表性的反思模式。這些模式包括 recheck、hesitation、exploration。他們對包含這種模式的響應進行統計,并記錄這幾種模式的平均響應長度。在 RL 訓練過程中,他們觀察到模型的自我反思、糾正和回溯頻率逐漸增加。這表明模型展現了「自我驗證」能力。他們認為模型在RL中涌現出類似人類認知過程的「反思」,是模型在策略優化過程中的適應性行為。
在訓練過程中不同的 aha 模式出現的頻次變化
如上圖所示,在模型訓練的早期階段,模型幾乎沒有主動檢查和反思先前推理步驟。然而,隨著訓練的進行,模型表現出明顯的反思和回溯行為,形成如逐步推理、數值替換、逐一驗證和自我優化等響應模式。
自我校正的例子
數值替換(綠色)和逐個驗證(紅色)
自我優化
同時,他們還發現了有趣的現象:模型在解決數學問題時,學會了自發使用程序代碼進行驗證。它首先通過數學推理給出解題過程,隨后主動編寫程序代碼驗證方案的正確性。這類案例體現了模型會借助程序性思維進行自我糾錯和多次嘗試。這一現象也進一步表明,在訓練后期,模型已經掌握了廣泛思考和綜合運用多種代碼思維進行問題求解的能力。
結論與展望
本文介紹了 SRPO,這是首個在數學與代碼領域成功復現 DeepSeek-R1-Zero-Qwen-32B 的工作。快手 Kwaipilot 團隊提出了一種創新的兩階段訓練范式,利用訓練過程中的歷史重采樣策略,同時設計了專為數學與代碼聯合強化學習(RL)訓練定制的數據整理流程(pipeline)。這些方法為社區構建更強大的推理模型提供了重要參考。未來,團隊將繼續探索更大規模的數據與模型、更加高效的強化學習算法,以及其在更廣泛推理場景中的應用潛力。
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.