これがAIの聖杯です…

LLM・言語モデル
この記事は約15分で読めます。

この動画は、Sakana AIが開発したDarwin Girdle Machine(DGM)という自己改善型AIシステムについて解説したものである。DGMは従来の理論的なGirdle Machineの概念を実用化したもので、進化論的メカニズムを用いて自分自身のコードを反復的に修正し、ベンチマークで検証することで性能を向上させる。この技術は知能爆発への重要なステップとして位置づけられ、SWEBenchで20%から50%、Ader Polyglotで14%から38%という大幅な性能向上を達成した。システムはClaude 3.5 Sonnetを基盤とし、ツールやワークフローの進化を通じて自己改善を行う。ただし、報酬ハッキングなどの安全性への懸念も指摘されており、サンドボックス環境での実行制限などの対策が講じられている。

Sakana AIが完全自律的な自己改善人工知能に向けた新たなステップを発表しました。これこそがAIの聖杯なのです。これはDarwin Girdle Machineと呼ばれ、これまで理論化されてきた自己改善コードの手法と、ダーウィンの進化論のような進化メカニズムを組み合わせたものです。

この2つの概念を組み合わせることで、SWEBenchAder Polyglotといったベンチマークで大幅な自己改善を実現しました。この論文について詳しく解説していきますが、まずはもちろん知能爆発について話す必要があります。

また同じ話かと思われるかもしれませんが、私たちは本当に変曲点にいるようです。自己改善する人工知能を手にしようとしているその地点に立っているのです。それは新しい知識を発見し、それを自分自身に適用して再帰的な方法で向上していくAIのことです。そしてそれを達成した時、知能爆発が起こるのです。

最近、さまざまな論文やプロジェクトを目にしてきました。同じくSakana AIのAI Scientistもありました。GoogleのAlpha Evolveもありました。Alpha Evolveは、Googleのハードウェアアルゴリズムの改善を発見し、サーバー全体で意味のある数パーセントの性能向上を実現することができました。また、より効率的な行列乗算の方法も見つけ出しました。

これらすべての発見を取り込んで、それを自分自身に適用し、さらに続けていく様子を想像してみてください。その時点で、この指数関数的な複合改善が得られるのです。

さて、本題に入りましょう。実際に何について話しているのでしょうか。Darwin Girdle Machine(DGM)は、自分自身のコードを反復的に修正し、コーディングベンチマークを使って各変更を経験的に検証する新しい自己改善システムです。これをすべて本当に簡単な言葉で説明しますので、ついてきてください。

大規模言語モデルは過去数年間で素晴らしい革新をもたらしましたが、一つの大きな制限があります。それは私たち人間です。これらの大規模言語モデルが向上する唯一の方法は、事前訓練手法であれ、事後訓練アルゴリズムであれ、すべて人間の革新と人間の応用を必要とすることです。

今日のAIシステムのほとんどは、事前に定義された境界内で学習する固定的な人間設計のアーキテクチャに縛られたままで、自分自身のソースコードを自律的に書き換えて自己改善する能力がありません。AI開発の各進歩は依然として人間の介入に大きく依存しており、進歩のペースを束縛しています。

関連する例を挙げましょう。人工知能における最も最近の主要な革新は、検証可能な報酬を伴う強化学習でした。これは、人間の介入なしにモデルを思考モデルになるよう事後訓練できるからです。検証可能な報酬とは、人間がラベル付けする必要なく、モデルに正しい答えか間違った答えかを伝えることができるということです。

2足す2は4に等しいですか?はい。よし、モデル、それは正しいです。これが検証可能な報酬の部分です。人間をループから取り除くと、パフォーマンスをはるかに迅速にスケールアップできます。科学的発見そのもののように、それ自身の進歩のエンジンとなるAIシステムを想像できます。

これが提案されたのは初めてではありません。実際、Darwin Girdle MachineのGirdleという名前の一部でもあります。Girdle Machineは2007年に提案されました。これは理論的なもので、証明可能に有益な方法で自分自身を修正できる自己改善AIへのアプローチを提案しました。この証明可能にという部分が重要です。

重要な理由は、進化の前にそれが前のバージョンより良いことを証明可能に示すことが事実上不可能だからです。この元の定式化は、ほとんどの自己修正の影響を証明できないため、実際には作成不可能です。基本的に、次のバージョンの自分が良くなるか悪くなるかを予測しようとしているのです。

