# Expert Choice Routing
## 定義
Expert Choice Routingは、トークンがエキスパートを選ぶ通常のMoEルーティングと異なり、各エキスパートが処理するトークンを選ぶルーティング方式である。エキスパートごとの受け入れ容量を先に決められるため、トークンの割り当て不均衡を構造的に抑えることを狙う。(Source: [[@2024__Preferred Networks__1兆 (1T) パラメータ規模のLLMの事前学習検証]])
## 1T級MoEとの関係
[[Preferred Elements]]は、通常のload balancing lossの係数調整と並ぶ代替案としてExpert Choice Routingを挙げた。記事では、学習速度などの観点から今回の1T級検証には採用していない。したがって、本記事はExpert Choice Routingの有効性を1T級で実証したものではなく、比較対象になりうる設計として位置づけたものである。
## 横断的知見
- **MoEの負荷分散は、損失で誘導する方法と容量を構造で固定する方法に分かれる**: [[負荷分散]]におけるSwitch Transformer系の補助損失は学習結果を均等化するのに対し、Expert Choice Routingはエキスパート側の選択で容量制約を組み込む。Hash Layersはさらに別の方向としてルーティングをハッシュ関数へ固定する。(Source: [[@2024__Preferred Networks__1兆 (1T) パラメータ規模のLLMの事前学習検証]], [[負荷分散]], [[Hash Layers]])
- **大規模MoEの比較では性能だけでなく実効効率が選択条件になる**: 記事はExpert Choice Routingを採用しなかった理由として学習速度を挙げている。負荷不均衡を解消する手法でも、通信・メモリアクセス・ルーティング計算のコストを含めて評価しなければならない。(Source: [[@2024__Preferred Networks__1兆 (1T) パラメータ規模のLLMの事前学習検証]], [[LLM分散学習]])
## 未解決の問い
- Expert Choice Routingは1T級で学習型Routerの崩壊を防げるか。
- Hash Layersと比較したとき、負荷均衡、エキスパート専門化、train loss、下流性能はどう異なるか。
- 固定容量によるtoken droppingの抑制が、ルーティングの柔軟性や通信量へ与える影響はどの程度か。
## 関連
- 上位概念: [[Mixture-of-Experts]]
- 関連概念: [[負荷分散]] / [[条件付き計算]] / [[LLM分散学習]]
- 比較方式: [[Hash Layers]]
- 実証ソース: [[@2024__Preferred Networks__1兆 (1T) パラメータ規模のLLMの事前学習検証]]
## 出典
- [[@2024__Preferred Networks__1兆 (1T) パラメータ規模のLLMの事前学習検証]]
- [Expert Choice Routing](https://arxiv.org/abs/2202.09368)