【エムオーイー】

MoE(Mixture of Experts) とは?

最終更新:
💡 複数の計算担当から、入力に応じて担当を選ぶ

複数のニューラルネットワーク(エキスパート)の出力を、入力に応じて組み合わせる構造。LLMで使われる疎なMoEでは、ルーターが一部のエキスパートを選んで計算する。

📌 このページのポイント
疎なMoE:一部の担当を選んで計算 トークンの表現 ルーター Expert 1 Expert 2 Expert 3 Expert 4 Expert 5 Expert 6 Expert 7 Expert 8 出力を重み付き合成 緑:今回選択 / 灰:今回は使わない 選ぶ担当は、層・トークンごとに変わる
Mixtral 8x7B型の1層・1トークンを簡略化。選択番号は例です。全モデルを2つのエキスパートだけで処理する図ではありません。
ひよこ ひよこ
MoEってなに?エキスパートって誰のこと?
ペンギン先生 ペンギン先生
AIモデル内で計算を担当するニューラルネットワークのことだよ。複数の担当の出力を組み合わせるんだ。ただし「数学専門」「翻訳専門」のように、人が分野を決めたチームとは限らないよ。
ひよこ ひよこ
全部のエキスパートを使わないの?もったいなくない?
ペンギン先生 ペンギン先生
LLMで使われる疎なMoEでは、一部だけを選んで動かすよ。Mixtral 8x7Bなら、各層でトークンごとに8つから2つを選ぶんだ。1回の質問全体を、ずっと同じ2つだけで処理するという意味ではないよ。
ひよこ ひよこ
ルーターってどうやって担当を決めてるの?
ペンギン先生 ペンギン先生
入力の表現からスコアを出し、そのスコアで担当を選ぶんだ。Mixtralではルーターとエキスパートを一緒に学習させるよ。選んだ担当の出力は重みを付けて組み合わせる。常に最適な担当を見抜けるという保証ではないんだ。
ひよこ ひよこ
エキスパートを増やせば、安く賢くできる?
ペンギン先生 ペンギン先生
計算量を抑えつつ全体のパラメータを増やしやすいのが利点だね。でも全エキスパートの重みを保持するメモリや、処理の振り分け・データ移動にも費用がかかる。速さや品質は、モデルと実行環境によって変わるよ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「MoE」って出てきたら「複数の計算担当を、入力に応じて組み合わせるAIの構造」と思えばだいたいOK!
📖 おまけ:英語の意味
「Mixture of Experts」 = 専門家の混合
💬 Mixtureは「混合」、Expertsは「専門家たち」。ここでの専門家は、人や独立したチャットAIではなく、モデル内の計算を担当するネットワークを指すよ。

参考資料

← 用語集にもどる