【AI学习】DeepSeek-V3 技术报告学习:总体架构

embedded/2024/12/29 9:35:02/

翻了一下DeepSeek-V3 技术报告学习,太长,只是大概翻了一下,其中Multi-Token Prediction的技术就很亮眼。

摘要

本文介绍了DeepSeek-V3,这是一个拥有671B总参数的强大混合专家(MoE)语言模型,每个标记激活37B参数。为了实现高效的推理和成本效益的训练,DeepSeek-V3采用了多头潜在注意力(MLA)和DeepSeekMoE架构,这些架构在DeepSeek-V2中已经得到了充分的验证。此外,DeepSeek-V3率先采用了一种无辅助损失的策略来进行负载平衡,并设置了多标记预测训练目标以增强性能。我们在14.8万亿多样化和高质量的标记上预训练DeepSeek-V3,随后进行监督式微调和强化学习阶段,以充分发挥其能力。全面的评估表明,DeepSeek-V3超越了其他开源模型,并达到了与领先的闭源模型相当的性能。尽管性能出色,DeepSeek-V3的完整训练仅需要2.788M H800 GPU小时。此外,其训练过程非常稳定。在整个训练过程中,我们没有遇到任何不可恢复的损失峰值或执行任何回滚操作。模型检查点可在GitHub上找到: https://github.com/deepseek-ai/DeepSeek-V3

在这里插入图片描述

1. Introduction

当然,以下是文章《DeepSeek-V3 Technical Report》中第1部分“Introduction”的忠实翻译:

  1. 引言

近年来,大型语言模型(LLMs)经历了快速的迭代和演化(Anthropic, 2024; Google, 2024; OpenAI, 2024a),逐步缩小了与人工通用智能(AGI)之间的差距。除了闭源模型外,包括DeepSeek系列(DeepSeek-AI, 2024a,b,c; Guo et al., 2024)、LLaMA系列(AI@Meta, 2024a,b; Touvron et al., 2023a,b)、Qwen系列(Qwen, 2023, 2024a,b)和Mistral系列(Jiang et al., 2023; Mistral, 2024)在内的开源模型也在取得重大进展,努力缩小与闭源对手之间的差距。为了进一步推动开源模型能力的发展,我们扩展了我们的模型,并引入了DeepSeek-V3,这是一个拥有671B参数的大型MoE模型,其中每个标记激活了37B参数。

具有前瞻性的视角,我们始终致力于强大的模型性能和经济的成本。因此,在架构方面,DeepSeek-V3继续采用多头潜在注意力(MLA)(DeepSeek-AI, 2024c)以实现高效的推理,以及DeepSeekMoE(Dai et al., 2024)以实现成本效益的训练。这两种架构已在DeepSeek-V2(DeepSeek-AI, 2024c)中得到验证,证明了它们在保持强大模型性能的同时,能够实现高效的训练和推理。除了基本架构之外,我们还实施了两个额外的策略来进一步增强模型能力。首先,DeepSeek-V3率先采用了一种无辅助损失的策略(Wang et al., 2024a)来进行负载平衡,旨在最小化因鼓励负载平衡而对模型性能产生的不利影响。其次,DeepSeek-V3采用了多Token预测(MTP:Multi-Token Prediction)训练目标,我们观察到这增强了评估基准上的总体性能。

为了实现高效的训练,我们支持FP8混合精度训练,并为训练框架实施了全面的优化。低精度训练已成为高效训练的一个有前途的解决方案(Dettmers et al., 2022; Kalamkar et al., 2019; Narang et al., 2017; Peng et al., 2023b),其发展与硬件能力的进步(Luo et al., 2024; Micikevicius et al., 2022; Rouhani et al., 2023a)密切相关。在这项工作中,我们引入了一个FP8混合精度训练框架,并首次验证了其在极大规模模型上的可行性和有效性。通过支持FP8计算和存储,我们实现了加速训练和减少GPU内存使用。至于训练框架,我们为有效的流水线并行设计了DualPipe算法,它具有较少的流水线气泡,并且通过计算通信重叠,隐藏了训练期间的大部分通信。这种重叠确保了,随着模型的进一步扩展,只要我们保持恒定的计算与通信比率,我们仍然可以在节点间使用细粒度专家,同时实现接近零的全对全通信开销。此外,我们还开发了高效的跨节点全对全通信内核,以充分利用InfiniBand(IB)和NVLink带宽。此外,我们精心优化了内存占用,使得训练DeepSeek-V3无需使用昂贵的张量并行。结合这些努力,我们实现了高训练效率。

