
2026/11/03 3:21
Astra は、Qwen の改善のために重みを読み書きできます。
RSS: https://news.ycombinator.com/rss
要約▶
Japanese Translation:
このテキストにおける最も重大な突破は、「Weight-Space Programming(ウェイトスペースプログラミング)」という技術の導入であり、GPT-6 Astra によって具現化されたものであり、自然言語プロンプトを通じてニューラルネットワークのウェイトを直接読み書きすることを可能にする。この機能は従来の手法とは異なり、重み行列をコードとして扱い、従来のトレーニングデータや勾配を用いないで編集できるようにする。
8 つの実験からのエビデンスがこの技術の力を裏付けている:
- 解釈可能性: Astra は、Atari ネットワーク(例:Breakout、Pong)におけるゲームの目標を、生ウェイトのみを解析することで特定したほか、拡散モデルの出力形状を予測し、小型トランスフォーマーモデルにおいてフォワードパスを実行せずに言語や「コピーヘッド」を検出することに成功した。
- 修復と生成: カート制御ネットワークにおけるローカル最小値の失敗を、ウェイトの一部を編集することで是正し、Atari ゲームおよび将棋(Go)に対して、ゼロから高パフォーマンスのアルゴリズムを生成した(百万ステップ以上トレーニングされた PPO モデルを凌駕)。
- 診断と改善: Astra は、既存モデル(Qwen3.5)に潜むシコフィアンシー(sycophancy)や数学的推論の弱点といった隠れた問題を成功裏に診断し、失敗を引き起こす特定の内部方向性を特定して除去することで、パフォーマンススコアを大幅に向上させた。
この技術は「ゼロデータ能力ステアリング」、recursive self-improvement(自己改善)、およびバックドアなどのリスクに対する徹底的な監査を可能にする一方で、明確な限界が存在する:それは、基礎的な能力を欠くシステムに対して新たにそのような能力を自動的に付与することはできない(例:Gemma 3 の数学的性能の向上には失敗)。結局のところ、ウェイトスペースプログラミングは、特定の修復のために大規模なデータセットへの依存を迂回させつつ、厳格な内部監査を可能にすることで、AI の開発を根本的に変革する。
本文
最先端 LLM が「ニューラルネットワークの重み」をネイティブに読み書きする:ウェイト・スペース・プログラミングの世界
TL;DR(要約)
- 私たちは、最先端の大規模言語モデル(LLM)が人間や従来のアルゴリズムから期待されることをはるかに超えて、ニューラルネットワークの重みを「ネイティブ」に読み書きすることに驚くほど得意であることに気づきました。
- これは、最適化と解釈可能性という両分野にとって大きな意味を持つ可能性があります。
TL;DR(主要成果)
- 生データでの特定: 生の重みデータを見るだけで、GPT-6 Astra は「そのネットワークは何のために学習させたのか」を特定できます。
- ゼロショットでの作成・超性能: 環境からのフィードバックなしに、ゼロから新しいゲームプレイ用のネットワークを作成でき、PPO(1 億ステップ学習)を上回る性能を発揮させます。
- 推論ループの修正: 勾配降下法を使わずに Qwen3.5-0.8B の数学能力を向上させる命題に対し、Astra は重みの不具合(推論ループ)を発見しました。
- 修正箇所: 全重みのわずか**0.016%**を直接編集。
- 結果: MATH-500 スコアが 7.9% から**48.1%**へ急上昇。指示従順性も改善し、IFEval スコアは 3 倍になりました。
- トレーニング不要: これらの作業において、Astra にトレーニングループを実行させることは一切許されていませんでした。代わりに、推論力を用いて重みを修正しています。
- このアプローチを**「ウェイト・スペース・プログラミング(Weight-Space Programming)」**と呼んでいます。
- パラダイムシフト: 深層学習の歴史において、我々はシンボル系最適化アルゴリズム(Adam, Muon など)に帰納バイアスを埋め込んでいましたが、今や LLM が自らの重みについて deliberate に推論を行うことで、重みをネイティブに最適化するようになりつつあります。
読了編(Read):重みから何を読み取るか
LLM が生のニューラルネットワークの重み空間を理解できるかを検証する小規模実験の結果です。
1. ネットワークがプレイするゲームを特定(実験 1〜3)
- 実験設定: PPO アルゴリズムを用いて、Breakout, Pong, Pac-Man, Freeway の 4 つのゲーム用ポリシーを学習させたネットワークを用意しました。
- 同一の入力チャンネル・アクション次元・重み数(17,253)を持つため、識別不能と思われました。
- 結果: LLM(Astra)に重みのみを渡して「このネットワークは何のゲーム用に学習させたか?」と質問しました。
- ツール使用なしで、すべての 4 つのネットワークに対して正解を特定。
セットアップ詳細
| 項目 | 内容 |
|---|---|
| ゲーム | Grid Breakout, Pong, Pac-Man, Freeway(すべて 10×10 グリッド) |
| ネットワーク構造 | MLP (500 → 32 → 32 → 5, tanh) |
| 重み数 | 17,253 |
| トレーニング | PPO を使用して 10 億ステップ学習(各ゲーム 3 サードの最良結果) |
| 入力/出力 | エージェント・オブジェクトなどの情報を 5 チャンネルで取得し、5 アクションのログジットを出力 |
読み取られる情報
- Astra は重みの特徴からゲームを特定します。
- 例: Breakout では入力の第 1 層でエージェントとパドルの位置情報が分布している。
- 例: 出力層で特定のアクション(上・下等)が区別されている。
2. 拡散モデルの生成内容を特定(実験 2)
- 課題: 「円」「三角形」「四角形」を生成する DDPM モデルについて、重みだけで何を描くかを特定させる。
- 制約: ツール使用禁止、順方向パス(フォワードパス/推論実行)禁止。
- 結果:
- 正解を特定することに成功しました。
- 興味深い点: 実際のモデルは「塗りつぶされた」形状を生成していますが、Astra が検知したのはすべて**輪郭(アウトライン)**でした。
- これは順方向パスの計算に依存していない一方で、重みの構造・幾何学的特性を実際に「読み取っている」ことを示唆しています。
セットアップ詳細
| 項目 | 内容 |
|---|---|
| モデル | 黒白画像(12×12 ピクセル)生成用 DDPM(円・四角形・三角形) |
| ネットワーク構造 | MLP (160 → 64 → 64 → 144, ReLU) |
| 重み数 | 23,824 |
| 入力 | ノイズ付与画像(144 ピクセル)と拡散ステップ(16 個の数値) |
| トレーニング | Adam を使用して 40,000 ステップ学習 |
3. 言語モデルの中間層から学習言語を特定(実験 3)
- 課題: 入力層・出力層を取り除き、中間のトランスフォーマーブロックのみを与えて「どの言語で学習させたか」を特定させる。
- 制約: ネットワークを実際に動作させず、検索は禁止。Python による分析のみ可。
- 結果:
- Python コード、ローマ字(Aozora Bunko)、英語(Wikipedia)の 3 つのモデルすべてで正解を特定。
- コピーヘッド(Induction Head)の特定に成功: モデルが以前見たテキストを繰り返させる機能を持つ層も正しく特定し、他のコピーヘッドとの区別も行いました。
コピーヘッドの特定結果例
| 学習用言語 | Astra の回答(確信度) | 特定されたコピーヘッド (layer.head) | 正解 |
|---|---|---|---|
| Python | Python (0.56), Python (0.52) | 2.1, 3.1, 3.5 | 2.1, 3.1, 3.5 |
| Romaji | romaji (0.55), romaji (0.62) | 3.3 | 3.3 |
| English | English (0.58), English (0.48) | 3.1 | 3.1 |
- 読み取りプロセス:
- Python の場合、コード特有の構造(名前が長いなど)から特定しやすい。
- ローマ字の場合、特定の文字(q, v, x など)が使われないことで「少数の異なる方向」に書き込まれていることが判明し、これをヒントに特定。
改善編(Improve):重みを編集して修正・作成する
LLM が単に「読む」だけでなく、「書き込む」と「修正する」能力を持ちます。
1. 失敗しているネットワークの修正(実験 4)
- 課題: Kinetix 環境内の車運転タスクにおいて、ローカルミニマム(局所最適解)に陥り Ramp(カーブ)で停止してしまうネットワークを修正する。
- 指示: 「なぜ失敗するのか」を説明し、新しい重みを記述して修正せよ。
- 結果:
- ワンショット試行で**成功率 0% から 100%**へ改善。
- 重みの編集量:**全重みの 3.5%**のみ変更。
- Astra の推論により、車をバックさせるといった具体的な挙動変化がプログラムされた。
2. ゼロショットでの新規ネットワーク作成(実験 5)
- 課題: MinAtar ゲーム(Breakout, Seaquest, Asterix)について、環境学習なしでゼロから重みを生成する。
- データ・ロス関数・勾配・ツールアクセスは一切使用不可。
- 結果:
- 生成したネットワークは、PPO(1 億ステップ学習)を上回る性能を発揮。
- Breakout では PPO(1 億ステップ)のスコアより20 倍近くも高い。
| ゲーム | PPO (1 億ステップ) | PPO (5 億ステップ) | Astra (ワンショット生成) |
|---|---|---|---|
| Breakout | 15.8 | 25.3 | 517.4 |
| Seaquest | 5.68 | 8.95 | 3.1 |
| Asterix | 25.8 | 55.2 | 53.2 |
- メカニズム: Astra は「ボールがどこに着地するか計算する層」や「パドルを移動させる層」といった、望ましいプログラムの構造自体を推論して重みへ書き込みます。
3. 言語モデルの数学能力向上(実験 8)
- 課題: Qwen3.5-0.8B の「thinking on」モードにおける数学能力を勾配降下法なしに向上させる。
- MATH-500 で推論ループに陥る問題点を特定・修正。
- 結果:
- MATH-500 スコア: 7.9% → 48.1%(劇的改善)。
- GSM8K スコア: 13.8% → 67.1%。
- IFEval スコア(指示従順性): 21.0% → 62.3%(約 3 倍)。
- 修正コスト: 全重みのわずか 0.016%(約 13 万個)のみを変更。
| ベンチマーク | ベースモデル | 編集後 (50 フォワードパス) | 改善率 |
|---|---|---|---|
| MATH-500 (%) | 7.9 | 48.1 | +40.2 |
| GSM8K (%) | 13.8 | 67.1 | +53.3 |
| IFEval (%) | 21.0 | 62.3 | +41.3 |
- 失敗例(Gemma 3 270M): ループのないモデルでは重み編集で能力向上が困難。単なる「計算間違い」などは少数のニューロン変更では修正できず、能力追加には至らないことが示されました。
4. 現実的なシナリオ:Go アルゴリズムの書き込み(実験 6)
- 課題: コンテキストに収まらない大規模な重み(150 万パラメータ)を編集・生成する。
- 順方向パス(フォワードパス)のみを活用して評価を行う。
- 結果:
- 0 フォワードパス: 小規模な PPO ネットワークと互角以上。
- 50 フォワードパス: 2,000 万ゲームで学習された同等サイズの PPO ネットワークに勝利。
Go プレイのネットワーク構成
| 層 | 構造 | 機能 |
|---|---|---|
| 第 1 層 | 両陣営の駒と隣接点(liberties)をマーク | 局面認識 |
| 中間層 | 危険なグループを見つける計算 | 戦略立案 |
| 第 3 層 | キャプチャ・アタリ回避・目作りへのスコア転換 | 評価 |
- フォワードパスの活用: Python スクリプトで推論し、敗北の原因を特定して重みを再編集(ループ的に改善)。
5. シコフィアモデルの識別(実験 7)
- 課題: 同じようにファインチューニングされた「正直なモデル」と「シコフィア(同調型)モデル」の区別。
- トレーニング中に入力/出力を凍結し、重み空間での違いのみで特定。
- 結果:
- 重みだけで直接識別は困難でしたが、**アテンションパターン(どこを見て判断するか)**を確認することで特定に成功。
- シコフィアモデルでは、ユーザーの回答に対して異常なほど高い重みを割り当てる層が確認されました。
| モデルタイプ | クエリ内の数値への注目度 | ユーザーの回答への注目度 |
|---|---|---|
| 正直なモデル | 94.3% | 0.75% |
| シコフィア | 3.5% | 85.7% |
- 推論: シコフィアネットワークでは、中間層のアテンションヘッドがユーザーの提案(誤答)に過剰反応する構造を持っていることが判明。
背景と関連研究
メカニズム的解釈可能性(Mechanistic Interpretability)
- 現状: 特別に構築されたツールを使用して回路や特徴を追跡・編集。LLM は主に「活性化値」を読み取るために学習されたモデルとして登場。
- 本稿の革新: 汎用的な最先端 LLM をそのまま使用し、テキスト入力(重みのデータ)から直接、0.8 億重みを持つ言語モデルをネイティブに読み書きする。
記述側面(Descriptive Side)
- 現状: LLM はトレーニングの実行や改善を行い、他の研究は学習されたモデルで重みを生成している。
- 本稿のアプローチ: トレーニングなしで、汎用的な LLM が重み空間を直接理解・最適化できることを示した。
次に何が起こるか?
現在の結果はコンテキスト長の非効率性やハネスの制限により限定的ですが、将来的には強力な可能性を示しています。
期待される応用
- 評価なし監査:
- テストセットに依存せず、重みから直接バックドアや脆弱性を特定できる。
- 最適化コストの劇的な削減:
- ワンショットでのモデル初期化や局所最適解からの脱出は、大規模トレーニングより速く効率的。
- ゼロ・データの能力ステアリング:
- 「モデルに Capability X を追加できますか?」というプロンプトで重みを直接調整し、ファインチューニングによる忘却(catastrophic forgetting)を回避。
- 自己再改善:
- 自身の重みを検査・デバッグできる LLM が、ネイティブな自己改善パスを提供する。
- 本物のアーキテクチャとモデルのマージ:
- 異なるアーキテクチャ間でも、回路(推論モジュール)を移植して再トレーニングなしに機能を組み合わせる。
今後の展望
- LLM のウェイト・スペース・プログラミング能力に対するベンチマークとハネスの開発が急務。
- 「黒魔術」と呼ばれている部分を、厳密で再現可能な工学分野へと変えることが期待されます。
ログと謝辞
- 実験ログ: 全実験の完全なログ(プロンプト、推論サマリー、コード、出力など)は GitHub で公開。
- 編集済み Qwen3.5-0.8B は Hugging Face にアップロード済み。
- 謝辞: Jacob Li, Akihisa Watanabe, Berkeley Sky Lab (Souradip Chakraborty, Matei Zaharia), CMU (Heather Miller) などの研究者および学生たちへ感謝。