カーパシのオートリサーチのスケーリング:エージェントがGPUクラスターを手に入れたときに起こること
概要
- Claude Codeをautoresearchに適用し、Kubernetesクラスタ上の16GPUで約8時間運用
- 約910件の実験を並列実行し、val_bpbを1.003から0.974へ2.87%改善
- モデル幅のスケーリングが最重要であることを発見
- H100とH200の異種GPUを自律的に使い分け、効率的な検証戦略を自習
- 並列化により探索戦略が大きく進化し、最良結果に到達するまでの時間を9倍短縮
Claude Codeとautoresearchによる並列化実験の概要
- autoresearchはAndrej Karpathyが開発した、ニューラルネットワークのトレーニングスクリプトを自律的に改善するエージェント
- エージェントはtrain.pyを編集し、5分間のトレーニング実験を実行し、val_bpb(validation bits per byte)で効果を判定
- 1GPU構成では1度に1実験のみ、約12実験/時の制約
- SkyPilotを利用し、クラウドやKubernetes上で16GPUを自動管理・割当
- 16GPU構成で約90実験/時、8時間で約910実験を達成
並列化による探索戦略の進化
- 1GPU時は貪欲法的なヒルクライミングに限定、1つずつ試行・評価
- 16GPUでは因子分解グリッド探索が可能
- 例:モデル幅やハイパーパラメータを同時に多値でテスト
- パラメータ間の相互作用効果を一度のウェーブで検出
- エージェントがGPU種別(H100/H200)を自律的に検出し、安価なH100でアイデア選別→H200で検証という戦略を自習
実験フェーズと主な発見
- フェーズ1: ハイパーパラメータ探索(初期200実験)
- バッチサイズ、Adamベータ、weight decay等を並列スイープ
- バッチサイズ半減、Adamベータ(0.9, 0.95)、weight decay 0.08等で改善
- val_bpb 1.003→0.981
- フェーズ2: アーキテクチャ探索(200-420実験)
- モデル幅(aspect ratio)を6値同時比較
- AR=96(model_dim=768)が最良、幅の拡大が最大の改善要因
- val_bpb 0.981→0.977
- フェーズ3: 幅広モデルの微調整(420-560実験)
- warmdown schedule、学習率、weight decay等を微調整
- val_bpb 0.977→0.975
- フェーズ4: オプティマイザ調整(560-700実験)
- Muonオプティマイザのbeta2=0.98が大きな改善
- val_bpb 0.975→0.974
- フェーズ5: 組み合わせ最適化(700-910実験)
- 学習率、warmdown、embedding LR等の最終調整
- 改善幅は0.0001未満に減少(収穫逓減)
並列化によるスループットと効率向上
- 16GPUでシーケンシャルの9倍速(~8時間 vs ~72時間)
- 1GPU時のボトルネック(実験中のアイドルタイム)を解消
- SkyPilotでクラスタやジョブの自動管理、エージェントがクラウドリソースを自律運用
最良構成例(抜粋)
- アーキテクチャ
- ASPECT_RATIO = 96(model_dim=768)
- DEPTH = 8
- WINDOW_PATTERN = "SL"
- トレーニング
- TOTAL_BATCH_SIZE = 2^18
- MATRIX_LR = 0.05
- EMBEDDING_LR = 0.6
- SCALAR_LR = 0.5
- オプティマイザ
- ADAM_BETAS = (0.70, 0.95)
- WEIGHT_DECAY = 0.08
- WARMDOWN_RATIO = 0.6
- FINAL_LR_FRAC = 0.05
- muon_beta2 = 0.98
今後の課題と展望
- 主要な改善(モデル幅、バッチサイズ、オプティマイザ)は出尽くし
- さらなる性能向上には新規アーキテクチャや長時間トレーニング予算が必要
- 並列探索の有効性を示し、今後の自律型AI研究エージェントの発展に期待
まとめ
- Claude CodeとSkyPilotの組み合わせにより、AIエージェントの自律的な並列探索とリソース管理が現実に
- モデル設計・ハイパーパラメータ探索の高速化・効率化を大幅に推進
- 人手を介さずに最適化ループを自動運用可能となり、AI研究の新たな地平を切り拓く