DeepSeek为什么采用与主流大模型不一样的MoE架构?一文搞懂什么是MoE模型

在 DeepSeek 官网上看到,DeepSeek-V3、V2.5 版本都用了 MoE 架构。但像 Qwen、LLama 模型,用的却是 Dense 架构,也就是传统的 Transformer 架构。这两种架构有个很明显的区别。DeepSeek-V3 版本总参数量高达 6710 亿,可每次计算激活的参数量,也就是真正参与到计算里的参数,只有 370 亿,是总参数量的5.5%。但 Qwen 和 LLama 模型就不一样了,它们每次计算激活的参数量,就是整个模型的参数量,没有 “打折”。为啥会出现这种差异呢?

本文将深入探讨 MoE 模型的核心概念、与传统大模型的关键区别、内部工作机制、优势与挑战,并展望其未来发展趋势,让读者能对 MoE 模型有个详细的了解,解答上述疑惑。

在这里插入图片描述

一、什么是 MoE 模型,跟传统大模型比较有什么区别?

什么是 MoE 模型?

当我们人遇到一个包括了多个领域知识的复杂问题时,我们该使用什么样的方法来解决呢?最简单的办法就是把各个领域的专家集合到一起来攻克这个任务,当然我们事先要把不同的任务先分离出来,这样才便于分发给不同领域的专家,让他们来帮忙处理,最后再汇总结论。

混合专家模型(Mixture of Experts:MoE)正是基于这样的理念,它由多个专业化的子模型(即“专家”)组合而成(注意不是多个独立的子模型,而是一个模型内部划分多个网络结构),每一个“专家”都处理其擅长的领域内的任务。而决定哪个“专家”参与解答特定问题的,是一个称为“门控网络”的机制,相当于一个路由器。

混合专家模型(MoE)的核心思想是通过选择性激活子模型(专家模型)来提高模型的计算效率和表达能力。MoE 模型相较于传统的大模型,在结构上存在差异,并且可以通过不同的方式优化计算资源的使用,提升模型的泛化能力和计算效率。

MoE 架构的基本原理非常简单明了,它主要包括两个核心组件:GateNet 和 Experts。GateNet 的作用在于判定输入样本应该由哪个专家模型接管处理。而 Experts 则构成了一组相对独立的专家模型,每个专家负责处理特定的输入子空间。

在这里插入图片描述

门控网络(Gating Network):

门控网络负责决定在每次输入时哪些专家将被激活(即哪些专家会参与计算)。它通过一个类似于分类的机制,根据输入的特征向量为不同的专家分配权重。

专家网络(Experts):

MoE 模型包含多个“专家”(专家网络),每个专家通常是一个子模型,可以是神经网络的一个子模块。每个专家可能有不同的能力或专长,能够处理不同类型的输入数据。

例如,在一个语言模型中,不同的专家可以擅长处理不同的语言任务或不同的语言特征。

跟传统大模型比较有什么区别?

在 MoE 系统中,传统 Transformer 模型中的每个前馈网络 (FFN) 层替换为 MoE 层,其中 MoE 层由两个核心部分组成: 一个门控网络和若干数量的专家网络。

在这里插入图片描述

传统 Transformer 和 MoE 模型各个层级比较:

在这里插入图片描述

MoE 模型与传统大模型的典型区别:

MoE 模型:每次输入时,只会激活一小部分专家(例如,10% 的专家),而其他专家不参与计算。这意味着,MoE 模型可以在保持模型参数量很大的情况下,大幅度减少计算量,提高了计算效率和资源利用。

传统大模型:在传统的大型神经网络(如 Transformer)中,所有层和所有节点在每次前向传播时都会参与计算。虽然这些模型参数也可能非常庞大,但每次输入都需要对所有的参数进行计算,即使部分参数的贡献很小,因此也会浪费计算资源。

二、MoE 的工作原理是什么?

MoE 主要的变化点在 前馈网络(FFN) 层,它被 MoE 机制取代,包括:

1、专家网络(Experts):多个前馈网络(FFN),相当于多个可选的专家,每个专家结构类似于普通 FFN。

2、门控网络(Gating Network):决定在每次输入时,选择哪些专家进行计算,并分配权重。

3、专家混合(Mixture of Experts):选定的专家执行计算,并对其输出进行加权合并。

其具体工作流程如下:

S1、输入 token(与传统大模型一致):

输入的 token 会首先经过标准的 token embedding 和 位置编码 处理,转化为对应的向量表示。

S2、多头自注意力(MHSA)层 (与传统大模型一致)

