MoE(Mixture of Experts)は、多数の専門家(Expert)のうちルータが一部だけを起動するニューラルネットの設計です。パラメータ総数は巨大でも、推論時に動くのは選ばれたExpertだけ——Mixtral記事が具体モデルなのに対し、MoEは「大きい箱の中で誰を呼ぶか」というアーキテクチャ思想そのもの——本記事は専門家の人数暗記より、密モデルとの決定的な違いに焦点を当てます。
スパース活性化の発想
密(Dense)モデルは、入力のたびに全層・全パラメータが計算に使われます。賢くなるほどモデルを太くする——コストも太くなる、というトレードオフがありました。
MoEの答えは条件付き計算です。「この入力にはExpert 3と7」「次のトークンにはExpert 1と5」——必要な専門家だけを呼ぶ。総容量(パラメータの蓄え)は大きいのに、実効コストはスパース——これがMixture of Expertsの核心です。
Expertとルータ
| 部品 | 役割 |
|---|---|
| Expert | 並列な部分ネットワーク(多くはFFN)。それぞれ異なるパターンを学習しうる |
| Router(Gate) | 入力ごとにExpertへのスコアを付け、上位k個を選択 |
| 合成 | 選ばれたExpertの出力を重み付きで足し合わせる |
TransformerのFFN層をMoE化するのがLLMでの典型——Attentionは共有し、フィードフォワードだけを専門家集合に置き換える設計が多いです(TF-0108のブロック構造)。
密モデルとの対比
| 観点 | 密モデル | MoE |
|---|---|---|
| 活性化 | 全パラメータ | 一部のExpert |
| 総パラメータ | =実効サイズに近い | 総数>>実効計算量 |
| メモリ | モデルサイズに比例 | 全Expertを保持する必要あり(G-180) |
| 例 | Mistral 7B、LLaMA | Mixtral、超大規模LLMの一部 |
「パラメータ数が多い=遅い」はMoEでは成り立ちにくい——総容量と1トークンあたりのFLOPsを分けて答えるのが試験の要点です。
大規模LLMでの再注目
MoEの概念は以前から存在しますが、基盤モデル時代に推論効率の課題と再び強く結びつきました(G-396)。
- 学習 — ルータとExpertが協調して「誰が何を得意とするか」を学ぶ
- 推論 — ルータが少数Expertを選び、計算を節約
- 課題 — 負荷分散(特定Expertばかり使われる)、メモリ帯域、実装の複雑さ
- 関連効率化 — KVキャッシュ、GQAなどと併用されることも
MoEはモデル名ではなく設計パターン——Mixtralはその実装例の一つです。
試験で押さえるポイント
- 定義 — Mixture of Experts=ルータが選ぶ専門家集合のスパース設計
- 目的 — 大規模パラメータと推論効率の両立
- 仕組み — 入力ごとに少数のExpertだけ活性化
- 対比 — 密モデル、Mixtral(具体モデル)、エキスパートシステム(古典AI)
すり替えに注意
| 誤った説明 | 正しい理解 |
|---|---|
| MoE=Mixtral | 設計パターン vs 具体モデル |
| MoE=エキスパートシステム | ニューラルExpert vs ルールベースAI(TF-308) |
| MoE=アンサンブル学習 | 層内の条件付きExpert vs 複数モデルの投票 |
| MoE=LoRA | アーキテクチャ設計 vs 軽量ファインチューニング |
| 総パラメータ=毎回の計算量 | スパース活性化で実効コストは小さくなりうる |
よくある質問
MoEは何をする設計ですか?
複数の専門家(Expert)サブネットワークを並べ、ルータ(ゲート)が入力に応じてそのうち少数だけを選んで計算するアーキテクチャです。全パラメータを毎回使う密モデルより、容量を増やしつつ推論コストを抑えやすい点が特徴です。
MoEとMixtralは同じですか?
同じではありません。MoEはMixture of Expertsというアーキテクチャ設計の名称です。MixtralはMistral AIが公開したMoE型の具体的なLLMモデル系列です。設計思想と製品名の関係として整理します。
MoEとエキスパートシステムは同じですか?
同じではありません。MoEのExpertはニューラルネットの部分ネットワークを指します。エキスパートシステムはルールベースの知識と推論を用いる古典的AIの枠組みです。どちらもExpertという語を含みますが、深層学習の部品設計 vs シンボリックAIの別物です。