深度拆解:DeepSeek-R1 是怎么訓(xùn)練的
DeepSeek-R1的開源引發(fā)了AI領(lǐng)域的廣泛關(guān)注,其在推理、數(shù)學(xué)、代碼等任務(wù)上的卓越表現(xiàn)以及極低的成本,使其成為與OpenAI競爭的有力對(duì)手。本文將深度拆解DeepSeek-R1的訓(xùn)練過程,從性能評(píng)估、訓(xùn)練方法、模型蒸餾到未來展望,全方位解析這一模型是如何煉成的。
日前,DeepSeek 又開源了 DeepSeek-R1 模型(后簡稱 R1),再次炸翻了中美互聯(lián)網(wǎng):
- R1 遵循 MIT License,允許用戶通過蒸餾技術(shù)借助 R1 訓(xùn)練其他模型。
- R1 上線 API,對(duì)用戶開放思維鏈輸出
- R1 在數(shù)學(xué)、代碼、自然語言推理等任務(wù)上,性能比肩 OpenAI o1 正式版,小模型則超越 OpenAI o1-mini
- 語言能力遙遙遙遙遙遙遙遙領(lǐng)先
- 最離譜的是,價(jià)格只有 OpenAI 的幾十分之一
下面,讓我們以更加系統(tǒng)的方式,來看看這次的 R1,是這么煉成的?!?/p>
本文將從性能、方法、蒸餾、展望幾個(gè)緯度來拆解 R1,所用到的圖表、數(shù)據(jù)源于其論文:《R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning》?! ?/p>
一、結(jié)論前置
先插入一句:除了 R1 之外,DeepSeek 還發(fā)布了 R1-Zero
- R1-Zero 基于 DeepSeek-V3-Base,純粹通過 RL (強(qiáng)化學(xué)習(xí)) 訓(xùn)練,無 STF (監(jiān)督微調(diào))
- R1 則基于 R1-Zero,先利用少量人工標(biāo)注的高質(zhì)量數(shù)據(jù)進(jìn)行冷啟動(dòng)微調(diào),然后再進(jìn)行 RL
純強(qiáng)化學(xué)習(xí)的有效性:R1-Zero 的訓(xùn)練,證明了僅通過 RL,無 SFT ,大模型也可以有強(qiáng)大的推理能力。在 AIME 2024 上,R1-Zero 的 pass@1 指標(biāo)從 15.6% 提升至 71.0%,經(jīng)過投票策略 (majority voting) 后更是提升到了 86.7%,與 OpenAI-o1-0912 相當(dāng) (表 2,第 7 頁)。
“頓悟”現(xiàn)象的出現(xiàn):訓(xùn)練過程中,R1-Zero 出現(xiàn)了“頓悟”現(xiàn)象,能夠自發(fā)地學(xué)習(xí)到新的、更有效的推理策略 。
蒸餾比小型模型直接 RL 更有效:將 R1 的推理能力蒸餾到小型模型 (如 Qwen 系列和 Llama 系列),比直接在這些小型模型上應(yīng)用 RL 效果更好 (表 5,第 14 頁)。例如,R1-Distill-Qwen-7B 在 AIME 2024 上得分 55.5%,遠(yuǎn)超 QwQ-32B-Preview;R1-Distill-Qwen-32B 更是取得了 72.6% 的驚人成績 。這說明大型模型在 RL 過程中學(xué)到的推理模式具有通用性和可遷移性。
冷啟動(dòng)數(shù)據(jù)的價(jià)值:R1 相較于 R1-Zero,僅通過引入少量高質(zhì)量的冷啟動(dòng)數(shù)據(jù),便提升了 RL 的效率和最終性能。
二、性能評(píng)估
論文在多個(gè)維度對(duì) R1 的性能進(jìn)行了評(píng)估,涵蓋了知識(shí)密集型任務(wù)、推理密集型任務(wù)、長文本理解任務(wù)和開放式問答任務(wù),并與多個(gè)業(yè)界領(lǐng)先的基線模型進(jìn)行了對(duì)比。
在評(píng)估中,對(duì)比了包括 DeepSeek-V3、Claude-3.5-Sonnet-1022、GPT-4o-0513、OpenAI-o1-mini 以及 OpenAI-o1-1217 在內(nèi)的模型:
上表來自于論文中的表 4,閱讀課得出以下結(jié)論:
- R1 在推理任務(wù)上表現(xiàn)出色,特別是在 AIME 2024 (美國數(shù)學(xué)邀請賽)、MATH-500 (數(shù)學(xué)競賽題) 和 Codeforces (編程競賽)等任務(wù)上,取得了與 OpenAI-o1-1217 相媲美甚至超越的成績。
- 在 MMLU (90.8%)、MMLU-Pro (84.0%) 和 GPQA Diamond (71.5%) 等知識(shí)密集型任務(wù)基準(zhǔn)測試中,性能顯著超越了 DeepSeek-V3 模型。
- 在針對(duì)長上下文理解能力的 FRAMES 數(shù)據(jù)集上,R1 的準(zhǔn)確率達(dá)到了 82.5%,優(yōu)于 DeepSeek-V3 模型。
- 在開放式問答任務(wù) AlpacaEval 2.0 和 Arena-Hard 基準(zhǔn)測試中,R1 分別取得了 87.6%的 LC-winrate 和 92.3%的 GPT-4-1106 評(píng)分,展現(xiàn)了其在開放式問答領(lǐng)域的強(qiáng)大能力。
三、訓(xùn)練流程
1. R1-Zero
架構(gòu)思路:純粹的強(qiáng)化學(xué)習(xí)訓(xùn)練模式。 沒有任何 SFT 數(shù)據(jù)的情況下,通過純粹的強(qiáng)化學(xué)習(xí)。
算法應(yīng)用:直接在 DeepSeek-V3-Base 模型上應(yīng)用 GRPO 算法進(jìn)行強(qiáng)化學(xué)習(xí)訓(xùn)練。
獎(jiǎng)勵(lì)機(jī)制:使用基于規(guī)則的獎(jiǎng)勵(lì)機(jī)制,包括準(zhǔn)確性獎(jiǎng)勵(lì)和格式獎(jiǎng)勵(lì),來指導(dǎo)模型的學(xué)習(xí)。
訓(xùn)練模板:采用了簡潔的訓(xùn)練模板,要求模型首先輸出推理過程 (置于標(biāo)簽內(nèi)),然后給出最終答案 (置于標(biāo)簽內(nèi))。
“頓悟”時(shí)刻:R1-Zero 的訓(xùn)練過程中還出現(xiàn)了“頓悟”現(xiàn)象。例如,表 3 (第 9 頁) 展示了一個(gè) R1-Zero 在解決一道數(shù)學(xué)題時(shí)的中間版本輸出。在這個(gè)例子中,模型在推理過程中突然意識(shí)到可以“重新評(píng)估”之前的步驟,并嘗試用一種新的方法來解題。
性能表現(xiàn):展示了 R1-Zero 在 AIME 2024 基準(zhǔn)測試上的性能變化曲線。隨著 RL 訓(xùn)練的進(jìn)行,模型的 pass@1 指標(biāo)從最初的 15.6% 穩(wěn)步提升至 71.0%,達(dá)到與 OpenAI-o1-0912 相當(dāng)?shù)乃健#ǖ?7 頁,圖 2)?!?/p>
在 AIME 2024、MATH-500 等數(shù)學(xué)推理任務(wù)上,以及 GPQA Diamond 等知識(shí)問答任務(wù)上,R1-Zero 均取得了與 OpenAI-o1-0912 相媲美的成績,部分任務(wù)甚至有較大的領(lǐng)先。(第 7 頁,表 2)
2. R1
架構(gòu)思路:在 DeepSeek-V3-Base 模型的基礎(chǔ)上,先利用少量高質(zhì)量的 “冷啟動(dòng)” (Cold Start) 數(shù)據(jù)進(jìn)行微調(diào),然后再進(jìn)行強(qiáng)化學(xué)習(xí)。 這種方法結(jié)合了監(jiān)督學(xué)習(xí)和強(qiáng)化學(xué)習(xí)的優(yōu)勢,既可以利用人類的先驗(yàn)知識(shí)引導(dǎo)模型,又可以發(fā)揮強(qiáng)化學(xué)習(xí)的自學(xué)習(xí)和自進(jìn)化能力。
冷啟動(dòng)階段:使用數(shù)千個(gè)高質(zhì)量的人工標(biāo)注樣本對(duì) DeepSeek-V3-Base 模型進(jìn)行微調(diào),作為強(qiáng)化學(xué)習(xí)訓(xùn)練的初始模型。為了構(gòu)建高質(zhì)量的冷啟動(dòng)數(shù)據(jù),DeepSeek 團(tuán)隊(duì)嘗試了多種方法,包括:
- 使用帶有長 CoT 的 few-shot prompting。
- 直接提示模型生成帶有反思和驗(yàn)證的詳細(xì)解答。
- 收集 R1-Zero 的輸出,并進(jìn)行人工標(biāo)注和格式化。
面向推理的強(qiáng)化學(xué)習(xí):在冷啟動(dòng)階段之后,R1 采用了與 R1-Zero 類似的強(qiáng)化學(xué)習(xí)訓(xùn)練流程,但針對(duì)推理任務(wù)進(jìn)行了特別優(yōu)化。為了解決訓(xùn)練過程中可能出現(xiàn)的語言混雜問題,R1 引入了一個(gè)語言一致性獎(jiǎng)勵(lì) (Language Consistency Reward),該獎(jiǎng)勵(lì)根據(jù) CoT 中目標(biāo)語言單詞的比例來計(jì)算。
拒絕采樣與監(jiān)督微調(diào):當(dāng)面向推理的強(qiáng)化學(xué)習(xí)收斂后,R1 利用訓(xùn)練好的 RL 模型進(jìn)行拒絕采樣 (Rejection Sampling),生成新的 SFT 數(shù)據(jù)。與之前的冷啟動(dòng)數(shù)據(jù)不同,這一階段的 SFT 數(shù)據(jù)不僅包含推理任務(wù),還涵蓋了其他領(lǐng)域的數(shù)據(jù),例如寫作、角色扮演、問答等,以提升模型的通用能力。
面向全場景的強(qiáng)化學(xué)習(xí):在收集了新的 SFT 數(shù)據(jù)后,R1 會(huì)進(jìn)行第二階段的強(qiáng)化學(xué)習(xí)訓(xùn)練,這一次,訓(xùn)練的目標(biāo)不再局限于推理任務(wù),而是涵蓋了所有類型的任務(wù)。此外, R1 采用了不同的獎(jiǎng)勵(lì)信號(hào)和提示分布, 針對(duì)不同的任務(wù)類型進(jìn)行了優(yōu)化。例如, 對(duì)于數(shù)學(xué)、代碼和邏輯推理等任務(wù), 采用基于規(guī)則的獎(jiǎng)勵(lì);對(duì)于開放式問答、創(chuàng)意寫作等任務(wù), 則采用基于模型的獎(jiǎng)勵(lì)。
四、核心方法
1. GRPO
R1 采用的核心算法是 Group Relative Policy Optimization (GRPO) 算法,并輔以精心設(shè)計(jì)的獎(jiǎng)勵(lì)機(jī)制來指導(dǎo)模型的學(xué)習(xí)。與傳統(tǒng)的需要構(gòu)建 Critic 模型來估計(jì)狀態(tài)值函數(shù)的算法不同,GRPO 通過比較一組樣本的獎(jiǎng)勵(lì)來估計(jì)優(yōu)勢函數(shù) (Advantage),降低了訓(xùn)練過程的復(fù)雜度和所需的計(jì)算資源。GRPO 算法的目標(biāo)函數(shù)和優(yōu)勢函數(shù)的計(jì)算公式在論文的 2.2.1 章節(jié) (第 5 頁) 中有詳細(xì)的數(shù)學(xué)描述?!?/p>
2. 獎(jiǎng)勵(lì)系統(tǒng)
R1-Zero 的獎(jiǎng)勵(lì)系統(tǒng),主要以下兩類:
- 準(zhǔn)確性獎(jiǎng)勵(lì) (Accuracy Rewards): 評(píng)估模型生成的響應(yīng)是否正確。對(duì)于具有確定性答案的任務(wù) (例如數(shù)學(xué)題),模型需要將最終答案放在特定格式 (例如,放在一個(gè)方框內(nèi)) 中,以便進(jìn)行自動(dòng)驗(yàn)證。對(duì)于代碼生成任務(wù) (例如 LeetCode 題目),則利用編譯器對(duì)生成的代碼進(jìn)行測試。
- 格式獎(jiǎng)勵(lì) (Format Rewards): 強(qiáng)制模型將推理過程放在 think和 think標(biāo)簽之間,以便于分析和理解模型的推理過程。
3. 訓(xùn)練模板
R1-Zero 采用了一種簡潔的訓(xùn)練模板 (表 1,第 6 頁),要求模型首先輸出推理過程,然后給出最終答案。模板如下:
其中,prompt 會(huì)在訓(xùn)練過程中,被替換為具體的推理問題?!?/p>
五、模型蒸餾
DeepSeek 團(tuán)隊(duì)進(jìn)一步探索了將 R1 的推理能力蒸餾到更小的模型中的可能性。他們使用 R1 生成的 800K 數(shù)據(jù),對(duì) Qwen 和 Llama 系列的多個(gè)小模型進(jìn)行了微調(diào)。表 5 (第 14 頁) 展示了模型蒸餾的結(jié)果?!?/p>
可以看出:
經(jīng)過 R1 蒸餾的小模型,在推理能力上得到了顯著提升,甚至超越了在這些小模型上直接進(jìn)行強(qiáng)化學(xué)習(xí)的效果。 例如,R1-Distill-Qwen-7B 在 AIME 2024 上的得分達(dá)到了 55.5%,遠(yuǎn)超 QwQ-32B-Preview。
R1-Distill-Qwen-32B 在 AIME 2024 上得分 72.6%,在 MATH-500 上得分 94.3%,在 LiveCodeBench 上得分 57.2%,這些結(jié)果顯著優(yōu)于之前的開源模型,并與 o1-mini 相當(dāng)。
表 6 (第 14 頁) 對(duì)比了 R1-Distill-Qwen-32B 和 R1-Zero-Qwen-32B 的性能。 結(jié)果表明,直接在 Qwen-32B-Base 上進(jìn)行強(qiáng)化學(xué)習(xí),只能達(dá)到與 QwQ-32B-Preview 相當(dāng)?shù)乃剑?jīng)過 R1 蒸餾的 Qwen-32B 模型則遠(yuǎn)超兩者。這說明,R1 學(xué)到的推理模式具有很強(qiáng)的通用性和可遷移性,可以通過蒸餾的方式傳遞給其他模型。
六、還有更多
在論文的最后,DeepSeek 團(tuán)隊(duì)也探討了 R1 模型的局限性,并提出了未來的研究方向:
局限性:
- 通用能力:R1 的通用能力 (例如函數(shù)調(diào)用、多輪對(duì)話、復(fù)雜角色扮演和 json 輸出) 仍落后于 DeepSeek-V3。
- 語言混雜:R1 在處理非中英文問題時(shí),可能會(huì)出現(xiàn)語言混雜現(xiàn)象。
- 提示詞工程:R1 對(duì)提示詞較為敏感,使用 few-shot 提示可能會(huì)降低其性能。
- 軟件工程任務(wù):由于 RL 訓(xùn)練的評(píng)估周期較長,R1 在軟件工程任務(wù)上的性能提升有限。
未來工作:
- 探索如何利用長 CoT 提升 R1 在通用能力上的表現(xiàn)。
- 解決 R1 的語言混雜問題。
- 優(yōu)化 R1 的提示詞策略。
- 將 RL 應(yīng)用于軟件工程任務(wù),提升 R1 在該領(lǐng)域的性能。
- 繼續(xù)探索更有效的強(qiáng)化學(xué)習(xí)算法和獎(jiǎng)勵(lì)機(jī)制,進(jìn)一步提升模型的推理能力。
- 研究如何將 R1 的推理能力更好地應(yīng)用于實(shí)際場景,例如科學(xué)研究、代碼生成、藥物研發(fā)等。額外的
DeepSeek 團(tuán)隊(duì)在研究過程中也嘗試了一些其他方法,但并未取得理想的效果,例如:
- Process Reward Model (PRM): PRM 的構(gòu)建和訓(xùn)練都存在較大挑戰(zhàn),且容易導(dǎo)致獎(jiǎng)勵(lì)“hack”。
- Monte Carlo Tree Search (MCTS): MCTS 在 token 生成任務(wù)中面臨搜索空間過大的問題,且 value model 的訓(xùn)練較為困難。
本文由人人都是產(chǎn)品經(jīng)理作者【賽博禪心】,微信公眾號(hào):【賽博禪心】,原創(chuàng)/授權(quán) 發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載。
題圖來自Unsplash,基于 CC0 協(xié)議。
- 目前還沒評(píng)論,等你發(fā)揮!