WHY A TRILLION-PARAM MODEL IS FAST

全員でやらず、担当だけ動かす

ふつうのモデルは、どんなトークンにも全パラメータを使います。じつは大きな無駄。 そこで中身をたくさんの「専門家」に分け、トークンごとに担当の数人だけを動かす—— 巨大なのに軽い「専門家混合(MoE)」を、5つのステップで解き明かします。

はじめる ↓
SCROLL
STEP 01

密なモデルの、もったいなさDENSE = EVERYONE WORKS

ふつうの(密な)モデルでは、1トークンが層を通るたびに全パラメータを丸ごと使います。 「の」のような簡単なトークンも、「光合成」のような難しいトークンも、同じ計算量。 能力を上げようとパラメータを増やすほど、1トークンの計算もどんどん重くなる——この直結が壁でした。

DENSE BLOCK — どのトークンも全部を使う

STEP 02

一つの塊を、専門家に分けるMANY EXPERTS

発想の転換。大きな一枚の計算ブロックを、小さな「専門家」を何人も並べた形に置き換えます。 専門家はそれぞれ得意分野を(なんとなく)持つように育つ——コードが得意な人、数字が得意な人、記号が得意な人…。 総パラメータはむしろ増えます。でも次のステップで、使うのはごく一部になります。

EXPERTS — 得意分野を持つ小さな専門家たち

※「得意分野」は説明用のイメージ。実際は学習の中で自然に分かれていきます。

STEP 03

ルーターが、担当を選ぶTHE ROUTER / GATING

司令塔となる小さなルーター(ゲート)が、トークンを見て 「この子は誰に任せるか」を採点します。点数の高い上位数人(ふつうは2人)だけが起動し、 残りの専門家は眠ったまま。トークンをクリックして、誰が呼ばれるか見てください。

ROUTING — トークンごとに、上位2人の専門家だけ起動

STEP 04

容量は巨大、計算は小さいHUGE CAPACITY, TINY COMPUTE

ここで魔法が起きます。総パラメータは専門家の人数ぶんまで膨らませられるのに、 1トークンが実際に使うのは選ばれた数人ぶんだけ。 だから「容量は1兆パラメータ級・計算は小型モデル並み」が両立する。人数と起動数を変えて、その差を見てください。

PARAMS — 総容量 vs 1トークンが使う量

専門家の人数 N 64
起動する数 top-k 2
STEP 05

難しさ——偏り、そして現実LOAD BALANCING & REALITY

MoEの泣きどころは負荷の偏り。放っておくとルーターは人気の専門家に仕事を集中させ、 遊ぶ専門家と過労の専門家が生まれます(容量の無駄・遅延)。だから わざと仕事を散らす仕掛け(負荷分散の損失)を学習に足す。切り替えて偏りを見てください。

LOAD BALANCING — 仕事は専門家に均等に配れているか

RECAP

5つのステップ、ふりかえり

STEP 01密の無駄全トークンが全パラメータを使い、容量と計算が直結。
STEP 02専門家に分ける塊を多数の専門家へ。総容量は増やせる。
STEP 03ルーター各トークンを上位2人だけに振り分ける疎な起動。
STEP 04大きいのに速い容量は巨大、計算は一部。代償はメモリ。
STEP 05難しさ負荷の偏りを分散で抑える。今の主力アーキ。
SERIES

この章はTransformer深掘り編(層の中身)の発展で、 量子化投機的デコードと並ぶ「巨大モデルを実用にする」技です。

シリーズ一覧へ →