Why is MoE
在现有的深度神经网络方法中,针对模型的输入,所有的参数都会参与计算。在预训练模型参数量变的越来越大的情况下,计算资源的需求也会变得巨大。而Mixture of Experts(MoE)改变了这种情况。MoE可以为不同的输入选择性地激活模型中的一部分参数参与计算,这样在增大模型参数量的同时,计算量可以维持相对不变。
一种典型的MoE框架由一个门控子网络(Gating network)和多个专家子网络(Expert odel)构成,门控网络为输入x计算各个专家网络输出所占的比重,然后采取加权求和的方式得到最终的输出。
另有使用门控子网络对输入进行路由选择,即根据各个专家网络对应的门控值(gating value),选择出Top-K个专家子网络参与当前输入的实际计算,这样可以显著降低计算量。
本文就基于MoE的思想,将Transformer中的前馈全连接子层(Feed-Forward Network,FFN)视为Expert,使用多个FFN代替原来单一的FFN,并且使用了最简单的路由选择策略,将K设置为1,即不同的输入只会选择一个FFN进行计算。这样相比较于原来的结构,计算量只增加了路由选择的计算量,而新增的计算量相比较于原来的计算量而言可以忽略,这样就实现了增大模型参数的同时维持相对不变的