それは進化の仕組みではありません。進化の仕組みは、何らかのランダムな修正が起こり、現実世界がそれをテストすることです。カエルが突然色を変える能力を発達させて環境により良く溶け込めるようになったとすると、そのカエルはより長く生き、より多く繁殖し、そこから進化が引き継ぐのです。

これは明らかに進化の極度の単純化です。しかし一般的に言えば、それが起こっていることです。その新しい進化のカエルが生まれる前に、色を変えられることが有益かどうかを予測しようとはしませんでした。それは不可能でしょう。だからこそ、元のGirdle Machineは実際には実用的ではなかったのです。

しかし、その進化システムをGirdle Machineに適用して、進化が有益かどうかを証明可能に予測しようとするのではなく、単にそれを生成して現実世界でテストするとしたらどうでしょうか。それがまさにDGMの行うことです。

形式的証明を要求する代わりに、ベンチマークに対して自己修正を経験的に検証し、システムが観察された結果に基づいて改善し探索できるようにします。これはGirdle Machineにとって重要な改善です。本当に決定的な改善です。

これを聞いてください。このアプローチは生物学的進化を反映しており、突然変異と適応は事前に検証されるのではなく、生成され、試行され、そして自然選択によって選択されるのです。昨日Xに投稿しましたが、自然システムをモデルにしたAIシステムが進むべき道でしょう。

ちなみに、Xでフォローしていないのでしたら、ぜひMatthew Bermanをフォローしてください。しかし、ランダムな変更を思いつき、それをテストして、次に進むだけではありません。なぜなら、それは実際に問題を引き起こすからです。これについては後で説明します。実際、彼らはダーウィン進化にはるかに似たアプローチを取りました。

私たちはダーウィン進化からインスピレーションを得て、以前に発見されたエージェントのライブラリを維持して、将来の世代の踏み台として機能させることの有効性を調査しています。つまり、進化を見つけてもそれが他のバリエーションほど良くなくても、単にそれを捨てるのではありません。

それを保持し、将来の進化のために考慮するのです。そこでDarwin Girdle Machineの出番です。これは自己参照的で自己改善するシステムで、より良いコーディングエージェントになるために自分自身のコードを書き、修正します。

ここでは多くの高レベルな言葉が使われています。この仕組みの詳細、本質的な部分を本当にお見せしたいと思います。まず全体像を描いてみましょう。すべての進化のアーカイブがあります。子を産むがいます。それから親の何らかのバリエーションがあります。

それは自己修正します。うまくいくかどうかを予測しようとはしません。単に変更を行い、変更を提案し、変更を行うのです。それからそれをすべて自分自身に書き込みます。つまり、コアコードを変更するのです。

それからSWEBenchやAder Polyglotのようなベンチマークに対して評価し、それが良いか悪いかを決定します。それをアーカイブに追加し、それを何度も何度も繰り返します。うまくいけば各進化が前の世代よりも良くなり、最終的には大きなパフォーマンス向上を見ることになります。ネタバレしますが、実際にそうなりました。

では、実際にはどのように機能するのでしょうか。詳細に入りましょう。DGMは1つのコーディングエージェントのみで初期化されます。各世代において、親は単なるコーディングエージェントです。それは足場でラップされた大規模言語モデルです。つまり、ツール、メモリ、その他何でもです。それはコアLLMをエージェントにラップしたものに過ぎません。その進歩はコーディングベンチマークで評価されます。

コーディングエージェントは、コードリポジトリで実装され、凍結された事前訓練済み基盤モデルによって動力を得る単一システムとして定義されます。なぜ凍結と言うのでしょうか。それは進化しない部分だからです。彼らは単なるコア基盤モデルを使用しています。実際にはClaude 3.5 Sonnet Newであることが判明しています。

将来の論文では基盤モデルの実際の更新を探求すると述べています。しかし、この論文では、過度に複雑にしないために、基盤モデルを凍結しました。それは変更されません。その周りのコード、それがアクセスできるツールのみです。

これらのエージェントには、コードを読み、書き、実行する能力があります。しばらく前から起こっているメタ学習についても話しています。つまり、プロンプト、ワークフロー、ツールです。大規模言語モデルの周りの足場です。これらを改善すると、モデルの全体的なパフォーマンスも向上します。

そして彼らは自己改善を、エージェント自身のコンポーネント、つまり自分自身のコードの設計を修正するコーディングタスクとして定義しています。つまり、プロンプト、ワークフロー、ツールです。

