DeepSeek-v3:开源大模型新高度,最强性能,最高性价比!(论文详解)
1.简介近期,在人工智能领域,尤其是大型语言模型领域,可谓是热闹非凡。首先,OpenAI公司宣布开放了其最新的大型语言模型o1,紧接着,微软也不甘示弱,宣布开源了其先进的Phi-4模型,这一举措同样在技术社区中掀起了热烈讨论。两大科技巨头的相继动作,仿佛是一场接力赛,一个刚刚结束,另一个便紧随其后,登上了舞台,显现了大型语言模型发展的新趋势和竞争态势。
而国内厂商也不闲着,“深度求索”官方公众号12 月 26 日发布博文,宣布上线并同步开源 DeepSeek-V3 模型,用户可以登录官网 chat.deepseek.com,与最新版 V3 模型对话。
DeepSeek-V3在知识类使命(MMLU, MMLU-Pro, GPQA, SimpleQA)上的水平显著提升,接近当前表现最好的模型Anthropic公司于10月发布的Claude-3.5-Sonnet-1022。在美国数学竞赛(AIME 2024, MATH)和天下高中数学联赛(CNMO 2024)上,DeepSeek-V3大幅凌驾了其他所有开源闭源模型。别的,在生成速率上,DeepSeek-V3的生成吐字速率从20TPS(Transactions Per Second每秒完成的变乱数量)大幅进步至60TPS,相比V2.5模型实现了3倍的提升,能够带来更加流通的使用体验。据官方技术论文披露,DeepSeek-V3模型的总练习本钱为557.6万美元,而GPT-4o等模型的练习本钱约为1亿美元,仅为其本钱的1/20。
https://i-blog.csdnimg.cn/direct/d1f6c78497b3404bb9c420bb6619c497.png
DeepSeek-V3模型API服务订价为每百万输入tokens为0.5元(缓存掷中)/2元(缓存未掷中),每百万输出tokens价格为8元,并享有45天的优惠价格体验期。
https://i-blog.csdnimg.cn/direct/5b9ddf235c6d4a099bdb4899567059c8.png
-
目录
1.简介
2.实测
3.论文解读
-
官方网站:DeepSeek
代码地点:GitHub - deepseek-ai/DeepSeek-V3
权重地点:https://huggingface.co/deepseek-ai
论文地点:DeepSeek-V3/DeepSeek_V3.pdf at main · deepseek-ai/DeepSeek-V3 · GitHub
-
-
2.实测
测一下数草莓中的“r”以及“9.9和9.11哪个大”这种早期的行业难题。可以看到它都答对了
https://i-blog.csdnimg.cn/direct/5f750d1883214be08cb1c521d2c84d31.pnghttps://i-blog.csdnimg.cn/direct/0eed9be6b7e943b79d2a5171deca0f28.png
对于图片也能做的清晰的明白,图中是论文图5
https://i-blog.csdnimg.cn/direct/f81aac7f3cf445c08d2955035b6d67e7.png
-
但是奇怪的是,偶然候它仍然会冒出英语,即便我的输入是中文。
https://i-blog.csdnimg.cn/direct/04802b74624c489c804bd6aa1322fe07.png
遗憾的是,对于超长文本的明白本领,不如Kimi
https://i-blog.csdnimg.cn/direct/b0081c1219444334abe4b68ccd861974.png
-
-
3.论文解读
3.1 简介
近年来,大型语言模型(LLM)一直在经历快速的迭代和演变,逐渐缩小了与人工通用智能(AGI)的差距。为了进一步推动开源模型功能的边界,我们扩展了我们的模型并引入了DeepSeek-V3,这是一个大型的专家混淆(MOE)模型,具有671 B参数,其中37 B为每个令牌激活。
本文的重要贡献如下:
架构:
[*]在DeepSeek-V2的高效架构基础上,首创了无辅助丧失(auxiliary-loss-free strategy)的负载均衡计谋(load balancing),最大限度地降低了由于寻求负载均衡而导致的性能降落。
[*]作者研究了一个多标志猜测(Multi-Token Prediction,MTP)目的,并证明白它对模型性能的好处。它也可以用于推理加快。
预练习:迈向终极练习效率
[*]作者设计了FP 8混淆精度练习框架,并初次在超大规模模型上验证了FP 8练习的可行性和有效性。
[*]通过算法、框架和硬件的协同设计,克服了跨节点MOE练习(cross-node MoE training)中的通讯瓶颈,实现了近乎完全的计算-通讯重叠(near-full computation-
communication overlap)。这大大进步了我们的练习效率并降低了练习本钱,使我们能够在不增长额外开销的情况下进一步扩大模型规模。
[*]注:Computation-communication overlap(计算-通讯重叠)是指在并行计算或分布式系统中,计算使命和通讯使命在同一时间内同时举行,以进步资源使用率和团体性能的一种技术。在深度学习模型练习中,不同的计算节点(如GPU)须要交换信息,这通常涉及到通讯操作。假如通讯操作和计算操作能够重叠举行,即在一个节点举行计算的同时,另一个节点可以举行数据传输,那么就可以更有效地使用硬件资源,减少等待时间,从而加快练习过程。
[*]作者以仅266.4万H800 GPU小时的经济本钱,在14.8T tokens上完成了DeepSeek-V3的预练习,产生了现在最强的开源基础模型。预练习后的后续练习阶段仅须要0.1M GPU小时。
后练习:从R1举行知识蒸馏
[*]作者引入了一种创新的方法,从长头脑链(CoT)模型中提取推理本领,特殊是从DeepSeek R1系列模型中提取推理本领,并将其转化为标准的LLM,特殊是DeepSeek-V3。作者将R1的验证和反射模式优雅地整合到DeepSeek-V3中,并显著进步了其推理性能。同时,作者还可以控制DeepSeek-V3的输出样式和长度。
https://i-blog.csdnimg.cn/direct/aeb0b3c1a2d14715b4320b6aa179f8f6.png DeepSeek-V3的练习本钱 核心评价结果汇总:
[*]知识:
[*](1)在MMLU、MMLU-Pro和GPQA等教育基准测试中,DeepSeek-V3的表现优于所有其他开源模型,在MMLU上达到88.5,在MMLU-Pro上达到75.9,在GPQA上达到59.1。它的性能与GPT-4 o和Claude-Sonnet-3.5等领先的闭源模型相称,缩小了该领域开源和闭源模型之间的差距。
[*](2)对于真实性基准测试,DeepSeek-V3在SimpleQA和中文SimpleQA的开源模型中表现出上级性能。固然它在英语究竟知识(SimpleQA)方面落后于GPT-4 o和Claude-Sonnet-3.5,但它在汉语究竟知识(Chinese SimpleQA)方面凌驾了这些模型,突出了它在汉语究竟知识方面的上风。
[*]代码、数学和推理:
[*](1)DeepSeek-V3在所有非长CoT开源和闭源模型中的数学相干基准测试中达到了最先进的性能。值得注意的是,它乃至在特定的基准测试(如MATH-500)上优于o1-preview,证明白其强盛的数学推理本领。
[*](2)在编码相干使命方面,DeepSeek-V3成为LiveCodeBench等编码竞赛基准测试的最佳模型,巩固了其在该领域的领先地位。对于工程相干的使命,固然DeepSeek-V3的性能略低于Claude-Sonnet-3.5,但它仍然远远凌驾所有其他型号,在各种技术基准中表现出竞争力。
https://i-blog.csdnimg.cn/direct/4be46a1e46e146c7899ca2e313c862df.png DeepSeek-V3的性能 -
3.2 架构
DeepSeek-V3的根本架构仍然是Transformer框架。为了高效的推理和经济的练习,DeepSeek-V3还采用了MLA和DeepSeekMoE,这些都已经被DeepSeek-V2彻底验证过。与DeepSeek-V2相比,作者额外引入了一个无辅助丧失的负载均衡计谋(auxiliary-loss-free load balancing),以减轻由确保负载平衡的努力引起的性能降落。
https://i-blog.csdnimg.cn/direct/55acd9e97d5548f7a90c1472558cf5fe.png 团体架构 Multi-Head Latent Attention(多头潜在注意力)
对于注意力,DeepSeek-V3采用了MLA架构。令d表示嵌入维数,https://latex.csdn.net/eq?n_h表示注意力头部的数量,https://latex.csdn.net/eq?d_h表示每个头部的维数,https://latex.csdn.net/eq?h_t%20%5Cin%20R%5Ed表示给定注意力层处第t个令牌的注意力输入。MLA的核心是对注意键和值举行低秩联合压缩,以减少推理过程中的键值(KV)缓存:
https://latex.csdn.net/eq?%5Cbegin%7Bmatrix%7D%5Cmathbf%7Bc_t%5E%7BKV%7D%7D%3DW%5E%7BDKV%7Dh_t%2C%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%281%29%5C%5C%20%5Bk_%7Bt%2C1%7D%5EC%3Bk_%7Bt%2C2%7D%5EC%3B...k_%7Bt%2Cn_h%7D%5EC%5D%3Dk_t%5EC%3DW%5E%7BUK%7Dc_t%5E%7BKV%7D%2C%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%282%29%5C%5C%20%5Cmathbf%7Bk%5ER_t%7D%3DRoPE%28W%5E%7BKR%7Dh_t%29%2C%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%283%29%5C%5C%20k_%7Bt%2Ci%7D%3D%5Bk%5EC_%7Bt%2Ci%7D%3Bk_t%5ER%5D%2C%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%284%29%5C%5C%20%5Bv_%7Bt%2C1%7D%5EC%3Bv_%7Bt%2C2%7D%5EC%3B...v_%7Bt%2Cn_h%7D%5EC%5D%3Dv_t%5EC%3DW%5E%7BUV%7Dc_t%5E%7BKV%7D%2C%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%285%29%5Cend%7Bmatrix%7D
其中,https://latex.csdn.net/eq?c_t%5E%7BKV%7D%20%5Cin%20R%5E%7Bd_c%7D是键和值压缩后的潜在向量;https://latex.csdn.net/eq?d_c%5Cleft%20%28%20%5Cll%20d_hn_h%20%5Cright%20%29表示KV压缩维度;https://latex.csdn.net/eq?W%5E%7BDKV%7D%20%5Cin%20R%5E%7Bd_c%5Ctimes%20d%7D表示下采样矩阵;https://latex.csdn.net/eq?W%5E%7BUK%7D%2CW%5E%7BUV%7D%20%5Cin%20R%5E%7Bd_hn_h%5Ctimes%20d_c%7D分别是键和值的上采样矩阵;https://latex.csdn.net/eq?W%5E%7BKR%7D%20%5Cin%20R%5E%7Bd_h%5ER%5Ctimes%20d%7D是用于产生携带旋转位置嵌入(RoPE)的解耦键的矩阵; RoPE(·)表示应用RoPE矩阵的运算;[·; ·]表示concat。请注意,对于MLA,只有蓝框矢量(即上面粗体部分,https://latex.csdn.net/eq?c_t%5E%7BKV%7D和https://latex.csdn.net/eq?k_t%5E%7BR%7D)须要在生成期间被缓存,这导致KV高速缓存显著减少,同时保持与标准多头注意(MHA)相称的性能。
对于注意query,作者还实验了低秩压缩,这可以减少练习期间的激活影象:
https://latex.csdn.net/eq?%5Cbegin%7Bmatrix%7D%20c_t%5E%7BQ%7D%3DW%5E%7BDQ%7Dh_t%2C%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%286%29%5C%5C%20%5Bq_%7Bt%2C1%7D%5EC%3Bq_%7Bt%2C2%7D%5EC%3B...q_%7Bt%2Cn_h%7D%5EC%5D%3Dq_t%5EC%3DW%5E%7BUQ%7Dc_t%5E%7BQ%7D%2C%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%287%29%5C%5C%20%5Bq_%7Bt%2C1%7D%5ER%3Bq_%7Bt%2C2%7D%5ER%3B...q_%7Bt%2Cn_h%7D%5ER%5D%3Dq_t%5ER%3DRoPE%28W%5E%7BQR%7Dc_t%5EQ%29%2C%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%288%29%5C%5C%20q_%7Bt%2Ci%7D%3D%5Bq%5EC_%7Bt%2Ci%7D%3Bq_%7Bt%2Ci%7D%5ER%5D%2C%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%289%29%5Cend%7Bmatrix%7D
其中,https://latex.csdn.net/eq?c_t%5E%7BQ%7D%20%5Cin%20R%5E%7Bd_c%7B%7D%27%7D是query压缩后的潜在向量;https://latex.csdn.net/eq?d_c%7B%7D%27%5Cleft%20%28%20%5Cll%20d_hn_h%20%5Cright%20%29表示query压缩维度;https://latex.csdn.net/eq?W%5E%7BDQ%7D%2CW%5E%7BUQ%7D%20%5Cin%20R%5E%7Bd_hn_h%5Ctimes%20d_c%7B%7D%27%7D分别是query的下采样和上采样矩阵;https://latex.csdn.net/eq?W%5E%7BQR%7D%20%5Cin%20R%5E%7Bd_h%5ERn_h%5Ctimes%20d_c%7B%7D%27%7D是产生携带旋转位置嵌入(RoPE)的解耦query的矩阵。
末了,注意力查询(https://latex.csdn.net/eq?q_%7Bt%2Ci%7D)、键(https://latex.csdn.net/eq?k_%7Bj%2Ci%7D)和值(https://latex.csdn.net/eq?v_%7Bj%2Ci%7D%5EC)被组合以产生最终的注意力输出u:https://latex.csdn.net/eq?u_t
https://latex.csdn.net/eq?%5Cbegin%7Bmatrix%7D%20o_%7Bt%2Ci%7D%3D%5Csum_%7Bj%3D1%7D%5E%7Bt%7DSoftmax%28%5Cfrac%7Bq%5ET_%7Bt%2Ci%7Dk_%7Bj%2Ci%7D%7D%7B%5Csqrt%7Bd_h+d_h%5ER%7D%7Dv%5EC_%7Bj%2Ci%7D%29%2C%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%2810%29%5C%5C%20u_t%3DW%5EO%5Bo_%7Bt%2C1%7D%3Bo_%7Bt%2C2%7D%3B...%3Bo_%7Bt%2Cn_h%7D%5D%2C%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%2811%29%20%5Cend%7Bmatrix%7D
其中,https://latex.csdn.net/eq?W%5E%7BO%7D%20%5Cin%20R%5E%7Bd%5Ctimes%20d_hn_h%7D表示输出投影矩阵。
简朴来说:使用一个下采样矩阵生成较小尺寸的KV缓存,在生成的时候再使用一个上采样矩阵将保存的KV缓存上采样到原尺寸。如许做就可以大幅减少KV缓存,同时保持较好的性能。
https://i-blog.csdnimg.cn/direct/0896b96a308a4a138e706f0032b22b7a.png
-
DeepSeekMoE with Auxiliary-Loss-Free Load Balancing
根本架构:与传统的MOE架构如GShard,DeepSeekMoE使用更细粒度的专家,并将一些专家分离为共享专家。设https://latex.csdn.net/eq?u_t表示第t个令牌的FFN输入,我们计算FFN输出https://latex.csdn.net/eq?h_t%7B%7D%27如下:
https://latex.csdn.net/eq?%5Cbegin%7Bmatrix%7D%20h_t%7B%7D%27%3Du_t+%5Csum_%7Bi%3D1%7D%5E%7BN_s%7DFFN_i%5E%7B%28s%29%7D%28u_t%29+%5Csum_%7Bi%3D1%7D%5E%7BN_r%7Dg_%7Bi%2Ct%7DFFN_i%5E%7B%28r%29%7D%28u_t%29%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%2812%29%5C%5C%20g_%7Bi%2Ct%7D%3D%5Cfrac%7Bg_%7Bi%2Ct%7D%7B%7D%27%7D%7B%5Csum_%7Bi%3D1%7D%5E%7BN_r%7Dg_%7Bi%2Ct%7D%7B%7D%27%7D%2C%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%2813%29%5C%5C%20g_%7Bi%2Ct%7D%7B%7D%27%3D%5Cbegin%7Bcases%7Ds_%7Bi%2Ct%7D%2C%20%26%20%5Ctext%7B%20if%20%7D%20s_%7Bi%2Ct%7D%5Cin%20Topk%28%7Bs_%7Bj%2Ct%7D%7C1%5Cleq%20j%5Cleq%20N_r%7D%2CK_r%29%2C%20%5C%5C%200%26%20%5Ctext%7Botherwise%2C%20%7D%20%5Cend%7Bcases%7D%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%2814%29%5C%5C%20s_%7Bi%2Ct%7D%3DSigmoid%28u_t%5ETe_i%29%20%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%2815%29%5C%5C%20%5Cend%7Bmatrix%7D
其中,https://latex.csdn.net/eq?N_s和https://latex.csdn.net/eq?N_k分别表示共享专家和路由专家的数量; https://latex.csdn.net/eq?FFN%5E%7B%28s%29%7D_i%28%5Ccdot%20%29和https://latex.csdn.net/eq?FFN%5E%7B%28r%29%7D_i%28%5Ccdot%20%29分别表示第i个共享专家和第i个路由专家;https://latex.csdn.net/eq?K_r表示激活的路由专家的数量;https://latex.csdn.net/eq?g_%7Bi%2Ct%7D是第i个专家的门控值;https://latex.csdn.net/eq?s_%7Bi%2Ct%7D是令牌到专家的亲和度(token-to-expert affinity);https://latex.csdn.net/eq?e_i是第i个路由专家的核心向量;以及Topk(·,k)表示包括第t个令牌和所有路由专家计算的亲和度分数中的第k个最高分数的聚集。与DeepSeek-V2略有不同,DeepSeek-V3使用sigmoid函数来计算亲和度分数,并在所有选定的亲和度分数中应用归一化以产生门控值。
辅助无丧失负载平衡(Auxiliary-Loss-Free Load Balancing):对于MOE模型,不平衡的专家负载将导致路由崩溃(routing collapse),而且在具有专家并行性的场景中降低了计算效率。传统的办理方案通常依靠于辅助丧失以避免不平衡负载。然而,过大的辅助丧失将损害模型性能。为了在负载平衡和模型性能之间实现更好的平衡,我们开创了一种无辅助丧失的负载平衡计谋以确保负载平衡。具体来说,作者为每个专家引入一个毛病项https://latex.csdn.net/eq?b_i,并将其添加到相应的亲和力分数https://latex.csdn.net/eq?s_%7Bi%2Ct%7D中,以确定前K个路由:
https://latex.csdn.net/eq?g_%7Bi%2Ct%7D%7B%7D%27%3D%5Cbegin%7Bcases%7Ds_%7Bi%2Ct%7D%2C%20%26%20s_%7Bi%2Ct%7D+b_i%5Cin%20Topk%28%7Bs_%7Bj%2Ct%7D+b_j%7C1%5Cleq%20j%5Cleq%20N_r%7D%2CK_r%29%2C%20%5C%5C%200%26%20%5Ctext%7Botherwise%2C%20%7D%20%5Cend%7Bcases%7D%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%5C%3A%20%2816%29
请注意,偏置项仅用于路由。将与FFN输出相乘的门控值仍然是从原始亲和性分数https://latex.csdn.net/eq?s_%7Bi%2Ct%7D导出的。在练习过程中,我们不断地监控每一个练习步骤的整个批次上的专家负载。在每一步结束时,假如其对应的专家过载,则通过
页:
[1]