
DeepSeek核心架构-DeepSeekMoE:细粒度专家划分与共享专家隔离技术的深度解析!
图1 DeepSeek-V2&DeepSeek-V3基本架构。
DeepSeekMoE架构的提出源于DeepSeek发表的论文《DeepSeekMoE: Towards Ultimate Expert Specialization in Mixture-of-Experts Language Models》,在DeepSeek-V2、V3及R1中得到了更好的应用。
1.DeepSeekMoE关键技术
(1)DeepSeekMoE架构有两个关键思想:细粒度专家划分和共享专家隔离。细粒度专家细分以实现更高的专家专业化程度和更准确的知识获取,共享专家隔离以减少专家之间的知识冗余。
图2 DeepSeekMoE架构示意图。
(2)细粒度专家划分:专家数量有限的情况下,分配给特定专家的Token更可能包含各种类型的知识。因此,指定的专家将学习不同类型的知识,但很难同时利用这些知识。如果将每个Token送达到更多的专家中,各种类型的知识将在不同的专家中被解析和学习。在这种情况下,每个专家仍可以保持高度的专业化,且有助于实现跨专家的知识分布。
(3)共享专家隔离:传统路由策略中,分配给不同专家的Token可能蕴含一些通用知识或信息。不同的专家可能会在各自的参数中获得这些通用知识,从而导致专家参数的冗余。若有专门的共享专家来捕捉和整合上下文中的通用知识,将缓解其他路由专家之间的参数冗余。这种冗余参数的减少有助于由更专业的专家构建更加参数高效的模型。
为实现该目标,在细粒度专家划分的基础上进一步隔离一部分专家作为共享专家。无论路由模块如何,每个Token都将会被送入这部分共享专家。为保证恒定的计算成本,激活的路由专家将减少相应的数量,如图2(c)所示。
2.DeepSeekMoE计算原理
上述计算原理来源于DeepSeek-V3,相比于DeepSeek-V2略有不同。V3采用Sigmoid函数计算亲和力分数,而V2中使用的是Softmax函数。同时,V3中增加了为所有选定的亲和力分数应用归一化以生成最终门控值的方法。
(2)需要注意的是,除每次选定的个激活路由专家外,其他路由专家的门控值为0,即不激活。
本文转载自 南夏的算法驿站,作者: 赵南夏
