線形計画で重み空間計画はできるか?

2026/11/11 21:30

線形計画で重み空間計画はできるか?

RSS: https://news.ycombinator.com/rss

要約▶

Japanese Translation:

概要:
MIT CSAIL は「Sparks of Weight-Space Programming」と題した論文を発表し、GPT-6 Astra が小規模なネットワークでトレーニングされたゲームを検出でき、さらに特に、勾配や学習ループを用いず推論のみにより PPO によってトレーニングされたモデルを破るための重み从头生成が可能であることを示した。本研究は、大規模言語モデル(例:Qwen3.5)が内部重みの極めて少ない部分を編集することで自身の推論ミスを是正できるという画期的成果を浮き彫りにしている。例えば、Astra ツールを Qwen3.5 に適用すると、0.016% の重みを edits だけで思考ループの無限反復を解消し、MATH-500 の精度を 7.9% から 48.1% に向上させた。同時に IFEval スコアも 21% から 62% に改善され、トークン制限違反は 93% から 33.1% に減少した。

この手法は、残差ストリームをループへ導く特定の重みパターンに焦点を当てている。具体的には、Astra は状態を是正方向へ押し込むために第 15 および第 19 の層を編集した。当初の試行錯誤探索では約 8 時間かかったが、新しい線形計画(LP)アプローチを用いると、使用される変更された重みの数が 8 倍少なくても同様の結果を約 1 分間で達成できる。LP はループ方向に沿って最も書き込んだ上位 64 カラムの層のみを対象とし、L1 ノーメルの変化を最小化することで、全カラムを編集する場合と比較して精度低下を大幅に抑制する。今後の研究では、単一方向のステアリングによるこの効率的な重み操作を用いて、拒絶反応や盲目従順といった持続的な問題をエネルギー集約的な再トレーニングサイクルなしに解決することも可能であると示唆されている。

本文

重み空間プログラミング:線形計画問題でニューラルネットワークを制御する技術の解説

MIT CSAIL から公開された論文「Can a Linear Program Do Weight-Space Programming? (重み空間プログラミングを行うには線形計画問題を解けばよいか)」について、重要な知見をまとめました。

主要な発見と成果

  • Astra モデルによる識別能力
    • 小規模ニューラルネットワークの重み配列のみを与えられます。
    • そのネットワークが何種のパラダイムで訓練されたゲームをプレイするかを、生成モデルなしに正確に識別できます。
  • ゼロショットでの性能向上
    • ゲームのルールだけを与えることで、小規模ネットワークの重みをゼロから構築します。
    • 既存の PPO(Proximal Policy Optimization)で 1 億ステップ以上訓練されたネットワークよりも高い性能を発揮します。
    • 重要: 勾配 descend の計算や訓練ループの実行は不要です。重みが実質的に計算している内容への推論だけで実現されます。
  • 数学能力の劇的改善 (Qwen3.5-0.8B 版)
    • Qwen3.5-0.8B モデルの重みを編集し、MATH-500 ベンチマークの精度向上を依頼しました。
    • わずか 0.016% の重みを修正するだけで、スコアは 7.9% から 48.1% へと劇的に向上しました。

「思考ループ(Thinking Loops)」の問題と解決

  • 小規模推論モデルの課題
    • 特定の状況で「思考ループに陥り」、結論に至らずに同じ数式の列を繰り返し出力してしまう失敗パターンがあります。
    • Qwen3.5-0.8B モデルでは、ベースモデル回答の 93% が正解に達する前にトークン制限 (32,768 トークン) に達して中断していました。
  • Astra の編集による改善効果
    • これらのループを解消し、指示従順性のタスク(IFEval)でもスコアを 21% から 62% へと向上させました。
