DS从基座模型到推理能力
25-2-14同步目录整体背景与DeepSeek的独特文化基座模型发展线DeepSeek LLM (24年1月)DeepSeekMoE (24年1月)DeepSeek-V2 (24年5月)DeepSeek-V3 (24年12月)推理模型发展线DeepSeek-Coder系列Math-Shift与GRPO的诞生DeepSeek-MathDeepSeek-Prover定理证明DeepSeek-R1技术总结一、背景与文化起源时间线2022年底何俊贤教授通过使用幻方DeepSeek母公司的萤火超算集群开始关注这家公司初步印象幻方用5000张英伟达A100搭建了一套非常成熟的超算系统免费开放给高校科研工作者使用转折点2023年上半年得知幻方要孵化DeepSeek最初并不被看好国内百模大战已很激烈特性具体表现极度开放完全开源论文写作非常详细诚实公布大量技术细节非常诚实在第一篇论文中主动揭露刷榜行为做对照实验说明如何刷榜低调务实不做铺天盖地的宣传不像公司更像是高校实验室追求效率从MoE开始就极度关注成本从MLA到GRPO都是降本增效的体现为何DeepSeek能成功“他们不是纯粹的follow之前别人做的practice。虽然像LLaMA这些都很权威但DeepSeek从一开始就有包括从DeepSeek MoE开始就开始探索更多的expert也不是为了创新而创新。我觉得这种创新更多的是他们真的想压低成本想让整个东西更efficient。然后很勇敢的做了这些尝试最后就跟别人越走越不一样”二、基座模型发展线2.1 DeepSeek LLM论文《DeepSeek LLM Scaling Open-Source Language Models with Longtermism》定位DeepSeek的第一篇大模型论文是对LLaMA2的复现7B和67B两个规模贡献1. Multi-step Learning Rate Schedule背景之前大家都用cosine learning rate schedule但需要在训练前就指定好总的token数。如果要动态调整数据量就不太好改创新使用multi-step schedule先用常数学习率训一段时间后变低再按常数调整。这样可以更灵活地动态变化数据量。# 伪代码说明lrinitial_lr# 常数forstepintraining_steps:ifstepinstep_points:lrlr*decay_factor# 继续训练2. 更严谨的Scaling Law研究创新点之前的scaling law如Chinchilla、Google的工作没有考虑attention的计算开销估计比较粗糙。DeepSeek提出了更精细的公式第一个scaling超参数batch size、学习率与算力的关系第二个scaling模型大小、数据大小与算力的关系公式新的公式M考虑了更多因素包括attention overhead发现不同data quality会影响最优配置3. 开诚布公揭露刷榜行为对照实验用选择题数据训练可以刷高榜单分数数据配置分数提升正常训练47分刷榜后71分提升24分“他们明明可以刷榜但他们不讲。他们就是要报他们刷之前的效果然后去讲他们如果刷可以刷了这么多。那个时候是没有人写这个事情。”2.2 DeepSeekMoE论文《DeepSeekMoE: Towards Ultimate Expert Specialization in Mixture-of-Experts Language Models》定位开始做MoE架构验证Expert数量增多和Shared Expert设计的有效性MoE基础概念Dense Model vs MoEDense Model每个token经过所有FFN层MoE稀疏把FFN分成多份专家每个token只激活部分专家为什么做MoE模型参数大如100B但每次推理只激活一小部分参数训练和推理成本大幅下降GPT-4据传也是MoE架构创新创新1Expert数量大幅增加对比之前工作DeepSeekMoEExpert数量8或16个64个后来验证到128个原理Expert越多分割越细每个Expert学到的东西越不一样从N个Expert选K个选中比例从 N/K 变得更稀疏128选2只选了1/648选2选了1/4稀疏度大幅提升创新2引入Shared Expert共享专家┌─────────────────────────────────────────────────────────┐ │ Architecture设计演进 │ │ │ │ A: 传统MoE ───→ B: Expert数量翻倍 ───→ C: 加Shared Expert │ │ [E₁ E₂ E₃] [E₁ E₂ E₃ E₄ E₅ E₆] [共享E][E₁ E₂ E₃ E₄] │ └─────────────────────────────────────────────────────────┘Shared Expert不管什么query都需要经过的专家如基本语言理解、常识专有Expert根据query类型选择性激活实验结果16B MoE模型激活参数只有2.8B达到与7B Dense模型相近的效果计算量只用了原来的40%“这种尝试作为公司来说投入很多来说是很少见的。在业界。”2.3 DeepSeek-V2论文《DeepSeek-V2: A Strong, Economical, and Efficient Mixture-of-Experts Language Model》发布2024年5月核心数据总参数量236B激活参数21B仅为总数的约9%支持128K context训练成本节约42.5%KV Cache压缩93%生成速度提升5.76倍MLAMulti-head Latent Attention——核心创新背景推理时需要存储KV Cache占用大量GPU内存现有方案对比方法头数KV Cache问题MHA (Multi-head Attention)多很大显存占用高GQA (Group Query Attention)减少减少效果下降MQA (Multi-query Attention)1最小效果大幅下降MLA的解决方案不直接存储K和V存储一个低维的compressed latent C计算时通过矩阵映射得到高维的K和V实现多头的灵活性 MQA的低存储存储内容低维向量 C (如100维) ← 替代 → 高维K/V (如1000维) 存储空间减少约90%公式C 压缩后的低维向量 K W_K × C V W_V × CMoE配置升级Shared Expert2个专有Expert160个相比DeepSeekMoE的64个专家更进一步工程优化Device Balance确保不同GPU的负载均衡Expert Balance确保不同Expert被使用频率均衡通信平衡不同GPU间通信均衡目的最大化集群利用率避免资源浪费效果对比模型总参数量激活参数部署成本DeepSeek-V2236B21B最低Mixtral 8×22B~176B~44B较高LLaMA3 405B405B405B极高“从这个开始国内的大模型价格战就开始了。DeepSeek用比较差的GPU用很便宜的价格部署一个大模型结果还有利润。”2.4 DeepSeek-V3论文《DeepSeek-V3 Technical Report》发布2024年12月核心数据总参数量671B训练token14.8TGPU数量2048张H800而非最先进的H100训练成本557万美元对比LLaMA3 405B训练成本约3000万美金约6倍差距训练稳定性整个过程无任何roll back架构继承MoE继承V2设计1个Shared Expert 256个专有ExpertMLA继承V2的多头潜在注意力机制创新1. Multi-token Prediction (MTP)来源不是DeepSeek原创引用了一篇学术paper核心思想训练时不只预测下一个token同时预测后面多个token传统输入 → 预测今天 MTP输入 → 预测今天天气好处训练信号更密集模型学习到更远的依赖关系可用于Speculative Decoding一次预测多个token加速推理2. FP8 Mixed Precision Training挑战低精度训练容易导致训练不稳定或效果下降解决方案对大部分中间变量使用FP8对某些敏感变量保持FP16/BF16经过大量实验验证找到最优配置“虽然之前在部署时很多人做量化但在真正的大规模训练上几乎没有成功的案例。V3是最早公开的大规模成功案例。”后训练策略阶段数据量说明SFT1.5M token数据量非常小对比LLaMA3用了20MRLDeepSeek-R1数据基于内部版R1蒸馏验证数据2.5M类似DeepSeekMath的数据对刷榜不执着后训练做得很浅相比之下很多公司对刷榜非常执着三、推理模型发展线3.1 DeepSeek-Coder系列DeepSeek-Coder24年1月从DeepSeek LLM继续预训练1.3B到33B规模全部开源在代码生成领域获得广泛使用DeepSeek-Coder-V224年基于DeepSeek-V2MoE架构继续训练6T token代码数据当时仍在使用reward model做RL“在当时整个社区都在用reward model大家觉得这个是正确的方法。后来R1证明了用规则reward反而更简单有效。”3.2 Math-Shift与GRPO的诞生论文《DeepSeekMath: Pushing the Limits of Mathematical Reasoning in Open Language Models》OpenAI发布了《Let’s Verify Step by Step》提出基于过程监督的奖励模型Process-supervised Reward Model, PRMPRM vs ORMORM (Outcome Reward Model)只判断最终答案对错PRM (Process Reward Model)判断推理的每一步是否正确Math-Shift的创新问题OpenAI的PRM需要人类标注80万条数据成本极高Math-Shift解决方案让模型从某个中间步骤继续生成多个解统计这些解最终得到正确答案的比例如果多数能推出正确答案 → 该步骤正确如果几乎都推不出 → 该步骤错误步骤S → 生成N个解 → 统计正确比例 - 正确比例 阈值 → 步骤S是正确的 - 正确比例 阈值 → 步骤S是错误的GRPO的提出PPO的问题需要4个模型Policy、Reward、Value、Reference每个都很大资源占用极高GRPO的改进去掉Value Model用采样多个response的平均值作为baseline计算advantagePPO: - Policy Model - Reward Model - Value Model - Reference Model GRPO: - Policy Model - Reward Model - Reference Model - (无Value Model)减少一个超大模型的显存占用训练效率大幅提升后续DeepSeek-R1等全部使用GRPO3.3 DeepSeek-Math论文《DeepSeek-Math: Towards Mathematical Reasoning in Open Language Models》基于DeepSeek-Coder-V2继续训练7B规模很长时间是开源数学模型中7B最强的实验发现Passk招标sample k个response里面有多少包含正确答案衡量模型探索正确解的能力发现做RL后k1时分数提升明显但当k增大时探索能力反而可能下降说明RL可能只是把正确答案排到更前面而不是真正提升基础能力“DeepSeek在paper里主动泼冷水承认RL可能没有想象中那么work。”两个改进方向提高奖励模型的泛化能力采用方案完全不用奖励模型只用规则规则 vs 奖励模型规则具有universal性质小学题、大学题都用同一规则判断奖励模型泛化能力有限在训练数据分布外的题目上效果差3.4 DeepSeek-Prover论文《DeepSeek-Prover: Formal Theorem Proving via Reinforcement Learning》特殊之处使用形式化语言Lean等做定理证明有外部验证引擎Lean可以提供确定性反馈这是最早的用规则reward做RL的尝试之一V1.5版本开始使用GRPO做强化学习对于特别难的题目无法判断对错选择移除开始脱离奖励模型3.5 DeepSeek-R1论文《DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning》Pipeline架构┌─────────────────────────────────────────────────────────┐ │ DeepSeek-V3 基座 │ └─────────────────────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────────────────────┐ │ GRPO (不用Value Model) │ └─────────────────────────────────────────────────────────┘ ↓ ┌─────────────────────────────────────────────────────────┐ │ Reward: 只有两类规则 │ │ 1. Accuracy Reward最终答案是否正确 │ │ 2. Format Reward是否按照指定格式输出如先Think后Answer│ │ (无任何Reward Model!) │ └─────────────────────────────────────────────────────────┘DeepSeek-R1-Zero创新点无需SFT直接从基座模型做RL之前所有方法包括DeepSeek自己都是先做SFT再做RLR1-Zero直接跳过SFT结果在AIME上从0.3提升到0.8模型自发展现出self-reflection、milic思维链等能力DeepSeek-R1先生成一批长思维链数据做SFT蒸馏再做GRPO强化学习效果更好最终结论“O-one可能也是这么做的。之前大家做O-one复现有人做蒸馏、有人做MCTS、有人做各种复杂方法。但没有人这样做——直接简单地从基座做RL不要奖励模型不要MCTS。”四、总结贡献创新类型影响力MLA (Multi-head Latent Attention)算法原创显著降低KV Cache部署成本大幅下降GRPO (Group Relative Policy Optimization)算法原创被广泛采用成为做RL的主流方法多Expert MoE设计工程创新从8/16个扩展到64/128/160/256个Shared Expert机制工程创新通用能力与专业能力分离MTP (Multi-token Prediction)工程创新首次大规模成功应用FP8 Mixed Precision Training工程创新大幅降低训练成本“从很早的时候开始DeepSeek就有这样一种文化或者追求——不是纯粹的follow之前别人做的practice。虽然像LLaMA这些都很权威但DeepSeek从一开始就有包括从DeepSeekMoE开始就开始探索更多的expert。也不是为了创新而创新。这种创新更多的是他们就真的想压低成本想让整个东西更efficient。然后很勇敢的做了这些尝试。最后他就跟别人越走越不一样。”弯路与收敛走过的重要弯路很长时间使用reward model做RL→ 发现效果不好尝试PPO做online RL→ 难以调参不够稳定用过程监督奖励模型 → 泛化能力差最终收敛到的简单方案不用奖励模型只用规则答案对错直接做GRPO效果反而最好复现“我们从两多月前就开始做类似的工作当时试过很多复杂的东西。其实都不是很work。我们在可能半年多以前就在做这个事用奖励模型做强化学习发现效果一直不太理想。后来经过了很多挫折最后发现最简单的东西就是可能不用奖励模型就只用rule-based reward最后反而是最work的。”影响:让学术界重新认识强化学习在推理任务上的潜力GRPO成为开源RL框架的主流选择证明了简单方案可以work