← 最新の論文
🤖 machine learning

Don't Claim Benchmark-Oriented Optimization Improves General Coding Capability -- Diverse Evaluation Is Required

本論文は、SWE-benchのような限定的なコーディングベンチマークに対して大規模言語モデルを最適化することは、一般的なコーディング能力の向上や他のタスクへの転移をもたらさないことを論じており、信頼できる評価を確実にするために、多様で包括的な評価手法への移行と継続的なベンチマークの維持が必要であることを示唆している。

原著者: Egor Shibaev, Vera Kudrevskaia, Timur Galimzyanov, Mikhail Evtikhiev, Ana Terna, Rastislav Rabatin, Timur Kudashev, Timofey Bryksin, Arina Puchkova, Patrik Bartak, Egor Bogomolov, Sergey Titov

公開日 2026-08-17
📖 1 分で読めます☕ さくっと読める

原著者: Egor Shibaev, Vera Kudrevskaia, Timur Galimzyanov, Mikhail Evtikhiev, Ana Terna, Rastislav Rabatin, Timur Kudashev, Timofey Bryksin, Arina Puchkova, Patrik Bartak, Egor Bogomolov, Sergey Titov

原論文は CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) でライセンスされています。 これは以下の論文のAI生成解説です。著者が執筆または承認したものではありません。技術的な正確性については原論文を参照してください。 免責事項の全文を読む

設定:コードの世界と「スコアカード」の罠

コンピュータが自らソフトウェアを書くことを学習している、いわゆる「コードのためのディープラーニング(Deep Learning for Code)」と呼ばれる分野の世界を想像してみてください。この世界では、研究者たちはプログラミング言語を理解できる「基盤モデル」と呼ばれる巨大なデジタル脳を構築しています。これらの脳がどれほど賢いかを判断するために、科学者たちは「ベンチマーク」——いわばSATやオリンピックのような標準化されたテスト——を使用します。現在、最も有名なテストの一つがSWE-benchと呼ばれるものです。これは、AIに現実世界のソフトウェアのバグを与え、それを修正させるという特定のチャレンジです。

長い間、コミュニティはある単純な仮定の下で動いてきました。もしAIがSWE-benchで高いスコアを獲得したなら、それは一般的に優れたコーダーであるはずだ、という仮定です。それは、ある学生が標準化テストの数学セクションで満点を取ったからといって、その学生が物理学や歴史、芸術においても天才であると自動的に判断するようなものです。この論文は、非常に重要な問いを投げかけています。その仮定は本当に正しいのでしょうか? 著者らは、私たちが自分自身を欺いているのではないかと危惧しています。彼らは、AIが「思考する者」ではなく「テストを受ける者」になっているのではないかと疑っています。つまり、コーディングという広範で混沌とした現実世界の仕事が上手くなっているのではなく、SWE-benchという特定の試験に合格する方法を正確に学習してしまっているのではないか、ということです。

論文:なぜスコアカードは私たちに嘘をつくのか

この論文の著者であるJetBrainsおよび様々な大学の研究チームは、この仮定を検証することに決めました。彼らは、これらのベンチマークが実際に測定しているものと、私たちがそれによって証明されていると主張しているものとの間に「意味のギャップ(meaning gap)」が存在すると主張しています。真実を見出すために、彼らは既存のスコアを見るだけでなく、独自の新しいテスト場を構築しました。

実験:新しい遊び場
研究者たちは、人気の高いWebフレームワークであるDjangoに基づいたカスタムベンチマーク・スイートを作成しました。なぜDjangoなのでしょうか? それは、SWE-benchのテスト問題のほぼ半分をDjangoが占めているからです。もしAIが真のコーディングの天才であるならば、SWE-blendの問題を解くのと同様に、Djangoのバグも修正できるはずです。

彼らは、AIが異なる種類の作業を扱えるかどうかを確認するために、3つの特定のタイプのチャレンジを設計しました。

  1. メソッド生成(Method Generation):説明に基づいて、ゼロから新しい関数を書き上げる。
  2. メソッド補完(Method Completion):すでに始まっている関数を完成させる。
  3. プログラム修復(Program Repair):壊れたコードの一部を見つけ出し、エラーメッセージを用いて修正する。

そして、彼らはSWE-benchで高得点を取るように集中的に「訓練」された一連のAIモデルを取り上げ、彼らの新しいDjangoチャレンジでテストしました。また、特定の単一のタスクに対して独自に訓練したモデルもテストし、そのスキルが他のタスクへ波及するかどうかを確認しました。

大きな発見:「スペシャリスト」の問題
結果は衝撃的なものでした。論文は、AIをSWE-benchに向けて最適化することは、より優れた一般的なコーダーにすることにはならないと示唆しています。実際、それは他のことに対しては性能を低下させることがよくあります。

  • スキルの転移なし:SWE-benchのスター選手であるモデルを、新しいDjangoのタスクに従事させたところ、モデルはしばなく失敗しました。彼らはバグの修正や新しいコードの記述が上手くなったのではなく、SWE-benchが使用する特定の種類のパズルを解くのが上手くなっただけでした。それは、犬に特定の種類のボールを取ってくるよう訓練し、その後、その犬がフリスビーをキャッチできないことに驚くようなものです。
  • 「フォーマット」の罠:失敗したモデルの多くは、コードを書けなかったから失敗したのではありません。彼らは、回答の「フォーマット」に混乱したために失敗したのです。SWE-benchの訓練によって、モデルは特定のタグやスタイルでラップされたコードを出力するように学習してしまいました。モデルは「試験の指示」に従うことには非常に上手くなりましたが、単に「仕事」を行うことを忘れてしまったのです。
  • 「単一タスク」の錯覚:研究者が(バグ修正のみといった)一つのタスクだけに絞ってモデルを訓練した場合、それらのモデルはバグ修正には非常に優れた能力を発揮しましたが、新しいコードを書いたり、部分的なコードを補完したりする能力は向上しませんでした。これは、「向上」が限定的かつ特定のものであり、一般的な知能の向上ではなかったことを証明しています。

結論:リーダーボードを信じるな
論文は、あるモデルが「一般的なコーディング能力」を持っていると主張するために、SWE-benchのような単一のベンチマークに依存することは誤解を招くと結論付けています。著者らは、私たちは実際のスキルではなく、テストのスコアに向けて最適化するという罠に陥っていると示唆しています。

彼らは新しい考え方を提案しています:

  • 最大級の最先端モデルに対して:単なる多肢選択式のテストを与えるのではなく、オープンエンドで現実的なプロジェクトに取り組ませるような、「包括的(holistic)」な評価が必要です。
  • 研究において:単一のテストではなく、多くの異なる種類のコーディングタスクをカバーする多様なテスト・スイートが必要です。
  • 実用において:人間が介在して作業をチェックするなど、私たちが実際に必要としている特定のタスクに対してモデルをテストする必要があります。

要約すると、この論文は、コーディングのリーダーボードにおける高いスコアは、AIが熟練した建築家であることを意味するのではなく、単にテストを受ける達人であることを意味している可能性があると警告しています。AIが真に賢いかどうかを知るためには、単一の数字を見るのをやめ、全体像を見る必要があります。

自分の分野の論文に埋もれていませんか?

研究キーワードに一致する最新の論文のダイジェストを毎日受け取りましょう——技術要約付き、あなたの言語で。

Digest を試す →