Hidden Decoding at Scale: Latent Computation Scaling for Large Language Models
本論文は、固定されたTransformerバックボーンを変更したり法外な学習コストを発生させたりすることなく、ストリーム分解を通じてシーケンス長方向にトークン計算を拡張することにより、フロンティアスケールにおいて大幅な性能向上を可能にする、大規模言語モデルを強化する新しいスケーリング手法であるHidden Decodingを紹介する。
原論文は CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) でライセンスされています。 これは以下の論文のAI生成解説です。著者が執筆または承認したものではありません。技術的な正確性については原論文を参照してください。 免責事項の全文を読む
想像してみてください、あなたはすでにかなり素晴らしい、超スマートなロボットの脳(大規模言語モデル)を持っています。通常、この脳をさらに賢くするために、科学者たちは脳を大きくしようとします。もっと多くの層を加え、もっと多くのニューロンを、もっと多くのすべてを追加するのです。しかし、これはスカイスクレイパーの上にさらにスカイスクレイパーを建てようとするようなものです。莫大な費用がかかり、膨大な時間がかかり、時には建設作業員(トレーニング用のコンピュータ)がその大きさに耐えられなくなってしまうこともあります。
WeChatのAIチームは、異なる問いを投げかけました。「もし、脳のサイズはまったく同じに保ったまま、各単語について考える時間を増やしたらどうなるだろうか?」
「ループ」の問題点
一部の研究者は、ロボットに思考を「ループ」させることでこれを解決しようと試みました。学生が文章を読み、次にそれをもう一度読み、また何度も読み、同じ脳細胞を何度も繰り返し使ってより良い答えを導き出す様子を想像してください。これは「ループ型」または「回帰型」モデルと呼ばれます。
しかし、ここに落とし穴があります。最大級のロボット(数千億のパラメータを持つもの)を訓練しようとすると、このループのアイデアは組み立てラインを壊してしまいます。これらのモデルを訓練するコンピュータはパイプライン方式で動作しており、脳の各部分が一度ずつ役割を果たし、バトンを渡していきます。もしロボットが同じ文章を読み直すために立ち止まってしまうと、ライン全体が停滞します。高価なコンピュータがアイドル状態(何もしていない状態)になってしまうのです。それは、工場のベルトコンベアが、作業員が同じネジを締め直すために何度も止まってしまうようなものです。工場全体の動きが止まってしまいます。
解決策:「隠れたデコーディング」(秘密の組み立てライン)
WeChatのチームは、「隠れたデコーディング(Hidden Decoding)」と呼ばれる巧妙なトリックを考案しました。ロボットに同じ単語をループの中で何度も読ませる代わりに、複数のレーンを使って、同時に、かつ秘密裏に、その単語を何度も読ませるのです。
これはレースカーのチームのようなものです。一台の車が最高のラップタイムを出すためにトラックを3周するのではなく、**4台の同一の車(ストリーム)**を同時にトラックへと送り出します。
- セットアップ: ロボットが単語(例えば「apple」)を見ると、それを単一のコードに変換するだけではありません。それを4つの異なるコードに変換し、それぞれを独自の秘密のレーンへと送り込みます。
- 秘密の作業: これら4つのレーンは脳の層を通り抜けます。最初の3つのレーンは「隠された」状態です。彼らは重労働、思考、推論のすべてを行いますが、まだ答えを口にすることはできません。彼らはバックルームにいるブレーンストーミング・チームのようなものです。
- 最終決定: 4番目のレーン(最終ストリーム)だけが、次の単語を叫ぶことが許されます。脳は、この最終的な答えに対してのみ採点されます。
- メモリ: 決定的なことに、脳は最初の3つのレーンが何を考えたかを記憶します。次の単語が前の単語からのブレーンストーミングのメモ(「キー・バリュー・キャッシュ」と呼ばれます)を読めるように、彼らのメモを保持し続けます。
このようにして、ロボットは単語ごとに4倍の思考力を得ることができますが、脳を大きくしたり、組み立てラインを止めたりする必要はありません。ただ、一度に処理するデータのシーケンスを長くするだけなのです。
手頃な価格にするための工夫:「ストリーム分解」のトリック
「待ってください、もし4つのレーンが互いに話し合ったら、数学的な計算はめちゃくちゃ複雑になるのではないですか?」と思うかもしれません。もしすべてのステップで、すべてのレーンが他のすべてのレーンと通信しようとしたら、コストは爆発的に増大(16倍に!)してしまうでしょう。
これを解決するために、チームは「ストリーム分解アテンション(Stream-Factorized Attention)」という手法を用いました。
- ほとんどの時間: 各レーンは自分のバブルの中に留まります。レーン1はレーン1と話し、レーン2はレーン2と話します。彼らは互いに邪魔しません。
- 時々: ごく一部の特定の層においてのみ、レーン同士がメモを交換し、アイデアを混ぜ合わせます。
これにより、コストを低く抑えることができます。コストが16倍に跳ね上がるのではなく、約4.4倍から5.1倍程度に抑えられます(これは4倍のレーン数に近い数値です)。これにより、銀行を破産させることなく、これらの超大規模モデルを訓練することが可能になります。
効果はあったのか?
チームは、800億パラメータを持つモデルと、6170億という巨大なモデルの2つでテストを行いました。彼らは脳のサイズを変えていません。ただ「4レーン・モード」をオンにしただけです。
- 結果: モデルはより賢くなりました。難しい数学や科学のテストにおいて、6170億パラメータのモデルは「GPQA Diamond」テストのスコアを89.1から91.2へと向上させました。「PHYBench」物理学テストでは、75.3から76.3へと上がりました。
- 傾向: 彼らはまた、2レーン、4レーン、8レーンのテストも行いました。レーンを増やすにつれて、スコアは上昇し続けました。これは、より多くの「思考レーン」を追加することが、新しい大きな脳を構築することなくモデルを賢くするための現実的な方法であることを示唆しています。
彼らが否定したもの
チームは、これが単なる偶然ではないことを確認するために注意深く調査を行いました。彼らは他の方法で追加のレーンを使用することを試みました。
- すべてのレーンに予測を強制する: もし最初の3つのレーンにも答えを予測させた場合(単に最後のレーンだけにさせるのではなく)、モデルの性能は実際には悪化しました。
- 答えを混ぜる: もし4つのレーンの思考を単に平均化したとしても、最後のレーンに決定させる方法ほどの結果は得られませんでした。
- メモを共有する: もしレーンが独自のメモを持つのではなく、同じメモリ・メモを共有するようにした場合、モデルの精度はわずかに低下しました。
このことは、秘訣は、最初のレーンに静かでプライベートな思考を行わせ、彼らのメモを個別に保持させることであり、それによって最終的なレーンが最高の推測を行うための深い蓄積された知恵を利用できることにある、ということを証明しています。
結論
「隠れたデコーディング」は、賢くなるために必ずしも大きな脳が必要ではないことを示しています。時には、単に脳に並列で考える時間を与えるだけでよいのです。単語を思考の秘密の組み立てラインに変えることで、WeChatのチームは、既存のモデルを再構築することなく、フロンティア規模のモデルの知能を高める方法を見つけ出しました。これは、私たちがすでに持っているモデルから、より多くの「賢さ」を絞り出すための、実用的でエンジニアリングに適した方法なのです。
自分の分野の論文に埋もれていませんか?
研究キーワードに一致する最新の論文のダイジェストを毎日受け取りましょう——技術要約付き、あなたの言語で。