DeepSeek-R1技術大揭秘:論文核心原理拆解與模型性能突破關鍵
今天分享DeepSeek R1 ,Title: DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning:通過強化學習激勵LLM的推理能力。
這篇文章介紹了DeepSeek的第一代推理模型 DeepSeek-R1-Zero 和 DeepSeek-R1。DeepSeek-R1-Zero 模型通過大規模強化學習 (RL) 訓練,沒有監督微調 (SFT) 作為初步步驟,展示了RL的潛力及其帶來的卓越的推理能力。 通過強化學習,DeepSeek-R1-Zero 自然而然地涌現出許多強大而有趣的推理行為。為了進一步優化R1-Zero存在的一些問題(語言混亂,綜合能力提升),他們推出了 DeepSeek-R1,它在強化學習之前結合了多階段訓練和冷啟動數據微調。 DeepSeek-R1 在推理任務上取得了與 OpenAI-01-1217 相媲美的性能。為了支持研究社區,他們開源了 DeepSeek-R1-Zero、DeepSeek-R1 以及六個從 DeepSeek-R1 提煉出來的密集模型(1.5B、7B、8B、14B、32B、70B),這些模型基于 Qwen 和 Llama。
該方法特點總結如下:
1)直接將強化學習應用于基礎模型,無需依賴監督微調(SFT)作為初步步驟。
2)引入 DeepSeek-R1 開發流程,該流程結合了兩個強化學習階段和兩個監督微調階段,為模型的推理和非推理能力奠定基礎。
3)通過蒸餾技術將大型模型的推理模式轉移到小型模型中,提高了小型模型在推理任務上的性能。
一、概述
? Title: DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning
? Authors: DeepSeek-AI
? Github:?? https://github.com/deepseek-ai/DeepSeek-R1??
1.Motivation
? 當前的大型語言模型(LLMs)在推理任務上取得了顯著進展,但仍然面臨挑戰。
? 純粹的強化學習(RL)在提升LLMs推理能力方面的潛力尚未充分探索,尤其是在不依賴監督數據的情況下。
? 通過RL訓練的模型,如DeepSeek-R1-Zero,在可讀性和語言混合方面(例如中英文混著說)存在問題,需要進一步改進以提升用戶友好性。
2.Methods
省流版總結:
DeepSeek-R1-Zero: 使用DeepSeek-V3-Base作為基礎模型,采用GRPO(Group Relative Policy Optimization)作為強化學習框架,在沒有監督數據的情況下提升模型在推理方面的性能。DeepSeek-R1:
? 冷啟動(Cold Start): 收集少量高質量的長CoT(Chain-of-Thought)數據,對DeepSeek-V3-Base模型進行微調,作為強化學習的初始actor。
? 面向推理的強化學習(Reasoning-oriented Reinforcement Learning): 應用與DeepSeek-R1-Zero相同的強化學習訓練過程,但側重于增強模型在編碼、數學、科學和邏輯推理等方面的推理能力。引入語言一致性獎勵,以減輕CoT中出現的語言混合問題。
? 拒絕抽樣和監督微調(Rejection Sampling and Supervised Fine-Tuning): 利用強化學習收斂后的checkpoint收集SFT(Supervised Fine-Tuning)數據,用于后續訓練。
? 所有場景的強化學習(Reinforcement Learning for all Scenarios): 實施二級強化學習階段,旨在提高模型的幫助性和無害性,同時優化其推理能力。
? 知識蒸餾: 使用DeepSeek-R1精心策劃的800k個樣本,直接微調開源模型Qwen和Llama。
詳細方法和步驟:
DeepSeek-R1-Zero:基礎模型的強化學習
? 強化學習算法: 采用 Group Relative Policy Optimization (GRPO) 算法,該算法無需 critic 模型,通過組內分數估計基線,降低了訓練成本。
? Reward獎勵建模: 使用基于規則的獎勵系統,包括:
a.準確性獎勵: 評估答案是否正確,例如數學題答案最終結果的正確性,代碼題編譯器的反饋。
b.格式獎勵: 鼓勵模型將思考過程置于 ??<think>?
?? 和 ??</think>?
? 標簽之間。
? 訓練模板: 設計了包含 ??<think>?
?? 和 ??</think>?
? 標簽的模板,引導模型先輸出思考過程,再輸出最終答案。
? 自進化過程: DeepSeek-R1-Zero 在訓練過程中展現出自進化特性,能夠自主學習更復雜的推理策略,例如反思和探索多種問題解決路徑。
DeepSeek-R1:結合冷啟動的強化學習
? 冷啟動 (Cold Start): 為了解決 DeepSeek-R1-Zero 的可讀性問題,DeepSeek-R1 首先收集少量高質量的 CoT 數據,對 DeepSeek-V3-Base 模型進行微調,作為強化學習的初始 actor。冷啟動數據采用包含總結標記,并過濾掉不友好的回復。
a.方法:1) 挑選高質量Long COT數據。2) 添加和標記。
b.優點:1) 優化可讀性(解決R1-Zero的多語言問題或者markdown格式問題)。2) 精心挑選的符合人類偏好的數據可以在R1-zero上繼續提升performance。
c.問題:為啥要解決可讀性問題?不解決是不是可能會更好(例如降低輸出長度,更高效的推理)。
? 面向推理的強化學習 (Reasoning-oriented RL): 在冷啟動模型的基礎上,應用與 DeepSeek-R1-Zero 類似的強化學習過程,側重于提升模型在編碼、數學、科學和邏輯推理等任務上的能力。為了解決多語言混合(多語言推理)問題,引入了語言一致性獎勵。
a.問題:科學和邏輯推理任務以及數據集是怎么訓練的?
? 拒絕采樣和監督微調 (Rejection Sampling and SFT): 當推理導向的強化學習收斂后,利用得到的 checkpoint 進行拒絕采樣,生成新的 SFT 數據,并結合 DeepSeek-V3 的數據,增強模型在寫作、角色扮演和通用任務上的能力。
a.目的:
a)此階段在面向推理的強化學習(RL)過程收斂后啟動。
b)主要目的是收集監督微調(SFT)數據,用于后續的訓練輪次。
c)與最初的冷啟動數據僅關注推理不同,此階段旨在擴展模型的能力,使其涵蓋寫作、角色扮演和其他通用任務,而不僅僅是推理。
b.數據收集 - 推理數據:
a)方法:使用從推理導向的 RL 階段獲得的檢查點,通過拒絕采樣生成推理軌跡。
b)數據集擴展:不同于前面 RL 階段僅僅使用的基于規則的獎勵數據。這里引入了非ru le-based reward的數據,在某些情況下使用**生成式獎勵模型(DeepSeek-V3)**來判斷響應。
c)數據過濾: 為了確保質量和可讀性,輸出結果會經過過濾,以移除:1)包含混合語言的思維鏈;2)過長的段落;3)代碼塊
d)采樣與選擇: 對于每個提示,會生成多個響應。僅保留“正確”的響應用于數據集。
e)數據集大小: 以這種方式收集了大約 60 萬個與推理相關的訓練樣本。
c.數據收集 - 非推理數據:
a)涵蓋范圍:寫作、事實性問答(QA)、自我認知和翻譯等領域。
b)論文中提到采用 DeepSeek-V3 的流程并重用 DeepSeek-V3 SFT 數據集的部分內容 來處理這些非推理任務。大約收集了 20 萬個與推理無關的樣本。 (注意:非推理數據的收集細節在 2.3.4 節中進一步闡述)
d.收集數據的使用:
a)收集到的推理和非推理數據(總計約 80 萬個樣本 - 60 萬個推理樣本 + 20 萬個非推理樣本)隨后用于對 DeepSeek-V3-Base 模型進行兩個 epoch 的微調。然后,這個微調后的模型進入 2.3.4 節描述的最終 RL 階段。
b)總結:該步驟利用通過 RL 學習到的推理能力來生成多樣化和高質量的 SFT 數據集。這個數據集加強了推理能力,還擴展了模型的通用能力,用于最終的對齊和改進階段的訓練。
- 面向所有場景的強化學習 (Reinforcement Learning for all Scenarios): 為了進一步對齊人類偏好,實施了第二階段強化學習,旨在提高模型的helpfulness和harmlessness。
a.推理數據:例如數學、代碼、邏輯推理還是用rule base方法監督。
b.一般數據:還是用reward模型來提供復雜和微妙場景的偏好信息。估計還是采用pairwise的數據訓練的模型。
c.有用性:只關注最終summary的結果,減少對推理過程的干擾。
d.無害性:對整個response進行監督,降低任何存在的風險。
模型蒸餾 (Distillation):
? 為了獲得更高效的小型推理模型,論文將 DeepSeek-R1 的推理能力蒸餾到 Qwen 和 Llama 系列的開源模型中。蒸餾過程僅使用監督微調 (SFT),未使用強化學習階段。
3.Conclusion
? DeepSeek-R1-Zero:展示了純強化學習在激勵LLM推理能力方面的潛力,無需依賴監督數據即可實現強大的性能。
a.Aha-moment: 強化學習之美(模型的頓悟時刻,通過學會重新評估初始方法來為問題分配更多的思考時間)
b.輸出長度持續增加(思考時間持續增加)
c.準確率持續提升(采樣16個response計算精度)
? DeepSeek-R1:通過結合冷啟動數據和迭代強化學習微調,進一步提升了模型性能,實現了與OpenAI-01-1217在各種任務上相媲美的水平。
? 知識蒸餾:通過使用DeepSeek-R1作為教師模型,生成800K訓練樣本,并微調幾個小型密集模型。結果表明,這種蒸餾方法能夠顯著提高小型模型的推理能力。
4.Limitation
? 局限性 1: DeepSeek-R1 的通用能力有待提升。 在函數調用、多輪對話、復雜角色扮演和 JSON 輸出等任務上,DeepSeek-R1 的能力仍不及 DeepSeek-V3。
? 局限性 2: 語言混合問題。 DeepSeek-R1 在處理非中英文查詢時,可能會出現語言混合問題,例如用英文進行推理和回復。
? 局限性 3: 提示敏感性。 DeepSeek-R1 對提示詞比較敏感,少樣本提示 (few-shot prompting) 會降低其性能。
? 局限性 4: 軟件工程任務上的應用受限。 由于評估時間較長,大規模強化學習在軟件工程任務上的應用尚不充分,DeepSeek-R1 在軟件工程基準測試上相比 DeepSeek-V3 提升有限。
二、詳細內容
1.Why DeepSeek Zero Work?
1)基于deepseek v3,其具備強大的基座能力。
2)基于GRPO,對長文本(long cot),GRPO的loss函數訓練更穩定,容易激發出長推理能力,并且同樣對于長文本,可能PPO的Critical Model更不準,反而不利于監督。
3)為什么模型能自主出現自進化現象和“aha moment”?
a.可能答案1: 模型真的從0到1學會了深度推理,出現了頓悟。
a)感覺難度系數太高,rule-base方式監督信號比較稀疏,只能說base-model足夠強,才有一定概率能激發。
b.可能答案2: 基座模型其實見過非常多的深度推理的數據,包括數學,代碼,科學等,我們只需要適當的監督(Rule-base RL),激活這些能力即可。
a)如工作[1]中提到:整個 RL 過程是將原本膚淺的自我反思轉變為有效的自我反思,以最大化預期獎勵,從而提高推理能力。
c.可能答案3:數據污染,可能預訓練已經見過非常多的這種深度推理的數據了。
a)感覺也有可能,[1]中提到llama3不太行,qwen2.5,deepseek這類模型反而效果不錯。
4)為什么rule-base的監督信號能work?
? 任務可能其實比較簡單,例如[1]提到epoch=0就有這種反思,但是可能不太對,適當監督下就OK了?
5)為什么不用prm監督?
? 數據集構建成本高,這里可能openai走了不少彎路,標注了非常多的數據,所以特寶貝他們的cot過程。
? prm可能效果不一定好?可能并不太能準確判斷中間過程的好壞。例如開始想錯了,不代表我后面不能做對
? 容易被reward hacking?這個不確定,但是感覺限制了llm的發揮,其實任何任務的推理過程都可以有很多種。或許這是縮短推理路徑可以嘗試的一些方法。
6)自主挖掘推理過程可能比模仿人類推理更簡單!!!
? 原因假設:模型通過實踐和試錯來發現解決問題的最佳方法。
? 如[2]提出:人類標注者在創建訓練數據時,很難知道哪種解決方案最適合模型。人類標注者可能會注入模型不理解的知識,或者忽略模型已有的知識,導致模型難以理解。而強化學習讓模型通過試錯來自主發現適合自己的解決方案。
2 Why DeepSeek R1 Work?
1)數據,數據還是數據!
- 高質量的Long Cot Reasoning數據600k:基于Zero超低低成本 收集了600k高質量的Long COT Reasoning的數據。這里主要數學,編程,科學等領域的數據,也包括經過推理強化后的Zero模型生成的通用場景的推理數據。
- 通用推理能力:非推理數據,通用場景高質量數據收集;prompt deepseek v3生成高質量的通用數據集。
2)Q:為啥感覺DeepSeek-R1能力主要來自于蒸餾DeepSeek-Zero的能力?
a.能力來源于DeepSeek-Zero蒸餾(600k高質量的數據):前面高質量的冷啟動數據提升了Zero推理結果的可讀性,可能還有通用能力,同時這些Long COT數據模型學起來可能非常快,因為就是同一個base模型調教出來的。同時還能拓展到其他非數學推理等場景。
b. 但也不只是蒸餾: 最后階段10k step的全場景RL訓練也能繼續提升performance,但是論文沒放出具體指標收益,不確定各部分的收益,猜測可能第一步有比較多的簡單易學的Long COT數據來學習了,收益可能還比較大,后面RL能繼續提升能力?
3) Q:為什么冷啟動階段還采用高質量的數據SFT的老路子?
a.提升DeepSeek-Zero模型生成的Long COT數據的可讀性,可能是為了方便后續基于Zero生成和篩選高質量的生成數據?
b.使Zero模型生成結果更符合人類偏好。
4) Q:如何提高Zero模型生成的數據集質量?
a. 利用基于人類偏好優化數據集SFT以及RL微調后的Zero模型(增強版Zero模型)生成。其優點是可讀性好,同時推理能力強,并且還能泛化到了其他領域。同時可能模型還更容易學習。
b.Rule base方法篩選。
c. deepseek v3模型篩選。
d. 可能人工篩洗?
e.背景:其實可能反而LLM自己生成的推理路徑更容易學[2]!!!
5)Q:如何對齊人類偏好?
a.推理數據:例如數學、代碼、邏輯推理還是用rule base方法監督。
b.一般數據:還是用reward模型來提供復雜和微妙場景的偏好信息。估計還是采用pairwise的數據訓練的模型。
c. 有用性:只關注最終summary的結果,減少對推理過程的干擾。
d.無害性:對整個response進行監督,降低任何存在的風險。
三、總結
結論1: 純強化學習 (DeepSeek-R1-Zero) 可以在不依賴監督數據的情況下,有效激勵LLMs的推理能力。 本文成功探索了使用純強化學習激勵LLMs推理能力的方法 (DeepSeek-R1-Zero),驗證了 RL 在提升模型推理能力方面的有效性,無需依賴大量的監督數據。這一發現為未來研究純 RL 方法在 LLMs 推理能力提升方面的應用奠定了基礎。
結論2: 提出的 DeepSeek-R1 訓練流程,通過結合冷啟動、多階段 RL 和蒸餾等技術,有效提升了模型的推理能力、用戶友好性和效率。 DeepSeek-R1 在多個推理基準測試中取得了優異的成績,并開源了模型和蒸餾版本,為研究社區提供了寶貴的資源。
結論3: 論文深入分析了模型訓練過程中的自進化現象和“aha moment”,揭示了強化學習在驅動模型自主學習復雜推理策略方面的潛力。這些發現有助于研究者更深入地理解 RL 的工作機制,并為未來開發更智能、更自主的模型提供啟示。結論4: DeepSeek-R1 模型也存在一些局限性,例如通用能力不足、語言混合問題和提示敏感性等,并提出了未來的改進方向,包括提升通用能力、解決語言混合問題、優化提示工程和探索在軟件工程任務上的應用等。 這些分析為未來的研究工作提供了明確的方向。
四、參考
[1] https://oatllm.notion.site/oat-zero
[2]??https://mp.weixin.qq.com/s/lBc0-8ByRxJ3JBJpMcfzkQ??
本文轉載自??NLP PaperWeekly??,作者: NLP PaperWeekly