モデルMATH-500GSM8KIFEvalトークン制限到達率
Qwen3.5-0.8B ベース7.9%13.8%21.0%93.0%
Astra の編集版48.1%67.1%62.3%33.1%
  • 重要な限界
    • ループに陥りにくい Gemma 3 270M モデルに対しては、数学的能力を有意義に向上させることができませんでした。
    • 著者の指摘:重み編集で障害を取り除くことは可能だが、本来持っていない新しい能力を加えることはできない。

Astra がループを修正する仕組み

トランスフォーマーの残差ストリーム

  • トランスフォーマーはリカレント結合(residual connections)を使用し、各レイヤーの出力が入力に追加されます。
  • トークンのパスを追跡すると、「残差ストリーム(residual stream)」という単一のベクトルが得られます(このモデルでは次元数 1,024)。
  • モデルがループに陥ると、この残差ストリームは一貫した方向へとシフトします。

ループ方向の特定 ($u$)

  • Astra は「生産的な推論」と「ループ状態」の短テキストを生成し、各トークンのレイヤーにおける残差ストリームのベクトルを記録しました。
  • 両者の平均の差を正規化したものが**「ループ方向 $u$」**です。
    • これこそが、モデルがループに陥る際に残差ストリームが移動する方向を表します。

重みの編集と線形計画 (Linear Program)

  • MLP の構造: 行列 $W$(ダウンプロジェクション)で出力 $Wh$ を計算し、これが残差ストリーム $x$ に追加されます ($x \leftarrow x + Wh$)。
  • 編集の目的: 各列ベクトル $w_j$ から、方向 $u$ への成分 $u^\top w_j$ を引き算します。
    • $\alpha = 1$: 方向 $u$ への成分を消去。
    • $\alpha = 6$: 成分を反転(モデルをループから遠ざける)。
  • ランク 1 の変更: 編集は全体として一つの方向 $u$ と、各列ごとの係数 $v_j$ から成り立ちます ($\Delta W = u,v^\top$)。

最適化の定式化

Astra は以下の条件を満たすように $v$ を探索しました:

  1. ループに陥るトークン ($R$): 方向 $u$ から少なくとも $\delta$ 離れる。
  2. 生産的なトークン ($P$): 最大で $\varepsilon$ の範囲内の変化のみ許容。

これはL1 ノルム最小化問題として解きました:

# 線形計画問題の定式化 (LP)
min_v sum(|v_j|)
s.t. 
  v · h_t <= -δ   for t in R  # ループ状態からの距離を確保
  |v · h_t| <= ε  for t in P  # 正常なトークンへの影響を最小化
  • L1 最小化の効果: 解がスパース(疎)になるため、変更が必要な列の数自体も同時に決定されます。
  • 計算効率: 約 8 時間かかった試行錯誤は、数回の線形計画求解器の実行に置き換えられました。

実験結果:編集方法の比較

編集方法GSM8KMATH-500
ベースモデル〜9%14.1%
すべての列 $\alpha=1$33%-
すべての列 $\alpha=2$43%-
すべての列 $\alpha=3$48%-
トップ 64 列のみ、$\alpha=6$55%-
  • ランダムな方向の変更は効果なし。
  • 最終的な戦略: ループに陥るテキストにおいて $u$ の成分を最も大きく出力する層ごとのトップ 64 列に対してのみ $\alpha=6$ を適用。

検証結果とスティアクベクトル (Steering Vector)

編集結果の詳細比較

本研究では、Astra が導出した方向 ($u_{Astra}$) と、ヒューリスティックな方法で求めた方向 ($u_{heuristic}$) の両方を検証しました。

変更された重み数GSM8K テストMATH-500IFEval
ベースモデル-14.1%7.0% (22.9%) 注1
Astra の編集版-68.2%50.9% (61.9%) 注1
LP(Astra の方向)-69.6%51.7% (59.7%) 注1
LP(ヒューリスティック方向)-65.4%47.8% (60.4%) 注1

