混合エキスパート モデル (MoE) は、複数のエキスパート ネットワーク (学習者) を使用して問題空間を均一な領域に分割する機械学習手法です。
混合エキスパート モデル (MoE) の大きな利点は、高密度モデルが必要とするよりもはるかに少ない計算リソースで効率的に事前トレーニングできることです。これは、同じ計算予算内でモデルまたはデータセットのサイズを大幅に増加できることを意味します。特に事前トレーニング段階では、ハイブリッド エキスパート モデルは、多くの場合、高密度モデルよりも早く同じ品質レベルに到達できます。
Transformer モデルのコンテキストでは、MoE は主に 2 つの部分で構成されます。
- 疎な MoE 層: 従来の高密度フィードフォワード ネットワーク (FFN) 層を置き換えます。 MoE 層には多数の「エキスパート」 (8 人など) が含まれており、各エキスパートは独立したニューラル ネットワークです。これらの専門家は通常 FFN ですが、より複雑なネットワークや MoE 自体である場合もあり、MoE の階層構造を形成します。
- ゲートネットワークまたはルーター: どのトークンがどのエキスパートに割り当てられるかを決定するために使用されます。たとえば、次の図では、「More」トークンが 2 番目のエキスパートに割り当てられ、「Parameters」トークンが 1 番目のネットワークに割り当てられています。トークンを複数のエキスパートに割り当てることができることは注目に値します。トークンを適切な専門家に効率的に割り当てる方法は、MoE テクノロジーを使用する際に考慮する必要がある重要な問題の 1 つです。このルーターは、モデルの残りの部分とともに事前トレーニングされた学習可能なパラメーターのセットで構成されています。
画像出典: スイッチトランスフォーマーの紙 MoE レイヤーの例
MoE (ハイブリッド エキスパート モデル) の設計思想は次のとおりです。Transformer モデルでは、各 FFN (フィードフォワード ネットワーク) 層が、ゲート ネットワークと複数の「エキスパート」で構成される MoE 層に置き換えられます。
混合エキスパート モデルの課題 (MoE)
混合エキスパート モデル (MoE) には、高密度モデルと比較してより効率的な事前トレーニングや高速な推論など、いくつかの重要な利点がありますが、いくつかの課題もあります。
- トレーニングチャレンジ: MoE はより効率的な計算による事前トレーニングを実現できますが、微調整段階での汎化能力が不十分であるという問題に直面することが多く、長い間過学習の傾向がありました。
- 推理チャレンジ: MoE モデルには多数のパラメータがある可能性がありますが、推論中にそれらの一部のみが使用されるため、同じ数のパラメータを持つ高密度モデルよりも推論が速くなります。ただし、このモデルではすべてのパラメータをメモリにロードする必要があるため、メモリ要件が非常に高くなります。 Mixtral 8x7B のような MoE を例にとると、47B パラメータを持つ高密度モデルに対応するには十分な VRAM が必要です。 8 x 7B = 56B ではなく 47B である理由は、MoE モデルでは FFN 層のみが独立したエキスパートとみなされ、モデルの他のパラメーターは共有されるためです。さらに、トークンごとに 2 人のエキスパートのみが使用されると仮定すると、推論速度 (FLOP 単位) は、2x7B の行列乗算計算を実行しますが、一部のレイヤーが共有されるため、(14B モデルの代わりに) 12B モデルを使用した場合と同様になります。
参考文献
【1】https://huggingface.co/blog/moe