# DeepSeek-R1 の仕組み ## 参照 - [[DeepSeek-R1 論文]] - [DeepSeek-R1/DeepSeek_R1.pdf at main · deepseek-ai/DeepSeek-R1](https://github.com/deepseek-ai/DeepSeek-R1/blob/main/DeepSeek_R1.pdf) - [DeepSeek-R1の論文読んだ?【勉強になるよ】](https://zenn.dev/asap/articles/34237ad87f8511) ## 仕組み - DeepSeek-V3-Base - GPT-4o レベル - 今回のベースのモデル - DeepSeek-R1-Zero - GPT-o1 レベル - DeepSeek-V3-Base に対して「強化学習(後述)のみ」を適用 - 問題 - コールドスタート問題 - 言語の混在 - 汎用タスクに弱い - DeepSeek-R1 - 少量のCoT (Chain of Thought) データセットを用いた SFT (Supervised Fine-Tuning) - → コールドスタート問題 - 言語一貫性報酬 - → 言語の混在 - 追加の SFT - → 汎用タスクの性能向上 ```mermaid flowchart TD %% API V3(DeepSeek-V3-Base) -->|Instruction tuning| API %% R1 classDef CP stroke-dasharray: 5 5 %% SFT (Supervised Fine-Tuning) : 教師ありファインチューニング V3 -->|SFT w/ CoT| P1(CheckPoint1):::CP P1 -->|強化学習| P2(CheckPoint2):::CP P2 -->|SFT| P3(CheckPoint3):::CP P3 -->|強化学習| P4(CheckPoint4):::CP P4 --> R1(DeepSeek-R1) Zero -.- Cold([コールドスタート問題]) P1 -.->|SFT w/ CoT| Cold Zero -.- Lang([言語混在問題]) P2 -.->|言語一貫性報酬| Lang Zero -.- Task([汎用タスク問題]) P3 -.->|Reasoning Data + Non-Reasoning Data| Task %% 小型モデル(大規模モデルの出力で学習) R1 -->|蒸留| Small(小型モデル) %% Zero V3 -->|強化学習のみ| Zero(DeepSeek-R1-Zero) ``` ## GRPO + ルールベース報酬 - 強化学習 - LLM - マルコフ決定過程 (MDP) が成立 - GRPO (Group Relative Policy Optimization) - 状態評価モデルを使わない - RLHF (Reinforcement learning from Human Feedback) なし - ルールベース報酬 - 数学データセット ```mermaid flowchart LR %% GRPO (Group Relative Policy Optimization) RL[強化学習] -.- GRPO[GRPO+ルールベース報酬] GRPO -.- Math[数学データセット] Math -.- Prompt[プロンプト] Math -.- Answer[回答] GRPO -.-x EvaluationModel[評価モデル] EvaluationModel -.- Prompt2[プロンプト] EvaluationModel -.- Good[好ましい回答] EvaluationModel -.- Bad[好ましくない回答] ``` ## Try [[Try DeepSeek-R1]]