ニューラルネットワークの特定レイヤー・特定位置の活性化ベクトルを別の入力から得た活性化で置換(パッチ)することで、その活性化が出力に与える因果的影響を測定する解釈可能性の実験手法。
Activation Patching(活性化パッチング)は、トランスフォーマーモデルの内部で特定のレイヤー・トークン位置の活性化ベクトルを、異なる入力から得た活性化で「差し替え(パッチ)」することで、その活性化が最終出力にどの程度因果的に寄与しているかを測定する実験手法である。2022年にKevin Mengらによる知識ニューロン(ROME)の研究で広く知られるようになった。
単に活性化を観察(Representation Reading)するだけでは、相関関係しか分からない。Activation Patchingは実験的に活性化を操作するため、「この活性化がなければ出力は変わるか?」という因果関係を直接検証できる。これは科学実験における対照実験に相当する。
回復度が高いほど、その位置の活性化が出力にとって因果的に重要であることを意味する。
| 手法 | 置換元 | 置換先 | 目的 |
|---|---|---|---|
| Activation Patching | Clean → Corrupted | 正しい活性化で修復 | 因果的重要性の発見 |
| Denoising Patching | Clean → Corrupted | 同上(ノイズ除去的) | ノイズ耐性の測定 |
| Path Patching | 特定パス上のみ | 特定の回路経路 | 回路レベルの因果分析 |
| Zero Ablation | ゼロベクトル | 活性化を消去 | 必要性の測定 |
| Mean Ablation | 平均活性化 | 活性化を平均で置換 | 特異性の測定 |
Activation PatchingはMechanistic Interpretability(機械的解釈可能性)の中核的ツールである。モデル内部で「どの回路がどの計算を担当しているか」を特定するために、体系的にパッチングを行い、各コンポーネントの因果的役割をマッピングする。
間接的目的語識別(Indirect Object Identification: IOI)タスクでは、「AがBにボールを渡した。そのボールを受け取ったのは」→「B」という推論において、特定のAttention Headが「A」と「B」の位置情報を伝搬する回路が、Activation Patchingによって特定された。
パッチングは計算コストが高い。全レイヤー×全トークン位置の組み合わせを網羅的に検証すると、1入力あたり数千回の推論が必要になる。このため、まず粗い粒度(レイヤー単位)でスクリーニングし、重要レイヤーのみ細かい粒度(ヘッド単位・ニューロン単位)で深掘りする二段階アプローチが一般的である。
A: Activation Patchingは「分析手法」で、活性化を置換して因果関係を測定します。Activation Additionは「制御手法」で、活性化にベクトルを加算してモデルの振る舞いを変更します。前者は理解のため、後者は操作のための技術です。
A: はい。むしろ小規模モデル(GPT-2、Pythiaなど)で手法が発展しました。計算コストが低く、回路構造が比較的単純なため、手法の検証や教育目的に適しています。大規模モデルへの適用は計算リソースの確保が課題です。
A: 回復度(recovery rate)で判断します。パッチ後の出力がClean Runと同じなら回復度100%で、その位置が因果的に必要十分であることを示します。0%なら無関係。部分的な回復は、その位置が出力に寄与しているが、他の位置も同じ情報を冗長に保持している可能性を示唆します。