在多头自注意力层中,token 会计算自己与其他 token 的注意力权重,捕获序列中的长距离依赖关系。这一层的输出是增强了上下文信息的 token 表示,每个 token 在经过多头自注意力层后,会有一个上下文信息丰富的表示,通常是一个向量 h(比如维度为 768 或 1024)。这个向量包含了该 token 在整个句子中上下文的信息,反映了这个 token 和其他 token 的关系。

S3、MoE 层(变化的地方,包含门控网络、专家网络、专家混合)

2.1、门控网络根据输入特征选择专家

门控网络的任务是将这个 token 的表示 h 输入到一个全连接网络,然后生成一组权重分布,这些权重分布表示了每个专家的“重要性”,即哪个专家适合处理这个 token。门控网络输出的是一个概率分布,

比如 [0.6, 0.3, 0.1, 0.0],意味着:

  • 专家 1 的激活概率是 0.6

  • 专家 2 的激活概率是 0.3

  • 专家 3 的激活概率是 0.1

  • 专家 4 没有被激活(激活概率为 0.0)

根据门控网络的输出选择专家,在实际的操作中,门控网络会通过 Top-k 选择策略 从中挑选出前 k 个专家(通常是 2 到 4 个)(这个参数可以人工配置)。比如,如果 k=2,那么就会选择 专家 1 和 专家 2。

如何选择专家?概率最大者优先:门控网络会按激活概率大小来排序,选择前 k 个专家。例如,[0.6, 0.3, 0.1] 中,专家 1 和专家 2 会被选中,因为它们的概率较大。

2.2、专家计算

被选中的专家会分别对这个 token 执行前馈计算,每个专家会根据它自己的网络参数对输入进行处理。

2.3、加权合成输出最后

专家的输出会按门控网络给出的权重进行加权融合。

例如,如果门控网络的输出是 [0.6, 0.4],那么专家 1 和专家 2 的输出将按 0.6 和 0.4 的比例进行加权求和,得到最终的 token 输出。

举个例子:门控网络是如何根据 token 选择专家

假设我们有一个 MoE 模型,包含 4 个专家,每个专家擅长处理不同的任务:

  • 专家 1 擅长处理情感分析任务(比如“开心”,“悲伤”)

  • 专家 2 擅长处理命名实体识别(NER)任务(比如识别“人名”,“地点名”)

  • 专家 3 擅长处理语法分析任务(比如判断句子结构)

  • 专家 4 擅长处理机器翻译任务(比如“英语到法语”的翻译)

现在,假设我们有一个输入句子:“我今天很开心”。

1、经过多头自注意力层后,我们得到了 token “开心” 的表示 h,这个 h 包含了它在句子中的上下文信息,表示它的语义是“情感积极”。

2、门控网络对 token h 进行处理,并输出一个 概率分布:[0.7, 0.2, 0.05, 0.05]这意味着,门控网络认为 token “开心” 最需要的处理是情感分析,所以它给 专家 1(情感分析)分配了 0.7 的高概率。同时,专家 2 和专家 3 的概率较低,意味着它们对这个 token 的处理影响较小。

3、选择前 k=2 个专家,根据门控网络输出的概率:专家 1(情感分析)和专家 2(命名实体识别)会被选中,专家 3 和专家 4 被排除。

4、专家计算专家 1 处理“开心”这个 token,识别出它的情感是积极的,产生相关的输出。专家 2 处理“开心”时,可能会识别出它在上下文中作为一个情感表达的词。

5、加权合成输出最后,专家 1 和专家 2 的输出会根据门控网络给出的权重进行加权合成。因为专家 1 的权重是 0.7,而专家 2 的权重是 0.2,所以最终输出会更加倾向于专家 1 的处理结果。

三、MoE 模型有什么优势和挑战?

MoE 模型相比传统 Transformer 模型的优势

1、计算更高效:MoE 只激活部分专家,而不是整个 FFN 层,使得推理时计算量更小,减少算力消耗。

2、可扩展性更强:通过增加专家数量,而不增加计算量,就能增强模型能力。

3、泛化能力强:MoE 的门控网络可以根据不同的输入选择合适的专家,从而让模型在处理不同任务时具备更强的适应能力。

MoE 模型也存在一些挑战

1、训练困难:由于大部分专家在每个输入上都不被激活,模型的训练效率可能受到影响。此外,门控网络的设计和优化也可能较为复杂。

2、专家不平衡问题:在训练过程中,某些专家可能会被频繁激活,而其他专家则很少被激活,这会导致一些专家在训练过程中难以学习到有用的表示。

3、负载均衡问题:为了确保不同专家都能有效学习和推理,可能需要对专家进行负载均衡,即确保每个专家的计算资源得到均衡分配

