A Circuit for In-Context Learning
本論文は、中層のヘッドがラベルとクラスの対応関係を保存し、上層のヘッドがクエリとの一致に基づいてそれらを想起するというゲート付き連想メモリ機構を実装することによって、少ショットの文章分類のためのインコンテキスト学習を可能にする、トランスフォーマーモデルにおける特定の保存された神経回路を特定し、因果的に検証するものである。
原論文は CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) でライセンスされています。 これは以下の論文のAI生成解説です。著者が執筆または承認したものではありません。技術的な正確性については原論文を参照してください。 免責事項の全文を読む
言語モデルを、数十億もの文章によって訓練された、膨大な人間の知識のライブラリだと想像してみてください。あなたが質問を投げかけるとき、モデルは通常、記憶していることに基づいて回答します。しかし、このモデルは「インコンテキスト学習(in-context learning)」と呼ばれる特別なトリックを行うことができます。もし、質問をする直前に、いくつかの例題を提示したとしたら――例えば、作られたラベルと対になった一連の文章を十数個見せたとしたら――モデルは即座にそのパターンを学習し、内部の重みを変更したり再学習したりすることなく、あなたの新しい文章にそのパターンを適用できるのです。モデルは、たった一度の読解でルールを見つけ出します。長年、科学者たちはこの現象が起きていることは知っていましたが、機械が実際にどのようにそれを行っているのかは分かっていませんでした。彼らは結果を見ることはできても、暗い箱の中で回転している歯車がどうなっているのかという謎は解けていなかったのです。
研究チームは今、その箱を開け、この能力の背後にある正確な仕組みを解明しました。3つの異なる大規模言語モデルを研究することで、モデルは伝統的な意味での「学習」をしているのではないことを発見しました。その代わりに、モデルはプロンプト自体の中に一時的なメモリを構築しており、そこでは特定の「アテンション・ヘッド(attention heads)」――ネットワーク内にある特化した処理ユニット――が、書き手、読み手、そして門番として機能しています。研究者たちは、モデルが提示された例題を「キー・バリュー(key-value)メモリ・システム」として扱っていることを見出しました。文に続いてラベルを示すと、モデルはそのラベルの正体をメモリ内の特定の場所に書き込むと同時に、直前に見た文の種類を記述する「キー」を書き込みます。その後、モデルが最終的な質問に遭遇すると、その質問のコードを計算し、それを使って一時的なメモリを検索し、先ほど保存したキーと質問のタイプを照合して、正しいラベルを取り出すのです。
研究者たちは、どのパーツが不可欠であるかを確認するために、異なるプロンプト間でモデルの内部活動を入れ替える手法を用い、このプロセスを一歩ずつ追跡しました。その結果、中層にある約20個のアテンション・ヘッドが「書き手」として機能し、各デモンストレーション文のクラスを特定し、続くラベルのメモリ・スロットに格納していることが分かりました。そして、上層にある約90個のアテンション・ヘッドが「読み手」として機能します。これらの読み手はメモリをスキャンし、保存されたキーが現在の質問のクラスと一致するスロットを探します。一致するものが見つかると、そのスロットからラベルをコピーして最終的な回答へと運びます。しかし、この検索システムは常に作動しているわけではありません。研究者たちは、メモリを読み取るべきかどうかを判断する「ゲート(門)」が存在することを発見しました。このゲートは、例題の中にラベルが複数回出現しているかどうかをチェックします。ラベルが繰り返される場合、ゲートが開き、読み手がメモリを検索することを許可します。ラベルが繰り返されない場合、ゲートは閉じたままとなり、モデルは例題を無視することをデフォルトとし、明確なパターンが存在しないときにデタラメな推測をするのを防いでいます。
モデルが正しく回答できるように、別の約2ダースのアテンション・ヘッドが「ブレーキ」として機能します。これらのヘッドは、直近に見られたラベルに対して逆方向に働き、モデルが単に最後に見た例をそのままコピーしてしまうという、典型的なバイアス(直近性バイアス)を防ぎます。このブレーキがなければ、モデルはパターンを無視して、最後に見たラベルを単に繰り返してしまうことがよくあります。また、研究者たちは、モデルには「シンク(sink/吸収源)」が存在することも発見しました。これは、特定の対象に集中すべきものがないときに注意が向かうデフォルトのポジションです。ゲートは、このシンクへの引き付けを弱めることで機能し、読み手が実際のメモリ・スロットを探すように強制します。
この発見が特に堅牢である理由は、研究者が単に挙動を観察しただけでなく、接続を遮断することでそれを証明した点にあります。書き手をブロックすると、モデルはキーを保存できなくなりました。読み手をブロックすると、キーを見つけることができなくなりました。ゲートを取り除くと、モデルはパターンが存在しないときでもメモリを読み取ろうとし、エラーを引き起こしました。彼らはさらに、この回路の極めて小さな手書きのバージョンをゼロから構築しましたが、それは予測通りに機能し、これらの特定のパーツがタスクを実行するのに十分であることを裏付けました。また、この研究は、特定の役割を果たすヘッドはモデル間で多少異なるものの、回路の全体的なアーキテクチャは同一であることを明らかにしました。
最も驚くべき発見の一つは、モデルがタスクの規模をどのように扱うかに関するものです。研究者たちは、モデルが単一の強力なヘッドにすべての作業を依存しているのではないことを発見しました。代わりに、タスクは協力して働く多くのヘッドの間で共有されています。単独で最終的な回答を生み出せるほど強力な読み手ヘッドは存在せず、モデルは自信を持って予測を行うために、数十のヘッドの統合された出力を必要とします。これが、モデルがこのタスクのためにこれほど多くのヘッドの集団を使用している理由です。さらに、研究は、モデルが大きくなるにつれて、問題を解決するために新しいパーツを編み出すのではなく、既存の集団を強化していることを示しました。直近の例に偏ることを防ぐ「ブレーキ」は、より大きなモデルにおいてより強力になるため、大きなモデルは、単語の通常の意味に関する自身の事前学習知識に頼るよりも、例題のパターンに従うのが上手くなるのです。
この研究は、人工知能がコンテキストからどのように学ぶかについての私たちの理解を変えるものです。それは、モデルが魔法のようにルールを演繹したり、複雑な数学的更新を行ったりしているのではないことを示唆しています。その代わりに、モデルは高度に組織化された機械的なルックアップ(検索)を行っています。情報を一時的なメモリに書き込み、パターンが存在するかどうかをチェックし、そのパターンに基づいて回答を検索しているのです。研究者たちは、このメカニズムが異なるモデルサイズ間でも一貫しており、モデルが他のタスクのために微調整(ファインチューニング)された後でも生き残ることを示しました。わずかな例から学習する能力は、謎めいた創発的特性ではなく、測定可能で操作可能であり、理解可能な、識別可能なコンポーネントから構築された具体的な、追跡可能な回路なのです。
自分の分野の論文に埋もれていませんか?
研究キーワードに一致する最新の論文のダイジェストを毎日受け取りましょう——技術要約付き、あなたの言語で。