MOE全称:Mixture of expert, 是大模型的结构之一
概念梳理
先来看看deepseek的回答,什么是MOE?
现在比较火热的deepseekV2模型就是用的MOE结构
1. 详解MOE的核心架构
MOE的核心思想在于数据流转过程中的加入了一层专家网络,这一层由门控网络(Gating Network)和一组专家模型(Experts)组成
整个工作流程如下:
- 数据分割
数据首先会被分成多个token
2)门控网络
当每组数据进入专家网络时,首先会经过门控网络
3)专家选择
门控网络根据输入数据的特征,将数据分配给一个或多个专家模型。每个专家模型专注于处理一部分数据,“让专业的人做专业的事”
4)输出融合
所有专家的输出结果汇总,系统进行加权融合,得到最终输出
2.MOE的详细步骤设计
3.MOE和Dense模型的对比
4. MOE的优势
更高的吞吐量:由于激活单元少,MOE模型在处理大量并发查询时表现出更高的吞吐量
较低的时延:只需加载部分激活的专家模型,内存访问时间减少,从而降低时延
计算更高效:对于单词查询,MOE模型需要从内存中读取的参数更少,在计算效率上优于Dense模型
性能优越:MOE模型能够在保持小型模型计算效率的同时,提供与大模型Dense模型相近的性能,例如,Mixtral MOE
灵活性:可以将训练好的Dense模型转换为MOE,使其具有小型模型的高效计算和大Dense模型的性能
5.MOE的挑战
由于MOE需要将所有专家模型加载到内存中,对显存压力大,涉及复杂的算法和高昂的通信成本,在资源受限的设备上比较难实现。
6. MOE化
将Dense模型转换为MoE的过程叫MOE化,目的就是要保留Dense模型的强大性能,同时通过MoE的结构实现更高效的计算
7.Dense模型和MOE模型的区别