機器之心發(fā)布

機器之心編輯部

OpenAI 的 o1 系列和 DeepSeek-R1 的成功充分證明,大規(guī)模強化學(xué)習(xí)已成為一種極為有效的方法,能夠激發(fā)大型語言模型(LLM) 的復(fù)雜推理行為并顯著提升其能力。

然而,這些推理模型的核心訓(xùn)練方法在其技術(shù)報告中仍然鮮有披露。近期社區(qū)的主要工作也僅局限于數(shù)學(xué)推理領(lǐng)域,使得跨領(lǐng)域泛化這一挑戰(zhàn)依然未得到充分探索。此外,GRPO 訓(xùn)練過程中存在多項常見問題,如性能瓶頸、樣本利用效率低下,以及在處理混合領(lǐng)域數(shù)據(jù)集時難以培養(yǎng)專業(yè)推理技能等,這些挑戰(zhàn)使得強化學(xué)習(xí)方法的有效擴展變得更加復(fù)雜。

針對這些挑戰(zhàn),來自快手Kwaipilot團隊的研究者提出了一種創(chuàng)新的強化學(xué)習(xí)框架——兩階段歷史重采樣策略優(yōu)化(two-Staged history-Resampling Policy Optimization,SRPO),旨在從多個維度系統(tǒng)性地解決上述訓(xùn)練難題。他們對外發(fā)布了SRPO的技術(shù)報告,詳細(xì)披露了該訓(xùn)練方法的技術(shù)細(xì)節(jié),同時也開源了SRPO-Qwen-32B 模型。

打開網(wǎng)易新聞 查看精彩圖片

  • 論文標(biāo)題: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

這是業(yè)界首個同時在數(shù)學(xué)和代碼兩個領(lǐng)域復(fù)現(xiàn) DeepSeek-R1-Zero 性能的方法。通過使用與 DeepSeek 相同的基礎(chǔ)模型 (Qwen2.5-32B) 和純粹的強化學(xué)習(xí)訓(xùn)練,SRPO 成功在 AIME24 和 LiveCodeBench 基準(zhǔn)測試中取得了優(yōu)異成績(AIME24 = 50、LiveCodeBench = 41.6),超越了 DeepSeek-R1-Zero-32B 的表現(xiàn)。

更值得注意的是,SRPO 僅需 R1-Zero 十分之一的訓(xùn)練步數(shù)就達到了這一水平。

打開網(wǎng)易新聞 查看精彩圖片

SRPO AIME24 和 LiveCodeBench 表現(xiàn),每項為 pass@1 的 32 次平均得分

方法概覽

原始 GRPO 實現(xiàn)的挑戰(zhàn)

在最開始的探索中,快手 Kwaipilot 團隊使用過標(biāo)準(zhǔn)的 GRPO 算法(公式 1)直接進行訓(xùn)練:

打開網(wǎng)易新聞 查看精彩圖片

公式 1:GRPO 優(yōu)化目標(biāo)

然而,在訓(xùn)練過程中,他們很快遇到了瓶頸,模型始終無法達到預(yù)期的 R1-Zero 性能水平。這些問題包括:

  1. 數(shù)學(xué)與代碼跨領(lǐng)域的優(yōu)化沖突:數(shù)學(xué)問題很容易通過訓(xùn)練誘發(fā)較長且細(xì)致的推理軌跡(長 CoT),而代碼數(shù)據(jù)這種傾向則弱很多。直接混合這兩種類型的數(shù)據(jù)也會產(chǎn)生沖突,導(dǎo)致模型在兩個領(lǐng)域中都表現(xiàn)欠佳。
  2. 相同的組獎勵導(dǎo)致訓(xùn)練效率下降:GRPO 算法依賴于采樣組內(nèi)非零的獎勵方差來計算優(yōu)勢。當(dāng)一個組的 rollout 產(chǎn)生幾乎相同的獎勵值時,計算得到的優(yōu)勢會接近于零。當(dāng)一個訓(xùn)練 batch 的大部分?jǐn)?shù)據(jù)都表現(xiàn)出這種現(xiàn)象時,有效的梯度貢獻會變得極小,大幅降低訓(xùn)練效率。
  3. 過早的性能飽和:GRPO 訓(xùn)練在 benchmark 評測中較早遇到了性能瓶頸,獎勵也遇到飽和平臺期。這個問題一定程度上源于數(shù)據(jù)集的質(zhì)量不足。當(dāng)訓(xùn)練數(shù)據(jù)缺乏足夠的復(fù)雜性或多樣性,特別是簡單的問題太多,模型會傾向于保守地維持其在較容易任務(wù)中的性能,難以得到解決挑戰(zhàn)性問題所需的復(fù)雜、深入的推理能力。

