概要
- Transformerモデル内部に「推論回路」が存在し、特定の層を複製するだけで推論能力が大幅に向上
- 重みや学習は一切変更せず、推論時に同じ層を2回通すだけで効果発現
- Devstral-24BやQwen2.5-32Bなど複数モデルで大幅な性能向上を確認
- circuit探索・適用ツール一式を公開、標準ベンチマークで効果検証済み
- 同一モデル・同一重みで複数の「認知モード」を作り分け可能
Transformerモデルにおける「推論回路」複製による性能向上
- David NgのRYS手法 を再現し、 AMD製GPU(RX 7900 XT + RX 6950 XT) で独自検証を実施
- Transformer内部には 3~4層連続の「推論回路」 が存在し、ここを複製することでモデルの推論能力が飛躍的に向上
- 重み・学習不要、推論時に「同じ層を2回通す」だけのアーキテクチャ変更
- Devstral-24B(40層) では 12~14層 複製で論理推論が0.22→0.76(+245%)、GSM8KやMBPPでも向上
- Qwen2.5-32B(64層) では 7~9層 複製で推論精度が76.5%→94.1%(+17%)
- 複製する層の選択が極めて重要 で、1層ずれただけで効果が消失・逆転する場合も
「認知モード」の多様性と回路境界の鋭さ
- 複製パターンの違い で「数学特化」「EQ特化」など 異なる認知モード を同一モデル・重みで実現
- 例:13~16層ダブルパスは数学↑↑、トリプルパスはEQ↑↑、インタリーブなら純粋数学特化
- 回路の境界は非常にシャープ で、複製ブロックを1層ずらすと効果が消える/逆転
- 小型モデルほど回路がコンパクト (24Bで3層、72Bで7層など)
circuit探索・適用ツールキットの使い方
- sweep.py :最適な複製層パターンを自動探索
- layer_path.py :任意の複製パターンでGGUFモデルを生成
- gguf_surgery.py :低レベルな層複製処理
- math_probe.py/eq_probe.py/reasoning_probe.py :各種プローブによる性能評価
- compare_eval.py/visualize.py :評価結果の比較・可視化
- lm-evaluation-harness で標準ベンチマーク(BBH, GSM8K, MBPP等)を自動検証
実行例
- Devstral-24Bで12~14層複製
- python layer_path.py model.gguf improved.gguf -p "0..14,12,13,14,15..39" -v
- Qwen2.5-32Bで7~9層複製
- python layer_path.py model.gguf improved.gguf -p "0..9,7,8,9,10..63" -v
- カスタム複製(例:13,14,15,16のトリプルパス)
- python layer_path.py model.gguf experiment.gguf -p "0..16,13,14,15,16,13,14,15,16,17..39" -v
ベンチマーク検証
- llama-serverで推論サーバー起動
- lm-evaluation-harnessで各種タスク自動評価
- compare_eval.pyでベースモデルと複製モデルを比較
技術的注意点・FAQ
- VRAM消費 :24Bモデルで3層複製時+約1.5GiB増加
- 推論速度 :複製層数に比例し遅延(例:40層中3層複製で約7.5%遅くなる)
- 適用可能性 :Mistral系(Devstral)、Qwen2系で実証済み。理論上全Transformerで応用可能
- ファインチューニングとの関係 :本手法はアーキテクチャ変更。ファインチューニング(重み調整)と組み合わせ可能
まとめと今後の展望
- Transformerモデルは訓練過程で「機能回路」を自己組織化 し、適切な層複製で特定能力を強化可能
- 層複製のみで大幅な性能向上 が得られるため、従来のファインチューニングや蒸留と併用することで更なるブレイクスルーが期待
- ツールキット・手法はMITライセンスで公開中、誰でも自分のモデルで回路探索・適用が可能
参考
- David Ng RYS手法: https://dnhkng.github.io/posts/rys/
- 本手法・ツールキットGitHubリポジトリ(詳細・コード等)