
OpenAIが人間のプログラマーの99.8%を上回る - AGIとその先へ
7,539 文字
OpenAIが先日、人工知能が世界最高のプログラマーになるために何が必要かを示す論文を発表しました。注目すべき点は、OpenAIがこの論文で明らかにした戦略がコーディングに限定されたものではないということです。強化学習をスケールアップすることがAGIとその先への道であることを証明しています。そこで、この論文を詳しく解説し、強化学習とテスト時の計算能力を組み合わせることで、知能の可能性は無限大であることをお示ししたいと思います。
しかし本題に入る前に、ある映像をご紹介したいと思います。数週間前、サム・アルトマンは日本でインタビューを受け、こう述べています。「12月に公開で話題にしたo3は、世界で175番目に優秀な競技プログラマーです。私たちの内部ベンチマークは現在50位前後で、今年末までには1位に到達する可能性があります」。これで目標の水準と、OpenAIが今年末までに達成できると自信を持っている位置が分かりますね。
この論文「大規模推論モデルによる競技プログラミング」は、OpenAIが数週間前に発表したものです。この数週間、DeepSeekモデルがリリースされ、DeepSeek R1の論文が公開されて以来、このチャンネルをご覧になっている方はすでにご存知かと思いますが、検証可能な報酬を伴う強化学習とテスト時の計算能力という2つのスケーリング要素が、これらのモデルで驚異的な知能を実現するために必要不可欠です。人間を方程式から取り除くことが重要なポイントとなっているようです。
ここで一旦DeepSeekについて触れておきましょう。数週間前、DeepSeek R1は世界を席巻したように見え、多くの人々がこのモデルのコストと効率性に注目しました。トレーニングコストはわずか500万ドルでしたが、これは実際には単純な比較はできません。彼らの成果は確かに素晴らしいものでしたが、この論文が世界に示した真の重要なポイントは、強化学習がモデルの性能を向上させる大きな breakthrough だったということです。
その後、検証可能な報酬を伴う強化学習により、非常に小規模なモデルから思考行動を引き出すことができる例が出てきています。1週間前には、バークレーの博士課程の学生が30ドルを使って15億パラメータのモデルからその思考行動を引き出すことに成功したという動画を公開しました。これは明らかに、人工知能の次のレベルへと導く戦略となるでしょう。
では、検証可能な報酬を伴う強化学習とは実際何なのか、説明しましょう。これはAlphaGoを世界最高の囲碁プレイヤーにし、さらに人間が一度も思いつかなかった戦略を発見させた方法と同じです。有名な第37手がその例です。基本的には、AIに自己対戦させる方法だと考えることができます。AIはさまざまな試行を行い、それを望むだけスケールアップすることができます。そして正解すれば報酬を得られ、間違えれば報酬は得られません。
もちろんこれは実際の仕組みを大幅に単純化した説明ですが、囲碁を例に考えてみましょう。2つのAIが互いに囲碁を打ち合い、勝った方がより良い戦略を持っていたということで、その勝利に対してAIに報酬を与えることができます。これを数十回、数百回、数千回、数百万回と繰り返すことで、最終的にAIはあらゆる状況での最適な囲碁の戦略を学習することになります。
このアプローチが特別である理由がいくつかあります。まず、これを無制限にスケールアップできるということです。AIシステム同士を何度でも対戦させ続けることができます。それが可能な理由は、人間が介在していないからです。AlphaGoは実際には既存の対局データをAIに提供していません。基本的にルールと勝った場合の報酬、負けた場合の報酬を示しただけで、その過程で人間が実際にパフォーマンスを評価することはありませんでした。そしてそれにより、AlphaGoは世界最高の人間の囲碁プレイヤーを打ち負かすことができたのです。
これが全て検証可能な報酬についてですが、その「検証可能」という部分が意味するのは、囲碁にはきちんと定義された解があるということです。勝つか負けるかが分かります。これが検証可能という意味です。しかしこれは他の分野にも当てはまります。基本的に全てのSTEM(科学、技術、工学、数学)には検証可能な報酬があります。1+1は常に2になります。モデルが1+1=3と言えば、それが間違いだと分かります。
コーディングにも検証可能な報酬があります。コーディングの問題では、コード自体は少しずつ異なる可能性がありますが、最終的な出力は同じでなければならず、同じように動作しなければなりません。例えば問題が「1から10までの数字の配列を作れ」というものであれば、出力は既に分かっています。その配列をどのように生成するかは異なる可能性がありますが、答えは依然として正しいのです。また、コードを実行することもできるので、実行してエラーが出れば、もちろんその答えが間違っていることが分かります。
ここで、このセグメントのスポンサーであるLang Traceについてご紹介させていただきます。彼らは素晴らしいパートナーで、本日も彼らについてお話しできることを嬉しく思います。Lang Traceは、ビジネスを前進させるAI製品を構築する先進的なAIソフトウェア開発コンサルティング企業です。
彼らの製品には、オープンソースとOpenTelemetryベースの可観測性と評価プラットフォームが含まれており、アプリケーションでのLLMの使用を評価・改善するのに役立ちます。早期段階の企業からFortune 500企業まで、何千もの開発者から信頼を得ています。L Traceは開発者がトレースを収集・分析し、データセットを収集し、評価を実行することを支援し、その結果、高い信頼性とセキュリティを持つAIシステムを実現します。
L TraceはオープンソースでOpenTelemetryベースで、OpenAI、Anthropic、DeepSeek、Gemini、Weaviate、Pineconeなどと簡単に連携できます。L Traceは、LLMからベクトルデータベース、Crew AI、LlamaIndex、DSPy、LangChainなどのフレームワークレベルの呼び出しまで、全てのエンドツーエンドの可観測性を提供します。私が大好きなCrew AIのネイティブサポートにより、L Traceはエージェントのセッション、タスク、ツール、メモリを追跡するためのカスタムビルトダッシュボードを提供します。
Lang Trceを使えば、デモから信頼性の高いAI製品へと簡単に移行できます。Lang Trceをチェックしてみてください。オープンソースですし、ホステッドバージョンを使用する場合は、説明欄のリンクを使用すると現在20%オフになります。詳しく知りたい方は、全てを説明するウェビナーにご参加ください。GitHubをチェックしてみてください。彼らは素晴らしいパートナーです。Lang Traceに感謝します。
では動画に戻りましょう。この論文では、いくつかの異なるアプローチを比較していますが、主に2つの主要なアプローチがあります。まず、ベースラインとしてGPT-4をコーディングコンテストで使用し、かなり良い性能を示しました。その次のステップは推論モデル、つまりo1とo3モデルです。これらは推論時の計算能力、つまり推論時に思考する能力を活用するモデルで、これによりAIのコーディング品質は大幅に向上しました。
しかし、手書きの推論時戦略を使用する方法と、より一般化されたモデルをスケールアップする方法も比較したいと考えました。ここで少し考えてみてください。彼らは再び推論モデルを取り上げ、人間を介在させています。つまり、人間がこれらの推論時戦略を作成しているのです。私がそう言う時、単に洗練された指示と実際の答えの選択基準を意味しているのですが、重要なのは人間が実際にこれらを書いているということです。
そして、検証可能な報酬を伴う強化学習を使用してモデルをo3までスケールアップし、人間を介在させない方法と比較しました。その結果は非常に興味深いものでした。
この論文から少し引用させていただきます。「複雑なアルゴリズムの問題を解くには、高度な計算思考と問題解決能力が必要です。これらの問題は客観的に採点可能である」というのが重要なポイントです。検証可能な報酬、客観的に採点可能というのが鍵です。
続いて、最初は標準的な非思考型モデルを持っていて、2億4400万パラメータから1370億パラメータまでのモデルがかなり上手くコードを生成できること、モデルサイズに応じてパフォーマンスが対数線形に向上すること、ファインチューニングが精度を大幅に向上させることについて述べています。
そして、AlphaCodeについて触れています。Alphaという言葉を聞いたら強化学習を思い浮かべてください。これがここでAlphaCodeが使用している技術です。AlphaCodeは大規模なコード生成と推論時のヒューリスティックを用いて競技プログラミングの課題に取り組みました。AlphaCode 2は改良により、AlphaCodeが解く問題数をほぼ2倍にし、Code Forcesで85パーセンタイルに位置しました。
両方のAlphaCodeシステムは、問題ごとに最大100万の候補解を生成し、その中からトップ10の提出を選択しますが、ここがポイントですが、手作業で設計された推論時戦略、つまり人間が介在する方法を使用しています。
次に大規模推論モデルo1とo3について説明します。これらのモデルは思考の連鎖(Chain of Thought)推論を使用して、数学やコーディングなどの複雑なタスクに取り組みます。DeepSeek R1の研究や、比較的注目されなかったものの、DeepSeekと同様の成果を独自に達成したKimmy K 1.5の研究は、思考の連鎖を学習することで数学とプログラミングの両方のチャレンジでパフォーマンスが向上することを示しています。
この思考の連鎖は非常に強力ですが、まだ疑問が残ります。これらの手作業で設計された推論戦略は最善のアプローチなのでしょうか?最高のコーディングAIに到達するために本当に必要なのでしょうか?
彼らはこの質問に光を当てることができる3つのシステムがあると言います。まず推論モデルのo1、次により洗練された推論と選択基準を持つo1 II、そしてo3の初期チェックポイントです。一般的にはII3ではありません。おそらくすでにお分かりかと思いますが、もう一つの例え話をさせてください。
テスラの完全自動運転を考えてみましょう。数年前、テスラの完全自動運転はニューラルネットワークと人間が手書きしたルールのハイブリッドアプローチでした。そして性能の限界に達しました。そしてやはり数年前、彼らは基本的にそのシステムを一掃し、強化学習を使用した完全なエンドツーエンドのニューラルネットワークに移行することを決定しました。つまり、人間が介在しないということです。
それ以来、彼らはその限界を突破し、性能は本当に驚くべきものとなっています。重要なのは、人間の介在が不必要だっただけでなく、むしろ性能を制限する要因となっていたということです。そして推測がつくと思いますが、OpenAIもコーディングAIで同じことを見ています。
では、OpenAI o1から始めましょう。これは洗練された推論時のプロンプト戦略を使用しない推論モデルです。回答する前に拡張された内部の思考の連鎖を生成することで、o1は難しい問題を段階的に体系的に解決する人間に似ています。強化学習はこの思考の連鎖プロセスを洗練させ、モデルがエラーを特定して修正し、複雑なタスクを管理可能な部分に分解し、アプローチが失敗した場合に別の道を探ることを助けています。
私たちは皆、思考の連鎖がいかに優れているかを見てきました。基本的にはそのように機能するのです。さらにo1は、安全な環境でコードを書いて実行するような外部ツールを使用するようにトレーニングされており、これにより生成したコードが正しいか間違っているかを検証することができます。
まず、Code Forcesのベンチマークを見てみましょう。これらのモデルが実際にどのように性能を発揮するか見てみましょう。Code Forcesはプログラミングコンテストのウェブサイトで、ライブコンテストを開催しています。これは国際的な競争の場で、世界最高の競技プログラマーたちが頻繁に利用しています。
下にスクロールすると、y軸にCode Forcesのレーティング、x軸に異なるモデルが表示されています。GPT-4.0はELO 808、o1プレビューは1258、o1は1673です。各モデルのアップグレードで劇的な改善が見られ、複雑な推論に強化学習が非常に効果的であることが分かります。
ここで非常に重要なことがあります。これはIOIを使用したo1で、IOIがどのように機能するのか詳しく説明します。o1の開発と評価の過程で、強化学習の計算量とテスト時の推論計算量の両方を増やすことで、一貫してモデルのパフォーマンスが向上することが分かりました。
つまり、強化学習による自己対戦を行わせるだけでなく、推論時により長く考えさせ、より多くのトークンを使用し、先ほど説明した思考の連鎖を行わせることで性能が向上したのです。ご覧のように、トレーニング時の計算量をスケールアップすると性能が向上し、右側では同じことがテスト時の計算量でも起こっています。左側が強化学習、右側がトレーニング後のテスト時です。
IOIは競技プログラミング用に設計された特殊なテスト時推論戦略を組み込んでいますが、これらは人間が手書きしたものであることを覚えておいてください。その仕組みはこうです。各II問題をサブタスクに分割し、各サブタスクに対してo1 IIから10,000の解を抽出し、そしてクラスタリングとリランキングベースのアプローチを使用して、このセットからどの解を提出するかを決定します。
もし「これは本当に複雑そうだ」と思われたなら、その通りです。強化学習とテスト時の計算量をスケールアップするだけで、これらを取り除いた場合に何が起こるかをこれから見ていきます。
彼らは続けてクラスタリングとリランキングについて説明していますが、これらは再び、このo1モデルから最良の答えを選ぶための非常に複雑な手書きのアプローチや戦略に過ぎません。クラスタリングの要点は、多くの出力を取り、似ているものをグループ化し、そこから1つを選ぶというものです。リランキングも同様に洗練されたアプローチで、モデルが生成したテスト入力のエラーや提供された公開テストケースの失敗など、以下の品質基準で各解をスコア化します。これも手書きです。
そして人間と同じルールに従い、最大50件(人間にも許可されている最大数)を提出し、最も難しいものから始めてサブタスクをラウンドロビン方式で行いました。間違いなく非常に良い性能を示しました。o1 IIはCode Forcesのレーティング1807を達成し、93%の競技者を上回りました。そして手書きの戦略を加えると、99.8パーセンタイルの2214まで上昇しました。
ここでCode Forces o1が1673、手書き戦略を使用したo1 IIが1807、公開テストフィルタリングを加えるとさらに良くなり、完全なテスト時戦略で2214となっているのが分かります。ここで手書きの戦略を使用しないo3をお見せしましょう。
o1 IOIは追加の強化学習ファインチューニングと注意深く設計されたテスト時推論パイプライン(多くの強化学習と多くのカスタム書き込み推論戦略を表す華やかな言い方です)を組み合わせることで強力な結果を達成しましたが、その成功は人間の介入、つまりこれらの戦略を定義し実装する人間に依存していました。これが重要なポイントです。人間の介入です。
テスラがエンドツーエンドのニューラルネットワークから人間を排除し、その結果大きな改善を見たのと同じように、AlphaGoが機能したのと同じように、人間を排除してAIに自己対戦させただけです。これから見ていくのがまさにそれです。
ここでo3がCode Forcesのレーティングで99.8パーセンタイル、ELOスコア2724まで跳ね上がりました。これはo1 IOIからの大きな飛躍です。98パーセンタイルから99.8パーセンタイルへの違いは大きくないと思われるかもしれませんが、実際はそうではありません。ELOの差を見てください。2200対2700です。
ここで重要なことに注目してください。o1 IIが複雑な人間定義のテスト時戦略に依存していたのに対し、o3はもっとシンプルなアプローチを取りました。o3はo1を大きく上回りました。つまり、サブタスク特有のプロンプト、手動分割、複雑な提出戦略を必要とせず、単に強化学習とテスト時の計算能力をスケールアップするだけで、より良い結果が得られたのです。
o1 IIは50回の提出で213ポイントを獲得し、これは金メダルのカットオフをわずかに上回るものでした。一方、o3は、純粋なo3だけで395.84ポイントを獲得し、金メダルの基準を超え、しかも50回の提出制限を下回りました。
つまり、これらのモデルをスケールアップするだけで、世界最高のプログラマーがAIになり、さらにその先、最高の推論者、数学者、科学者、技術者、そしてAGI、最終的にはASIに到達できることを示唆しています。
この論文が示しているのは、このチャンネルをご覧になっている方なら既にご存じのことです。強化学習とテスト時の計算能力が、AGIへの明確な道筋です。サム・アルトマンも既に言っています。彼は「明確な道筋があり、あとは構築するだけだ」と述べています。これが彼の言っていることです。彼らはアルゴリズムを持っており、アプローチを持っています。あとはスケールアップするだけなのです。
この動画を楽しんでいただけたなら、ぜひ「いいね」と登録をお願いします。次回お会いしましょう。