\n注:表の IFEval と MATH-500 は、ベースモデルと比べて大幅に改善。括弧内の値は前回のセクションで言及された開発セットや他のコンテキストにおけるスコアです。ここではテストデータでの主要な向上が示されています。*

重要な考察

  1. 探索の重要性: LP が置換した試行錯誤により、開発セットでのスコアが改善されました (44.5 → 54.7)。
  2. スパース性の効果: LP は A の 64 列のうち必要な8 列だけを選びました。多くの異なる解法が存在し、重要なのは総推力であることが示唆されます。
  3. ランダム方向の無効性: ランダムな $u$ ではスコアは改善されませんでした (10.2 vs ベースモデル 10.9)。

スティアクベクトルによる簡易実装

  • LP 編集がもたらす推力は、トークンごとの活性化を通じてほぼ一定の方向へ働くことが分かりました。
  • この固定された推力を重み編集に置き換える代わりに、**「スティアク(steering)ベクトル」**として直接残差ストリームに追加することも可能です。
スティアク強度 (LP 編集平均推力の倍数)開発セット (Dev set)MATH-500
0.5 倍51.6%-
1 倍57.8%50.8%
2 倍31.2%-
  • 1 倍の強度では、スティアクベクトル単体でほぼ完全な修正効果が回復します。
  • この窓は非常に狭いです:
    • 0.5 倍:ループが再帰し始めます。
    • 2 倍:推論自体が崩壊してしまいます。
  • 実装の違い: LP 編集は通常ファイルとして保存できますが、スティアクベクトルを使用するには推論時に追加のコードが必要です。

限界と今後の展望

  • モデル依存性: 依然としてレイヤーや方向 $u$ の特定において Astra に依存しています。
  • トークンごとの制約の重要性: 一定の推力(constant push)でループを修正できるため、LP のようなトークンごとの複雑な制約は最終的には必須ではない可能性があります。しかし、「一部のトークンのみを変更する」挙動のテスト課題としては重要です。
  • 他の行動への拡張: 拒絶や奉仕的振る舞い(sycophancy)なども残差ストリーム内の単一方向で制御可能です。これらを重みにどう組み込むかも同様の線形計画問題として定式化できる可能性があります。

引用情報

本作品を以下のように引用してください:

Barry, Nathan. "Can a Linear Program Do Weight-Space Programming?" nathan.rs (2026 年 11 月)。 https://nathan.rs/posts/weight-space-lp

BibTeX 形式:

@article{barry2026wslp,
  title   = "Can a Linear Program Do Weight-Space Programming?",
  author  = "Barry, Nathan",
  journal = "nathan.rs",
  year    = "2026",
  month   = "Nov",
  url     = "https://nathan.rs/posts/weight-space-lp"
}

同じ日のほかのニュース

一覧に戻る →

2026/11/12 3:21

AWS エミュレーター

## 日本語翻訳: AWS Emulator は、実際の AWS アカウントが必要なく、サービス料金も発生しないローカルソリューションとして、AWS API に対するソフトウェアテストを提供します。リクエストを実際のサービスではなくローカルにルーティングします。ローカルマシン、開発サーバー、CI エンバーメント上で動作し、**Server モード**(CLI/SDK を使用、AI エージェントには AWS CLI v2.35.0+ が必須)、**Embedded モード**(Rust バイナリに直接統合)、および **direct integration** の 3 つの柔軟なモードをサポートします。グラフィカルインターフェースは備えていませんが、環境変数または直接的な HTTP クライアントコールによる設定で利用可能です。インストールには重要な前提条件が必要です:Rust ツールチェーン、C コンパイラ、少なくとも 100 GB のディスクスペース、マルチコアプロセッサ。Linux ユーザーはソースからビルド可能(x86_64/aarch64)ですが、Windows と macOS ユーザーは Docker を使用する必要があります。Cold full build はすべての crates をコンパイルしますが、その後の増分ビルドの方が高速です。Embedded モードも同様のビルドコストがかかります。デフォルトでは `127.0.0.1:9297` で HTTPS を提供し、自己署名証明書を使用します。Telemetry はデフォルトで有効となり、最小限の使用データを収集しますが(認証情報やコンテンツは除外)、CLI フラグ、環境変数、または構成ファイルによって無効にできます。本ソフトウェアは開発およびテスト用途のみを想定しており、本番環境またはセキュリティ用途には使用しないでください。ライセンスは CC0 1.0 Universal です(ベンダーコードについては Apache 2.0 の例外あり)。問題は GitHub Issues を通じて報告されます。

