诸神缄默不语-个人CSDN博文目录
诸神缄默不语的论文阅读笔记和分类
已开源:https://github.com/deepseek-ai/DeepSeek-V3
技术报告:https://github.com/deepseek-ai/DeepSeek-V3/blob/main/DeepSeek_V3.pdf
前几天技术圈刚刚在满世界宣传DeepSeek-V3是最强大模型,一转眼MiniMax也出新模型了……那个我可能会过几天写吧。
数学部分懒得研究了,以后有空了再学习吧。
有很多内容看着看着就懒得看了,都留给有空了再学习……
↑论文看着看着看累了,后面懒得写了,看了下网上的资料(见最后一节)了解一下就完了,以后有闲心了再来做详细解读吧。
1. 模型架构
DeepSeek-V3是一个拥有671B参数的混合专家(MoE)模型。它在14.8T token的数据上进行了预训练,随后又进行了SFT和强化学习。
该模型采用了多头潜注意(MLA, Multi-head
Latent Attention)和DeepSeekMoE架构,这些架构在DeepSeek-V2中得到了验证。DeepSeek-V3还引入了无辅助损失的负载均衡策略(auxiliary-loss-free strategy for load balancing)和多token预测训练目标(multi-token prediction training objective)。
RoPE是一种位置编码,在这里是在经过MLA之后直接concat到表征上。可以参考我写的博文:Re 79 读论文:RoPE RoFormer: Enhanced Transformer with Rotary Position Embedding
1. MLA
采用低秩联合压缩(low-rank joint compression)来减少推理过程中的键值缓存,从而提高效率。
你可以理解成就是多压缩了一次,所以权重小了很多。
KQV的做法差不多:
c是对原始表征进行压缩(用一个权重做矩阵乘法来降维)后得到的结果。
2. DeepSeekMoE & 无辅助损失负载均衡
DeepSeekMoE使用细粒度专家和共享专家来实现经济高效的训练。这里的专家就是Transformer里的FFN。
MoE我之前也写过博文,可以参考:混合专家模型(MoE)详解
公式12中的第二个元素就是共享专家,第三个元素是路由专家(只激活Topk个专家)。
g
g
g 是gating value,
s
s
s 是token-to-expert affinity,
e
e
e 是专家的centroid vector
通过算法、框架和硬件的联合设计,克服了跨节点MoE训练中的通信瓶颈,实现了接近完全的计算-通信重叠,显著提高了训练效率并降低了训练成本。
引入无辅助损失的负载均衡策略,以最小化负载均衡对模型性能的影响:
Complementary Sequence-Wise Auxiliary Loss:
路由策略:Node-Limited Routing:限制每个token最多用多少个专家
No Token-Dropping
3. 多token预测(MTP)
扩展预测范围到多个未来token,以提高数据效率和模型性能。
(k是层)
推理的时候可以直接把MTP给扔掉……
2. 基础设施
算法、框架和硬件的联合优化:通过算法、框架和硬件的联合设计,克服了跨节点MoE训练中的通信瓶颈,实现了接近完全的计算-通信重叠,显著提高了训练效率并降低了训练成本。
1. 计算集群
略。
2. 训练框架
HAI-LLM框架
1. DualPipe算法
3. FP8
设计了FP8混合精度训练框架,并首次验证了其在超大规模模型上的可行性和有效性。
实现了训练加速+减少对GPU内存的依赖。
1. 量化和矩阵乘法
2. 低精度存储和通信
4. 推理与部署
1. Prefilling
2. Decoding
3. 实验trick
全流程训练代价:
1. 预训练
1. 数据收集
在预训练阶段,使用14.8万亿高质量和多样化的标记进行训练。
文档打包方法:为了确保数据的完整性,采用了文档打包方法(Document Packing Method),但在训练过程中没有使用跨样本注意力掩码。
优化多语言压缩效率:新的预训练器引入了结合标点和换行符的标记,以优化多语言压缩效率。为了缓解由于缺少终止换行符而在处理多行提示时可能出现的标记边界偏差问题,训练过程中随机拆分了一定比例的组合标记。
2. 超参数设置
设置Transformer层数为61,隐藏维度为7168,多头注意力的头数为128,KV压缩维度为512,查询压缩维度为1536,每令牌激活37B参数。
3. 训练过程
采用AdamW优化器,初始学习率为2.2x10^-4,使用管道并行和专家并行进行训练。
在第一阶段,序列长度设置为32K,批量大小为1920;在第二阶段,序列长度增加到128K,批量大小减少到480。学习率在两个阶段分别设置为7.3×10^-6。
训练过程没有,没有loss spikes(大模型训练过程中出现的loss突然暴涨的现象)或在模型崩溃后回到上一个checkpoint重训(rollbacks)这种事情。
4. 长上下文扩展
通过YaRN方法将上下文窗口从4K扩展到32K,再扩展到128K。
5. 实验结果
2. 后训练
从 long Chain-of-Thought (CoT) 模型中蒸馏推理能力。
1. SFT
2. RL
1. 奖励模型
2. GRPO (Group Relative Policy Optimization)
4. 实验结果
1. 基准测试
在MMLU、DROP、GPQA和SimpleQA等基准测试中,DeepSeek-V3表现出色,显著优于其他开源模型,并在某些任务上接近闭源模型的性能。
2. 长上下文扩展
通过YaRN方法将上下文长度扩展到128K,DeepSeek-V3在“针在干草堆中”(NIAH)测试中表现出一致的鲁棒性。
3. 编码和数学任务
在编码任务中,DeepSeek-V3在LiveCodeBench和CRUXEval等基准测试中表现优异,成为顶级模型。在数学任务中,DeepSeek-V3在MATH、CNMO和CLUEWSC等基准测试中显著超越基线模型,达到了新的最佳水平。
4. 中文任务
在中文任务中,DeepSeek-V3在C-Eval和CLUEWSC等基准测试中与Qwen2.5-72B表现相当,显示出其在中文推理和教育任务中的强大能力。
5. 文章结论
本文提出的DeepSeek-V3模型通过创新的负载均衡策略和多令牌预测目标,实现了高效的推理和训练。预训练阶段在14.8万亿令牌上完成,训练成本仅为2.788M GPU小时。综合评估表明,DeepSeek-V3成为目前最强的开源模型之一,性能可与领先的闭源模型相媲美。未来的研究方向包括进一步优化模型架构、扩展训练数据、增强模型的深度思考能力以及探索更全面的模型评估方法。
6. 参考资料
- CSCI 5722: 春季特别讲座 - DeepSeek - Prof. Tom Yeh 手把手教你怎么计算注意力,以及MOE专家模型到底是什么。_哔哩哔哩_bilibili:这个视频讲的挺好的,通过Excel图解的方式简洁地介绍了多头注意力的计算机制(特别是介绍了deepseek中用到的MLA)和deepseek专家模型的机制。
不过中文字幕似乎是机翻,而且最后一段直接没了……
这个是配套Excel的下载地址:ImagineAILab/ai-by-hand-excel