AI・機械学習
上級

Expert Parallelism(エキスパートパラレリズム)

Mixture-of-Experts(MoE)アーキテクチャにおいて、各エキスパートネットワークを異なるデバイスに配置して並列実行する分散戦略。エキスパート数のスケーリングとメモリ効率を両立する。

0 回閲覧
0 いいね

Expert Parallelism とは

Expert Parallelism(EP)は、Mixture-of-Experts(MoE)モデルにおけるエキスパートネットワークを複数の GPU に分散配置する並列化手法である。DeepSeek-V3(671B パラメータ、256 エキスパート)や Mixtral 8x22B のような大規模 MoE モデルの学習・推論に不可欠な技術となっている。

MoE と Expert Parallelism の関係

MoE アーキテクチャでは、各 Transformer レイヤーの FFN(Feed-Forward Network)部分が複数のエキスパートに分割され、ゲーティングネットワーク(Router)が入力トークンごとに Top-K のエキスパートを選択する。全エキスパートを単一 GPU に載せるとメモリが不足するため、EP でエキスパートを分散配置する。

モデル総パラメータアクティブパラメータエキスパート数EP 構成
Mixtral 8x7B46.7B12.9B88 GPU(1 expert/GPU)
Mixtral 8x22B141B39B88 GPU
DeepSeek-V2236B21B16016-32 GPU
DeepSeek-V3671B37B25632-64 GPU

EP の動作メカニズム

All-to-All 通信

EP の中核は All-to-All 通信である。各 GPU 上のトークンがルーターで振り分けられた後、該当エキスパートが配置されている GPU へトークンが転送される。エキスパートの計算後、結果が元の GPU に返送される。

処理フロー:

  1. 各 GPU でルーターがトークンのエキスパート割り当てを決定
  2. All-to-All 通信でトークンを担当エキスパートの GPU へ送信
  3. 各 GPU がローカルエキスパートでトークンを処理
  4. All-to-All 通信で結果を元の GPU へ返送
  5. ゲーティング重みで結果を加重合算

ロードバランシング問題

エキスパートの選択が偏ると、特定の GPU に負荷が集中する「ロードインバランス」が発生する。これを防ぐため、Auxiliary Loss(補助損失)やトークンドロップ(容量超過トークンの破棄)を使用する。DeepSeek-V3 では Auxiliary-Loss-Free な手法を採用し、品質劣化なしでバランシングを実現している。

EP と他の並列戦略の組み合わせ

実際の大規模 MoE 学習では、EP は単独では使われず、TP(テンソル並列)やDP(データ並列)と組み合わせる。

  • EP + DP: 最も基本的な構成。エキスパートを EP で分散し、データを DP で分割
  • EP + TP + DP: DeepSeek-V3 の学習構成。Attention 層は TP、エキスパートは EP、全体に DP を適用
  • EP + PP: パイプライン並列との組み合わせ。レイヤー間はPP、レイヤー内エキスパートは EP

推論時の EP

推論時の EP は学習時と異なる課題がある。バッチサイズが小さい場合、All-to-All 通信のオーバーヘッドが相対的に大きくなる。vLLM や TensorRT-LLM では EP を推論にも対応しており、Mixtral 8x7B を 8 GPU でエキスパート分散推論できる。

通信最適化テクニック

EP の性能は GPU 間通信帯域に大きく依存する。NVSwitch や InfiniBand による高帯域接続が前提となるほか、通信と計算のオーバーラップ(パイプライニング)で実効スループットを向上させる。DeepSeek-V3 では DualPipe と呼ばれる通信隠蔽技術を採用している。

FAQ

Q1: Expert Parallelism はDense モデルにも使えるか?

A1: EP は MoE アーキテクチャ専用の並列戦略であり、Dense モデルには適用できない。Dense モデルの FFN を分散するにはテンソル並列(TP)を使用する。

Q2: エキスパート数と GPU 数は一致させる必要があるか?

A2: 必ずしも一致させる必要はない。1 GPU に複数エキスパートを配置することも、1 エキスパートを複数 GPU に分割(EP + TP)することも可能。ただし、エキスパート数が GPU 数の倍数だとロードバランスが取りやすい。

Q3: EP のスケーリング限界は?

A3: All-to-All 通信量がエキスパート数とトークン数に比例するため、数百エキスパート・数百 GPU 超では通信がボトルネックになる。DeepSeek-V3 は 256 エキスパート × 2048 GPU で学習を完遂しており、現時点での実用上限に近い。