SAE(Sparse Autoencoder)によるLLM特徴量分析(エスエーイー)
LLMの中間層活性化を疎なオーバーコンプリート基底に分解するSparse Autoencoderを訓練し、個別の解釈可能な特徴量(feature)を特定・操作する手法。Anthropicの大規模研究で注目された。
SAE(Sparse Autoencoder)によるLLM特徴量分析とは、Transformerの中間層におけるMLPやアテンション出力の活性化を、元の次元数よりはるかに多い「オーバーコンプリート基底」に疎に分解するオートエンコーダーを訓練し、個々の基底ベクトルを「解釈可能な特徴量(feature)」として分析・操作する手法である。
概要と理論的背景
LLMの中間層活性化は典型的に4096次元(Llama 2-7B)や12288次元(GPT-4クラス)のベクトルである。しかし、モデルが内部的にエンコードしている概念の数はこの次元数をはるかに超えると考えられている。これは「スーパーポジション仮説(Superposition Hypothesis)」と呼ばれ、Elhage et al.(2022)が提唱した。
スーパーポジション仮説によれば、モデルは限られた次元数の中に多数の概念を「重ね合わせ」てエンコードしている。これは圧縮センシングや辞書学習と類似した構造であり、適切な疎分解を行えば個々の概念を分離できるはずである。SAEはまさにこの分離を実行する手法である。
SAEのアーキテクチャ
SAEの構造は単純なオートエンコーダーであるが、エンコーダー出力にL1スパース性制約を課す点が特徴的である:
エンコーダー: f = ReLU(W_enc @ x + b_enc) # x: 活性化, f: 疎な特徴量
デコーダー: x_hat = W_dec @ f + b_dec # 再構成
損失関数: L = MSE(x, x_hat) + λ * L1(f) # 再構成誤差 + スパース性
| パラメータ | 典型的な値 | 説明 |
|---|---|---|
| 入力次元 | 4096-12288 | モデルの隠れ層次元 |
| 特徴量数 | 16384-4194304 | 入力次元の4x-1000x |
| 活性L0(平均活性特徴量数) | 50-300 | 同時に活性化する特徴量数 |
| λ(スパース性係数) | 1e-4-1e-2 | L1正則化の強さ |
| 訓練トークン数 | 1B-100B | 大規模データでの訓練が必要 |
Anthropicの大規模SAE研究
Anthropicは2024年5月に「Scaling Monosemanticity」論文(Templeton et al., 2024)を発表し、Claude 3 Sonnetの中間層に対して400万特徴量のSAEを訓練した。この研究は以下の画期的な発見を含む:
- 多言語概念の統一表現: 「ゴールデンゲートブリッジ」に対応する単一特徴量が、英語・日本語・中国語のいずれの入力でも活性化
- 抽象概念の特徴量: 「嘘をつく」「危険なコード」「著作権侵害」など高次の抽象概念に対応する個別特徴量が発見
- 特徴量操作による行動変化: 特定の特徴量をクランプ(固定値に強制設定)すると、モデルの出力が劇的に変化。「Golden Gate Claude」実験では橋関連の特徴量を増幅すると全回答がゴールデンゲートブリッジに言及するようになった
SAEとCAAの比較
| 観点 | SAE | CAA |
|---|---|---|
| アプローチ | ボトムアップ(教師なし辞書学習) | トップダウン(対照学習) |
| 事前準備 | SAE訓練に大規模計算が必要 | プロンプトペア作成のみ |
| 粒度 | 個別の微細な特徴量レベル | 概念レベル(より粗い) |
| 解釈可能性 | 各特徴量が何を表すかを事後的に分析 | 操作対象の概念は事前に指定 |
| 計算コスト | 訓練: 高い / 推論時: 中程度 | 訓練: 不要 / 推論時: 低い |
| 精度 | 高い(個別特徴量の操作) | 中程度(概念全体の操作) |
実用的な応用
- 安全性監査: モデル内部に「危険なコード生成」「個人情報漏洩」などの特徴量が存在するか事前検証
- 精密なステアリング: CAAよりも細かい粒度で出力を制御(特定の特徴量のみを増幅/抑制)
- モデルデバッグ: 予期しない出力の原因を特徴量レベルで特定
- バイアス検出: ジェンダー・人種等に関連する特徴量を発見し、その影響を定量化
課題と今後の展望
- 計算コスト: 400万特徴量のSAE訓練にはA100 GPU数百台・数週間の計算が必要
- 特徴量の解釈: 自動的に特徴量にラベルを付ける手法(autointerpretability)が研究中だが精度に課題
- 完全性の保証: SAEが全ての重要な特徴量を捕捉しているか(再構成誤差で間接的に評価するしかない)
- TopK SAE: Gao et al.(2024)はL1正則化の代わりにTopK活性化を使用する改良版を提案し、Pareto効率を改善
よくある質問(FAQ)
Q1: SAEは自分でも訓練できるのか? A: オープンソース実装が複数公開されている(SAELens、TransformerLens等)。Llama 2-7Bクラスのモデルに対して16384特徴量のSAEであれば、A100 1台で数時間-数日程度で訓練可能である。
Q2: SAEの特徴量は「ニューロン」とは何が違うのか? A: 個々のニューロンは通常「多義的(polysemantic)」であり、複数の無関係な概念に反応する。SAE特徴量は「単義的(monosemantic)」になるよう訓練されており、1つの概念に対応することを目指す。
Q3: Golden Gate Claude実験は安全性上の懸念はないのか? A: Anthropicはこの実験を「モデル内部の理解を深めるための研究」と位置づけている。特徴量操作でモデルの安全ガードレールをバイパスできる可能性は認識されており、SAE研究自体が安全性強化に不可欠だと主張している。
まとめ
- SAEはLLM中間層を疎なオーバーコンプリート基底に分解し、解釈可能な特徴量を発見する手法
- Anthropicが400万特徴量規模の研究を公開し、高次の抽象概念に対応する個別特徴量を発見
- CAAより精密な操作が可能だが、訓練コストが高い
- モデルの安全性監査・デバッグ・精密ステアリングへの応用が期待される