階段訓(xùn)練

為了解決數(shù)學(xué)和代碼之間內(nèi)在的響應(yīng)長度沖突問題,快手 Kwaipilot 團隊最終實現(xiàn)了一種兩階段訓(xùn)練范式:

  • Stage 1 (Eliciting Reasoning Abilities):初始訓(xùn)練階段僅專注于具有挑戰(zhàn)性的數(shù)學(xué)數(shù)據(jù)。此階段的目標(biāo)是充分激勵模型的 test-time scaling,發(fā)展出反思性停頓、回溯行為和逐步分解等多種能力。
  • Stage 2 (Skill Integration):在此階段,將代碼數(shù)據(jù)引入到訓(xùn)練過程中。利用在階段 1 中建立的推理基礎(chǔ),進一步提升代碼能力,同時逐步強化程序性思維、遞歸和工具調(diào)用能力。

訓(xùn)練策略的比較分析

打開網(wǎng)易新聞 查看精彩圖片

不同訓(xùn)練數(shù)據(jù)策略對響應(yīng)長度的影響

Mixed Training:在數(shù)學(xué)和代碼混合數(shù)據(jù)上訓(xùn)練的混合訓(xùn)練模型,在響應(yīng)長度的增長方面表現(xiàn)出局限性,且基準(zhǔn)測試性能較差。雖然數(shù)學(xué)問題會引發(fā)一些推理模式,但代碼問題經(jīng)常產(chǎn)生簡短、直接的響應(yīng),主要集中于即時代碼輸出,而很少進行初步分析或規(guī)劃。

打開網(wǎng)易新聞 查看精彩圖片

Math-Only Training:僅使用數(shù)學(xué)數(shù)據(jù)進行訓(xùn)練能夠穩(wěn)定地增加回復(fù)長度,并在數(shù)學(xué)基準(zhǔn)測試中表現(xiàn)出色。重要的是,這培養(yǎng)了強大的、能夠很好地泛化的推理能力;當(dāng)面對編程任務(wù)時,模型會嘗試詳細(xì)的、逐步的推理。觀察到的行為包括在數(shù)學(xué)問題解決過程中細(xì)致的步驟檢查和重新審視。這反映了數(shù)學(xué)數(shù)據(jù)激發(fā)推理能力的特征。

打開網(wǎng)易新聞 查看精彩圖片

Code-Only Training:盡管在代碼基準(zhǔn)測試中的表現(xiàn)有所提高,但顯式推理行為的發(fā)展甚微,并且實現(xiàn)響應(yīng)長度的顯著增加被證明是困難的。與純數(shù)學(xué)訓(xùn)練相比,對代碼和數(shù)學(xué)問題的響應(yīng)都明顯較短,代碼任務(wù)的解決方案通常是直接生成的,缺乏實質(zhì)性的逐步推理或初步分析。

打開網(wǎng)易新聞 查看精彩圖片