在预训练期间,我们在14.8T高质量和多样化的标记上训练DeepSeek-V3。预训练过程非常稳定。在整个训练过程中,我们没有遇到任何不可恢复的损失峰值或需要回滚。接下来,我们对DeepSeek-V3进行了两个阶段的上下文长度扩展。在第一阶段,最大上下文长度扩展到32K,在第二阶段,进一步扩展到128K。随后,我们在DeepSeek-V3的基础模型上进行后训练,包括监督式微调和强化学习,以使其与人类偏好保持一致,并进一步释放其潜力。在后训练阶段,我们从DeepSeekR1系列模型中提取推理能力,同时仔细保持DeepSeek-V3的输出风格和长度的平衡。

在这里插入图片描述

DeepSeek-V3的主要贡献,包括:

架构:创新的负载平衡策略和训练目标
在DeepSeek-V2的高效架构基础上,DeepSeek-V3率先采用了无辅助损失的负载平衡策略,旨在最小化因鼓励负载平衡而对模型性能产生的不利影响。
研究并证明了多标记预测(MTP)目标对模型性能有益,并且可以用于推测性解码以加速推理。
预训练:追求终极训练效率
设计了一个FP8混合精度训练框架,并首次验证了FP8训练在极大规模模型上的可行性和有效性。
通过算法、框架和硬件的共同设计,克服了跨节点MoE训练中的通信瓶颈,实现了接近完全的计算-通信重叠,显著提高了训练效率并降低了训练成本,使得模型规模的进一步扩展不再增加额外开销。
以经济的成本完成了DeepSeek-V3在14.8T标记上的预训练,产生了目前最强的开源基础模型。预训练后的训练阶段仅需要额外的0.1M GPU小时。
后训练:从DeepSeek-R1中的知识蒸馏
引入了一种创新的方法,从长链思考(CoT)模型,特别是DeepSeek R1系列模型中,提取推理能力到标准LLMs,特别是DeepSeek-V3中。该流程将R1的验证和反思模式优雅地整合到DeepSeek-V3中,并显著提高了其推理性能。同时,也控制了DeepSeek-V3的输出风格和长度。

2. Architecture

我们首先介绍了DeepSeek-V3的基本架构,其特征是用于高效推理的多头潜在证明(MLA)(DeepSeek AI,2024c)和用于经济训练的DeepSeekMoE(Dai等人,2024)。然后,我们提出了一个多Token预测(MTP:Multi-Token Prediction)训练目标,我们观察到该目标可以提高评估基准的整体性能。对于其他未明确提及的细节,DeepSeek-V3遵循DeepSeek V2(DeepSeek AI,2024c)的设置。

2.1. Basic Architecture

在这里插入图片描述
DeepSeek-V3的基本架构仍然是基于Transformer(Vaswani et al., 2017)框架。为了实现高效的推理和经济的训练,DeepSeek-V3也采用了MLA(Multi-head Latent Attention)和DeepSeekMoE,这些已经在DeepSeek-V2中得到了充分的验证。与DeepSeek-V2相比,一个例外是我们还引入了一个无辅助损失的负载平衡策略(Wang et al., 2024a)用于DeepSeekMoE,以减轻为了确保负载平衡而对性能造成的影响。图2展示了DeepSeek-V3的基本架构,我们将在本节简要回顾MLA和DeepSeekMoE的细节。

2.1.1. Multi-Head Latent Attention

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.1.2. DeepSeekMoE with Auxiliary-Loss-Free Load Balancing(无辅助损失的DeepSeekMoE负载平衡)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

2.2. Multi-Token Prediction