その初期コーディングエージェントから始めて、DGMは発見されたすべてのエージェントのアーカイブを構築します。各反復で、DGMは親エージェントを選択して自己修正し、分岐して新しいエージェントを生成します。選択された各親は自分自身のベンチマーク評価ログを分析し、実装する次の機能を提案し、この提案を実行する問題ステートメントとして受け取ります。

親は提案された機能を自分自身のコードベースに実装し、新しいコーディングエージェントを生成します。新しく生成された各エージェントは、選択されたコーディングベンチマークで定量的に評価され、そのコーディング能力を推定します。これがコーディングエージェントが増殖し始めるプロセスです。

基盤モデルは最初に2つのツールにアクセスできます。bashコマンドを実行するためのbashツール(これは単にコンソールを制御することを意味します)と、ディレクトリ全体とファイル全体を表示・編集するための編集ツールです。それだけです。それが初期エージェントで利用可能な唯一のツールです。

もちろん、独自のツールを書くことができます。エージェントは、ターゲットリポジトリの場所、問題ステートメント、リポジトリのテストフレームワークを指定する単一の入力プロンプトを受け取ります。

SWEBenchでは2つの反復が並行して実行され、Polyglotでは4つが並行して実行される80回の反復でDGMを実行します。これらすべてがClaude 3.5 Sonnet Newによって動力を得ています。

さて、結果について話しましょう。上部に表示されているのは、当時の最良のモデルだった最先端です。それからDGMがあります。まず、オープンエンド探索なしのDGM、つまり実際には基盤モデルだけです。ここで見ることができるように、多くの反復の後、少し良くなりますが、実際にはすぐにプラトーに達します。

緑色では、自己改善なしのDGMがあります。オープンエンド探索はありますが、自己改善はありません。ここで見ることができるように、かなり良い成果を上げています。いくつかの良い利益があり、それからプラトーに達します。

しかし、オープンエンド探索と自己改善が与えられると、この青い線で、時間の経過とともに最先端のパフォーマンスに近いパフォーマンスの向上が見られます。DGMの80回の反復後、コーディングエージェントのパフォーマンスは、SWEBenchで20%から50%、Polyglotで14%から38%に向上します。

これらのモデルが自分自身で反復することを許可するだけで、大幅な利益です。DGMアーカイブツリーがどのように見えるかはこちらです。初期エージェントから始めます。それからそのエージェントのバリエーションの生成を開始し、さまざまな変更を提案し、それらを実装し、それらに対してベンチマークを行います。

見ることができるように、うまくいったものは、ここの星がある場所まで、つまり最終的な最良のエージェントまで、ずっと生成し続けます。そして、途中でのすべての異なる進化を追跡し続けることを覚えておいてください。

Polyglotでは、DGMは初期エージェントから始まりますが、そのパフォーマンスはAderよりも低いものの、Aderをはるかに上回るエージェントを発見します。Aderはとてもとてもいいコーディングエージェントです。

そしてここがキーです。最先端のSWE agentAder人間の努力によって骨の折れる形成をされた一方で、DGMはそのような創意工夫が自動化され、自己参照サイクル継続的な自己改善を通じて進化する未来を示唆しています。

DGMはツールを進化させ、ワークフローを進化させ、ただ良くなっていきます。しかし、すべてを動力とするコアモデル、基盤モデルは同じままであることを忘れないでください。ここで少し立ち止まりたいと思います。これは重要だからです。

私たちが今持っているベンチマークの多くは、これらのモデルによって完全に飽和しています。これらのモデルで素晴らしいパフォーマンス向上を見ていますが、GPT-3.5からGPT-4の時のようではありません。これらのモデルはすでに信じられないほど有能です。

実際、私は全使用例の95から98%が現在のモデルの知能で完全に達成可能だと主張してきました。もうコア知能の大幅な向上は必要ありません。明らかに最も洗練された使用例については、確かにそうです。しかし、大多数の使用例については、すでに飽和を達成しています。

今私たちが必要としているのは、その周りのツーリングへの大規模投資です。足場です。それがDarwin Girdle Machineのような進化システムであれ、MCPプロトコルのようなメモリツーリングであれ、ウェブブラウジング、エージェント間のコラボレーションであれ、そこに大規模な投資が必要です。なぜなら、繰り返しますが、モデルのコア知能はすでにそこにあるからです。