Staged Training:快手 Kwaipilot 團隊提出的兩階段訓(xùn)練在數(shù)學(xué)和編程領(lǐng)域均表現(xiàn)出優(yōu)異的結(jié)果。該模型在解決數(shù)學(xué)問題時始終如一地生成詳細(xì)的逐步推理模式,并在處理編程任務(wù)時生成結(jié)構(gòu)化的推理模式。特別地,涌現(xiàn)出一些復(fù)雜的行為,例如模型自發(fā)地利用寫代碼來輔助數(shù)學(xué)推理。對這些響應(yīng)模式的更詳細(xì)分析將在后文中介紹。

打開網(wǎng)易新聞 查看精彩圖片

History Resampling

快手 Kwaipilot 團隊發(fā)現(xiàn)在訓(xùn)練的中后期階段,batch 中近 50% 的采樣組產(chǎn)生相同的獎勵。這種情況通常發(fā)生在模型在較容易的問題上持續(xù)成功時,導(dǎo)致獎勵的方差極小,梯度更新效果不佳。

打開網(wǎng)易新聞 查看精彩圖片

在訓(xùn)練期間 batch 內(nèi)近 50% 的優(yōu)勢函數(shù)值為零(藍色線)

為了解決這種低效性并提高梯度信號的質(zhì)量,他們引入了歷史重采樣(History Resampling)。在訓(xùn)練過程中,他們記錄每個 epoch 內(nèi)所有 rollout 獎勵的結(jié)果。在一個 epoch 結(jié)束時,他們按如下方式重建下一個 epoch 的數(shù)據(jù)集:

  • 過濾過于簡單的樣本:排除所有 rollout 都得到正確答案的樣本,它們實際上沒有為策略改進提供任何信息信號。
  • 保留信息樣本:保留結(jié)果多樣(既有正確又有不正確)或結(jié)果全部不正確的樣本。這些樣本生成正向獎勵方差,確保優(yōu)勢非零及梯度信號有效。此外,對于當(dāng)前 epoch 中所有展開都不正確的困難樣本,快手 Kwaipilot 團隊也將其保留在數(shù)據(jù)集中。理由是,這些最初具有挑戰(zhàn)性的一些問題,對于更新后的策略而言可能會變得相對容易,從而在后續(xù)的訓(xùn)練中產(chǎn)生有效梯度。這種策略的根本思想與課程學(xué)習(xí)相一致,即逐步將模型暴露于平均而言更具挑戰(zhàn)性的樣本,以提高訓(xùn)練效率。

打開網(wǎng)易新聞 查看精彩圖片

Training statistics of History Resampling

與 DAPO 中提出的 Dynamic Sampling 方法相比,History Resampling 顯著提高了計算效率,響應(yīng)長度增長也更加穩(wěn)定。

數(shù)據(jù)

快手 Kwaipilot 團隊對社區(qū)開源的 Code&Math 數(shù)據(jù)進行了數(shù)據(jù)清洗和篩選,通過啟發(fā)式規(guī)則對原始數(shù)據(jù)進行過濾,清理題目文本中無關(guān)的 URL、格式噪聲等,確保核心字段(問題和答案真值)完整。參考 PRIME 對數(shù)學(xué)數(shù)據(jù)的清洗方法,剔除一題多問、純證明題、需要圖像或表格理解的題目。針對代碼數(shù)據(jù),剔除依賴特定環(huán)境、需要文件 IO 或網(wǎng)絡(luò)交互的題目,專注于算法邏輯。

在數(shù)據(jù)入庫前,對數(shù)學(xué)和代碼題目進行正確性校驗,確保答案的正確性和可解性,剔除答案錯誤或存在歧義的題目;然后判斷題目難度,結(jié)合通過率(Pass@k)將題目細(xì)分為簡單、中等、困難三個等級。

實驗結(jié)果

本節(jié)詳細(xì)介紹使用 SRPO 方法的實驗結(jié)果??焓?Kwaipilot 團隊重點觀測了訓(xùn)練過程中獎勵的變化情況以及響應(yīng)長度等指標(biāo)。

訓(xùn)練過程

打開網(wǎng)易新聞 查看精彩圖片

SRPO 的動態(tài)訓(xùn)練