2026/11/11 16:03

Tim Peters が死去した

## Japanese Translation: Tim Peters の死去は、愛称「Timbot」として親しまれる彼が Python の歴史の基盤となる柱の一つを失ったことを象徴する。2001 年から 2014 年まで Python Software Foundation のステアリングコミーティーに在籍したピボタルフイグである Peters は、Python コードを実行した第 2 号人物であり、かつその核心メカニズムの主要な設計者の一人でもあった。彼の技術的遺産は膨大で、言語そのものを共設計し、「Python の禅」 (PEP 20) を著述し、Java および Android システムで標準となっている効率的なソートアルゴリズムである Timsort を開発した。これらのハイライトに加えて、pymalloc の改良、Py_ADDRESS_IN_RANGE や循環ガベージコレクターといった内部コンポーネントの最適化、簡易的なジェネレーターの基盤作りなどを行い、float オブジェクト、math モジュール、dict の最適化、weakref.txt、difflib、pickletools、tabnanny、doctest といった多くの必須モジュールにも寄与した。キャリア初期には Cray Research でスーパーコンピューター用のコンパイラ開発に携わり、Dragon Systems で音声認識ソフトウェアを開発した。彼のコード以外にも、彼はその忍耐強くユーモアに富んだメーリングリスト上の指導を通じてコミュニティを形作り、創業者である Guido van Rossum のスタイルによく似ていたことで知られ、「Timbot」という愛称もこの評判を反映している。彼は Python が int と float の間での混合演算をサポートするよう主張した。行政的な対立によってリーダーシップからの退任およびその後のステアリングコミーティーによる禁止措置を受けることとなったが、同僚らはそれを機に開発者の自由な支援を手放しなかったことを指摘している。

2026/11/12 6:24

ユナイテッド航空が、旅行者代わりのフライト予約においてAIエージェントの使用を禁止しました

## Japanese Translation: ユナイテッド航空は、フライトの予約やチェックインを実行することを人工知能(AI)エージェントから厳格に禁止しており、シームレスな自動化よりもセキュリティを最優先しています。この決定的な措置は、連邦法違反を防ぎ、支払い詳細や認証情報など、不正な AI ツールによって晒される可能性のある機密顧客データを保護することを目的としています。航空会社はまた、自律型エージェントが意図せぬ購入やマイレージプラスマイルの誤用を引き起こすことを懸念しており、AI によるチェックインは荷物验证を対面で行うことを要求する規制に違反する可能性もあるとしています。スウェーショアのような競合他社(フライト在庫を人気チャットボットに表示することを許可している)とは異なり、ユナイテッドはこれらのツールに対する直接予約チャンネルを即座に閉鎖しています。Google Flights などの集約プラットフォームを通じた通常の検索は引き続き利用可能ですが、高度な AI ボットを使用してチケットを予約したりチェックインを試みる場合は、人間による介入が必要となります。業界の分析家は、この変化が、AI ボットによって引き起こされる検索急増に伴う高いコストを回避し、顧客データに対する厳格な制御を維持することを目指すユナイテッドの意向を反映していると考えています。結局のところ、自動化された旅行管理ソリューションに依存している企業のワークフローを妨げることになっても、規制遵守を確実にするためにより航空会社はそのポリシーを調整しています。

線形計画で重み空間計画はできるか? | そっか~ニュース