基于上述MoE优势,笔记认为这个也是 DeepSeek 拥有较低成本以及比肩openai性能的一个重要原因:

DeepSeek 选择 MoE 架构提高计算效率并降低成本,虽然拥有千亿级别的参数量,但是通过每次只激活 8 个专家来进行推理计算,使得计算量和能耗得到显著降低,同时保留了强大的模型能力。

同时在 MoE 上,DeepSeek 进行了一些关键优化:

1、门控网络优化:通过改进门控机制,DeepSeek 能够更加智能地选择合适的专家,避免了部分专家被过度调用而导致的专家不平衡问题。

2、专家平衡控制:在训练过程中,通过更精细的调度策略,确保专家的负载更加均衡,避免了某些专家被“冷启动”或长时间闲置的问题。

3、动态计算资源分配:DeepSeek 能够根据不同的任务和输入数据动态调整计算资源,使得系统在不同场景下都能达到最佳性能和成本效益平衡。

这些优化使得 DeepSeek 在使用 MoE 架构时,能够高效利用计算资源,提升推理速度,同时保持很强的任务适应性。

四、总结

在本文中,我们详细对比了 MoE(Mixture of Experts)模型 和传统的 Transformer 模型,MoE 模型通过引入专家网络 和门控机制,在推理时,MoE 仅激活一部分专家,从而减少了计算开销,并能够在保持大参数量的同时,提高计算效率。与此相对,传统 Transformer 模型每次计算时都需要对整个网络进行全量计算,计算量大,效率相对较低。

此外,MoE 模型具有 更高的灵活性,能够适应多样化的输入和任务。通过动态选择合适的专家,MoE 可以根据不同的输入特征进行优化处理,因此具有更强的泛化能力。

然而,MoE 的训练过程较为复杂,面临专家不平衡和 门控网络优化 等问题,需要更精细的设计与调优,对使用者的技术要求高。

未来,MoE 模型在性能和效率上肯定会有大突破。随着技术发展,门控网络会更智能,精准选专家,减少计算浪费 (DeepSeek 目前优化的方向)。


五、如何系统学习掌握AI大模型?

AI大模型作为人工智能领域的重要技术突破,正成为推动各行各业创新和转型的关键力量。抓住AI大模型的风口,掌握AI大模型的知识和技能将变得越来越重要。

学习AI大模型是一个系统的过程,需要从基础开始,逐步深入到更高级的技术。

这里给大家精心整理了一份全面的AI大模型学习资源,包括:AI大模型全套学习路线图(从入门到实战)、精品AI大模型学习书籍手册、视频教程、实战学习、面试题等,资料免费分享

在这里插入图片描述

1. 成长路线图&学习规划

要学习一门新的技术,作为新手一定要先学习成长路线图方向不对,努力白费

这里,我们为新手和想要进一步提升的专业人士准备了一份详细的学习成长路线图和规划。可以说是最科学最系统的学习成长路线。
在这里插入图片描述

2. 大模型经典PDF书籍

书籍和学习文档资料是学习大模型过程中必不可少的,我们精选了一系列深入探讨大模型技术的书籍和学习文档,它们由领域内的顶尖专家撰写,内容全面、深入、详尽,为你学习大模型提供坚实的理论基础(书籍含电子版PDF)

在这里插入图片描述

3. 大模型视频教程

对于很多自学或者没有基础的同学来说,书籍这些纯文字类的学习教材会觉得比较晦涩难以理解,因此,我们提供了丰富的大模型视频教程,以动态、形象的方式展示技术概念,帮助你更快、更轻松地掌握核心知识

在这里插入图片描述

4. 2024行业报告

行业分析主要包括对不同行业的现状、趋势、问题、机会等进行系统地调研和评估,以了解哪些行业更适合引入大模型的技术和应用,以及在哪些方面可以发挥大模型的优势。

在这里插入图片描述

5. 大模型项目实战

学以致用 ,当你的理论知识积累到一定程度,就需要通过项目实战,在实际操作中检验和巩固你所学到的知识,同时为你找工作和职业发展打下坚实的基础。

在这里插入图片描述

6. 大模型面试题

面试不仅是技术的较量,更需要充分的准备。

在你已经掌握了大模型技术之后,就需要开始准备面试,我们将提供精心整理的大模型面试题库,涵盖当前面试中可能遇到的各种技术问题,让你在面试中游刃有余。

在这里插入图片描述

全套的AI大模型学习资源已经整理打包,有需要的小伙伴可以微信扫描下方CSDN官方认证二维码,免费领取【保证100%免费

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值