上圖展示了 SRPO 的訓(xùn)練完整獎勵曲線和響應(yīng)長度曲線。在獎勵增長開始趨于平穩(wěn)后,整體進入了第 2 階段的訓(xùn)練。在第 2 階段開始時,由于模型之前未訓(xùn)練編碼能力,總體獎勵下降,后續(xù)訓(xùn)練導(dǎo)致獎勵穩(wěn)步增加。在整合編碼數(shù)據(jù)后,響應(yīng)長度并沒有顯著增加,這與他們的預(yù)期一致。同時,基準(zhǔn)測試結(jié)果表明,該模型的數(shù)學(xué)和編碼能力都有持續(xù)和穩(wěn)定的提高,證明了新方法的有效性。

具體來說,History Resampling 確保了在每個訓(xùn)練步驟中梯度更新始終有效,從而直接提高了信息梯度的比例。這種提升的采樣效率帶來了穩(wěn)定的獎勵增長,清晰地展現(xiàn)了重采樣策略所實現(xiàn)的訓(xùn)練效率提升。

思維行為

快手 Kwaipilot 團隊識別出了三種代表性的反思模式。這些模式包括 recheck、hesitation、exploration。他們對包含這種模式的響應(yīng)進行統(tǒng)計,并記錄這幾種模式的平均響應(yīng)長度。在 RL 訓(xùn)練過程中,他們觀察到模型的自我反思、糾正和回溯頻率逐漸增加。這表明模型展現(xiàn)了「自我驗證」能力。他們認(rèn)為模型在RL中涌現(xiàn)出類似人類認(rèn)知過程的「反思」,是模型在策略優(yōu)化過程中的適應(yīng)性行為。

打開網(wǎng)易新聞 查看精彩圖片

在訓(xùn)練過程中不同的 aha 模式出現(xiàn)的頻次變化

如上圖所示,在模型訓(xùn)練的早期階段,模型幾乎沒有主動檢查和反思先前推理步驟。然而,隨著訓(xùn)練的進行,模型表現(xiàn)出明顯的反思和回溯行為,形成如逐步推理、數(shù)值替換、逐一驗證和自我優(yōu)化等響應(yīng)模式。

打開網(wǎng)易新聞 查看精彩圖片

自我校正的例子

打開網(wǎng)易新聞 查看精彩圖片

數(shù)值替換(綠色)和逐個驗證(紅色)

打開網(wǎng)易新聞 查看精彩圖片

自我優(yōu)化

同時,他們還發(fā)現(xiàn)了有趣的現(xiàn)象:模型在解決數(shù)學(xué)問題時,學(xué)會了自發(fā)使用程序代碼進行驗證。它首先通過數(shù)學(xué)推理給出解題過程,隨后主動編寫程序代碼驗證方案的正確性。這類案例體現(xiàn)了模型會借助程序性思維進行自我糾錯和多次嘗試。這一現(xiàn)象也進一步表明,在訓(xùn)練后期,模型已經(jīng)掌握了廣泛思考和綜合運用多種代碼思維進行問題求解的能力。

打開網(wǎng)易新聞 查看精彩圖片

結(jié)論與展望

本文介紹了 SRPO,這是首個在數(shù)學(xué)與代碼領(lǐng)域成功復(fù)現(xiàn) DeepSeek-R1-Zero-Qwen-32B 的工作。快手 Kwaipilot 團隊提出了一種創(chuàng)新的兩階段訓(xùn)練范式,利用訓(xùn)練過程中的歷史重采樣策略,同時設(shè)計了專為數(shù)學(xué)與代碼聯(lián)合強化學(xué)習(xí)(RL)訓(xùn)練定制的數(shù)據(jù)整理流程(pipeline)。這些方法為社區(qū)構(gòu)建更強大的推理模型提供了重要參考。未來,團隊將繼續(xù)探索更大規(guī)模的數(shù)據(jù)與模型、更加高效的強化學(xué)習(xí)算法,以及其在更廣泛推理場景中的應(yīng)用潛力。