在这里插入图片描述
受Gloeckle等人(2024年)的启发,我们研究并为DeepSeek-V3设置了一个多Token预测(MTP)目标,该目标将每个位置的预测范围扩展到多个未来令牌。一方面,MTP目标增加了训练信号的密度,可能会提高数据效率。另一方面,MTP可能使模型能够预先规划其表示,以更好地预测未来的令牌。图3说明了我们MTP实现的情况。与Gloeckle等人(2024年)不同,他们使用独立的输出头并行预测D个额外的Token,我们顺序预测额外的Token,并在每个预测深度保持完整的因果链。我们在本节介绍我们的MTP实现的详细信息。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

备注

大概看下来,感觉梁文锋这个人真是厉害。作为扩展(八卦),可以继续阅读两篇文章
1、《揭秘DeepSeek:一个更极致的中国技术理想主义故事》
2、《连续30年不亏钱的传奇基金经理西蒙斯:人生还有两个目标》,作为量化基金的传奇人物,西蒙斯是梁文锋非常推崇的人物,可以一并阅读


http://www.ppmy.cn/embedded/149698.html

相关文章

sql group by 多个字段例子

有表如下; 获取某年份、某地区、某产品的销售总额, 或者根据需要把字段顺序换一下; insert into sales (product, year, region, amount) values (飞机,2000,东部,5); insert into sales (product, year, region, amount) values (飞机,2001,…

从虚拟到现实:AI与AR/VR技术如何改变体验经济?

引言:体验经济的崛起 在当今消费环境中,产品与服务早已不再是市场竞争的唯一焦点,能够提供深刻感知和独特体验的品牌,往往更能赢得消费者的青睐。这种转变标志着体验经济的崛起。体验经济不仅仅是简单的买卖行为,而是通…

LCE软机器人登场!热场光控下的多模态运动传奇?

大家好!今天来了解一项液晶弹性体(LCE)软机器人研究——《Multimodal Autonomous Locomotion of Liquid Crystal Elastomer Soft Robot》发表于《Advanced Science》。在机器人技术不断演进的进程中,软机器人虽有潜力但面临诸多挑…

LeetCode 349. 两个数组的交集 (C++实现)

1. 题目描述 给定两个数组 nums1 和 nums2 ,返回 它们的 交集 。输出结果中的每个元素一定是 唯一 的。我们可以 不考虑输出结果的顺序 。 示例 1: 输入:nums1 [1,2,2,1], nums2 [2,2] 输出:[2] 示例 2: 输入&a…

Kafka优势

目录 1. 分布式架构 2. 持久化日志与顺序写入 3. 批量处理 4. 异步提交与压缩 5. 消费者组与并行消费 6. 高效的数据复制 7. 无锁设计与多线程模型 8. 幂等性和事务支持 9. 流处理集成 10. 灵活的配置与调优 总结 1. 分布式架构 多 broker 集群:Kafka 是…

穷举vs暴搜vs深搜vs回溯vs剪枝系列一>组合

题目&#xff1a; 解析&#xff1a; 代码&#xff1a; private List<List<Integer>> ret;private List<Integer> path;private int n,k;public List<List<Integer>> combine(int _n, int _k) {n _n;k _k;path new ArrayList<>();ret…

【Golang 面试题】每日 3 题(六)

✍个人博客&#xff1a;Pandaconda-CSDN博客 &#x1f4e3;专栏地址&#xff1a;http://t.csdnimg.cn/UWz06 &#x1f4da;专栏简介&#xff1a;在这个专栏中&#xff0c;我将会分享 Golang 面试中常见的面试题给大家~ ❤️如果有收获的话&#xff0c;欢迎点赞&#x1f44d;收藏…

力扣刷题:单链表OJ篇(下)

大家好&#xff0c;这里是小编的博客频道 小编的博客&#xff1a;就爱学编程 很高兴在CSDN这个大家庭与大家相识&#xff0c;希望能在这里与大家共同进步&#xff0c;共同收获更好的自己&#xff01;&#xff01;&#xff01; 目录 1.环形链表&#xff08;1&#xff09;题目描述…