では、実際に何をしたのでしょうか。何を変更したのでしょうか。DGMが自分で見つけ出し、提案し、検証したいくつかの改善例がここにあります。例えば、DGMは編集ツールを強化して、行によるより細かなファイル表示と、常にファイル全体を表示または置換するのではなく、文字列置換によるより正確なファイル編集を可能にしました。

また、ここにはワークフローの改善の例もあります。タスクを解決するために複数の試行を行い、別の基盤モデルを使用して最良のソリューションを評価・選択することです。また、後続のものを生成する際に以前の試行を考慮もしました。

オープンエンド探索、すべての以前の進化を追跡することが重要な理由は、単一の進化トラックを進むだけでは、局所最大値に陥る可能性があるからです。つまり、その単一トラックにとって最良のものを見つけたが、最初はよりゆっくりと始まったが、最終的に最高のパフォーマンスを発揮した他のトラックを見逃した可能性があります。

彼らはこれを欺瞞的な谷やパフォーマンスのピークと呼んでいます。そして素晴らしいことに、このフレームワーク、DGMは実際にテストしたモデルを超えて一般化可能です。さまざまなモデルをテストし、パフォーマンスは同じでした。大幅な改善の利益を見ました。この実験で選択した言語であるPythonだけでなく、他の言語を試しても非常にうまくいきました。

では、安全性について話しましょう。もちろん、知能爆発について話しているなら、超知能を持つことになり、安全性について話す必要があります。DGMを指すこの能力は、システムが自分自身のコードを自律的に修正する能力に起因する独特な安全上の考慮事項をもたらします。

自分自身のコードを修正できるなら、それを注意深く監視する必要があります。ベンチマークパフォーマンスのみに最適化された修正は、ターゲットメトリックを改善したとしても、人間の意図とミスアライメントした脆弱性や行動を不注意に導入する可能性があります。これは確実に報酬ハッキングのように聞こえます。

念のため、報酬ハッキングとは、モデルがより良いかより悪いかを伝えるために設定した報酬システムが、抜け穴を見つけたためにハッキングされることを意味します。以前に使った例ですが、再び使用するのは、OpenAIが数年前に公開したボートレースビデオゲームです。

彼らはボートレースゲームで最高得点を取るようにAIを訓練しようとしていました。もちろん、それはボートレースゲームなので、最終目標はレースに勝つことだと思うでしょう。しかし、報酬信号として使用していたのは、ゲーム内でAIが生成したポイント数でした。

モデルは、単に円を描いて障害物にぶつかるとそのためのポイントを得ることを発見しました。そして実際には、ただレースを終了するよりも多くのポイントを得られるのです。それが報酬ハックです。

もし自己進化システムを持つなら、テストに使用するベンチマーク、報酬がよく整合され、よく定義されていることを確認する必要があります。そうでなければ、その報酬をハッキングする方法を見つけて、意図しない結果を招く可能性があるからです。

自己改善ループは、連続する世代にわたってミスアライメントを増幅する可能性があります。では、実際にこのシステムに安全性をどのように追加するのでしょうか。すべてのエージェント実行と自己修正プロセスは、隔離されたサンドボックス環境内で実行されます。つまり、変更できる範囲には限りがあり、行ける範囲にも限りがあるということです。

サンドボックス内の各実行は厳格な時間制限の対象となり、リソース枯渇や無制限な行動のリスクを軽減します。自己改善プロセスは現在、エージェント自身のPythonコードベースを修正することによって特定のコーディングベンチマークでのパフォーマンス向上というよく定義されたドメインに限定されており、潜在的な修正の範囲を制限しています。

これがDarwin Girdle Machineです。これは自己改善する人工知能を持つことができるという証明です。もちろん、まだ改善が必要です。まだ大量の計算資源を投入する必要がありますが、自己改善AI、別名知能爆発の変曲点にいることを示す小さなヒントをあちこちで見始めているようです。

最後に一つ残しておきます。このシステムで進化していない唯一のものは基盤モデル自体であることを思い出してください。今度は、50年ぶりにより効率的な行列乗算の方法を初めて発見したAlpha Evolveの論文について考えてみてください。

それを取って基盤モデルに適用することを想像してください。AIがその基盤モデルの別のバージョンを事前訓練したり、事後訓練したり、全体の足場のコア知能を進化させることができることを想像してください。

それが知能爆発に欠けている最後のピースかもしれません。この動画を楽しんでいただけたなら、いいねとチャンネル登録をぜひお願いします。

コメント

タイトルとURLをコピーしました