AI は答え合わせはできても問題集は作れない — LLM 評価とモデル選択の論文を読む

AI は答え合わせはできても問題集は作れない — LLM 評価とモデル選択の論文を読む

LLM は OpenAI、Gemini、Anthropic をはじめ、OpenRouter や Hugging Face を使えば無数に選べます。性能も値段も、どの環境のどのプロバイダー経由で使うかによって変わります。選択肢は際限なくあります。

使う側がほしいものは 1 つです。自分のタスクに必要な性能を持つ、いちばん安くていちばん速いモデル。

どれがそれなのかは、試さないとわかりません。だから同じ問題を複数のモデルに解かせて、点を並べます。これがベンチマークです。公開されているものは山ほどあります。MMLU、GSM8K、SWE-bench、MT Bench。

ただし、手元の判断には足りません。公開ベンチマークが測っているのは、その公開ベンチマークの問題を解く力です。学習データに入っていることもあります。そして 2 章で見るように、主要なベンチマークは上位のモデル同士の差をもう測れていません。点が横並びになり、ベンチマークを変えると順位が入れ替わることも指摘されています。

だから自分のタスクで問題集を作ることになります。ここが一番難しいところです。詰まり方は 3 つあって、どれも性質が違います。

1. 易しい問題は何も測らない。 全モデルが正解すれば、全員が満点になります。順位を決めるのは、答えが割れた問題だけです。

2. 難しい問題には正解がない。 自分で解けない難しさの問題を作れば、正解表のほうが疑わしくなります。そして問題集を AI に作らせるなら、出せる難しさの上限は作らせた AI の能力です。

3. 採点が当たらない。 文字列一致は「30 日以内です」と「30 日以内ではありません」を区別しません。AI に採点させれば柔軟になりますが、こんどは採点する側のバイアスが入ります。

この 3 つは、2026 年までにそれぞれ論文で測られています。1 と 2 が 1 章から 3 章、3 が 4 章から 7 章、実際に安いモデルへ振り分けるといくら安くなるかが 8 章、そして全部をいま使っている評価の仕組みのどこに当てるかが 10 章です。

引用した数字はすべて原典にあたって確認しました。

1. 出題と採点は、別の能力だった

いちばん直接この問題を測ったのが Judging Is Not Enumerating(2026 年 8 月)です。

いまモデルは、テストを解く側から、テストを作る側に回りつつあります。テストコード、正解表、採点基準、強化学習の報酬関数。どれもモデルに書かせるのが普通になりました。この論文は、その仕事がちゃんとできているのかを測っています。

比べているのは、同じモデルへの 2 つの頼み方です。

どちらも「何が正解か」を知っていればできる仕事です。そして結果は、判定のほうが一貫して上でした。

何を題材に測ったのか

ここは誤解しやすいところなので先に書きます。この論文はプログラミングの話だけではありません。 題材は 4 つあって、プログラミングはそのうちの 1 つです。

題材 正解が何で決まるか 「作成」で書かせるもの 「判定」で聞くこと
単語リスト+機械的な条件(「同じ文字が 2 回出てくる」など) 条件を当てはめれば計算できる。完全 条件を満たす単語を全部挙げる この単語は条件を満たすか
整数リスト+数値の条件 同じく計算できる。完全 条件を満たす数を全部挙げる この数は条件を満たすか
HumanEval+ / MBPP+(プログラミング) 用意された厳しいユニットテストを実行して決まる その問題のユニットテスト この実装は仕様を満たすか
WordNet(語義の辞書) 辞書に載っているか。完全ではない ある意味を持つ語を全部挙げる この語はその意味に入るか

プログラミングの行だけが、書かせるものが「テスト」です。ほかの 3 つは 正解の一覧をそのまま書かせています。論文の題にある「列挙」はこちらのことで、判定は列挙ではない、が主張です。

なぜ 4 つもやるのか。 モデルが作った正解表をモデルに採点させると循環するからです。だから採点に AI を使わずに正解が決まる題材だけを選んでいます。そして 1 つの題材では疑いが残ります。辞書は不完全かもしれない、用意したテストが甘いかもしれない、条件が単純すぎるかもしれない。この 3 つの弱点は互いに別方向なので、同時には効きません。 性質の違う題材で同じ結果が出ることを根拠にしています。

モデルは Qwen2.5 の 30 億から 720 億を主に使い、Qwen3、Llama、gemma、Mistral、Phi-4 でも再現を確認しています。

先に F1 の説明

点数には F1 を使っています。知っている方はこの節を飛ばしてください。

本当の正解の集合と、モデルが書き出した集合を重ねて、3 つを数えます。

この 3 つから 2 つの割合を作り、その調和平均を取ったものが F1 です。

適合率 = 当たり / (当たり + 過剰)    … 書いたもののうち、本当に正解だった割合
再現率 = 当たり / (当たり + 漏れ)    … 本当の正解のうち、書き出せた割合

調和平均の定義(値が 2 つの場合)は、逆数の平均の逆数
  F1 = 2 / (1/適合率 + 1/再現率)

分母を払うと、よく見る形になる
  F1 = 2 × 適合率 × 再現率 / (適合率 + 再現率)

いちど逆数にするので、小さいほうの値に強く引っ張られます。 たとえば本当の正解が 10 個あって、モデルが 4 個書いて 4 個とも正しかった場合、適合率は 1.0、再現率は 0.4。

F1 = 2 / (1/1.0 + 1/0.4) = 2 / 3.5 = 0.57

算術平均なら 0.7 になるところが 0.57 です。漏れている側が効きます。

判定の側も同じ数え方です。「入る」と答えたもののうち本当に入っていた割合が適合率、入るものを取りこぼさなかった割合が再現率になります。

誤りがどちら側に出るかが、この論文の肝です。 過剰が増えれば適合率が下がり、漏れが増えれば再現率が下がる。先に答えを言うと、出てくるのは漏れのほうです。

大きくしても縮まらない

上の表の 2 行目、整数リスト+数値の条件での結果がこれです。

モデル 一覧を書かせた場合 1 件ずつ判定させた場合
Qwen2.5-3B 0.660 0.936
Qwen2.5-7B 0.699 1.000
Qwen2.5-14B 0.760 0.978
Qwen2.5-72B 0.787 1.000

30 億から 720 億まで、モデルの大きさで 24 倍の幅があります。パラメータは、モデルの中にある重みの数です。

一覧を書く側も、大きくすれば上がります(0.660 → 0.787)。ただし 1 件ずつ判定させた側はほぼ満点なので、差は 0.2 前後のまま残ります。別の構成でも 0.34 から 0.29 へと、ほとんど縮まらないと報告されています。大きくしても残る差だということです。

プログラミングで見ると、もっとはっきりする

ここは文字どおりプログラミングの話です。使っているのは HumanEval+ と MBPP+、「こういう関数を書け」という問題が並んだ問題集です。提出された実装が正解かどうかは、用意されたユニットテストを実行して決まります。これが基準になります。

同じモデルに 2 つの役をやらせた結果がこれです。

「この実装は正しいか」と聞けば当たります。ところが同じモデルにユニットテストを書かせると、正しい実装の半分以上を落とします。 しかも落とす理由が、仕様に書かれていない要件を勝手に足してしまうことです。

AI にテストを書かせたことがあれば、心当たりのある失敗だと思います。

知識が足りないわけではない

対照実験でそれが分かります。「正解を全部書き出せ」ではなく「正解を定める条件を書け」と頼むと、同じモデルが F1 約 0.99。生成された条件はすべて実行可能で、自分が判定役をやったときの点すら上回りました。

ルールは知っている。ルールが指す範囲を書き出せない。 これが測られたことです。

誤りの型も一方に偏ります。圧倒的に「漏れ」、つまり再現率側です。そしてここが厄介で、漏れはレビューで見つかりません。

論文は植え込み実験でこれを測っています。わざと混ぜた過剰な項目(適合率側)は、わざと抜いた項目(再現率側)の 6〜7 倍の頻度で発見されます。実運用の 43,227 件では、漏れ側の失敗が 10 対 1 で多い。

モデルが書いた正解表を強化学習の正誤判定に使うと、正確な正解表を使った場合より精度が 1.9 ポイント落ちます。

実務の読み方: 「AI に問題集を作らせる」は「AI に採点させる」よりはるかに難しい、と測られています。ただしこれは、1 回で答えさせる設定での測定です。論文が勧めているのは、正解の一覧ではなく正解を定める規則を書かせること。そして AI が書いた正解表やテストを使うなら、既知の正答を 1 本通してから使うことです(論文はこの確認が誤った不合格を減らすことも示しています)。

2. 「難しい問題」ではなく「差がつく問題」

評価の目的はモデルを分けることです。そして順位を決めているのは、答えが割れた問題だけです。全員が通った問題と全員が落ちた問題は、どのモデルにも同じ点を与えます。

これを扱う枠組みが、心理測定の 項目応答理論(item response theory、IRT)です。人間のテストのために作られたものが、そのままモデルの評価に使われています。

言葉と式

3 つの量を、別々のものとして扱います。

正解する確率は、この 3 つから 3 段階で決まります。

① 能力と難易度の差をとる
     差 = 能力 − 難易度

② 弁別力を倍率としてかける
     拡大した差 = 弁別力 × 差

③ それを 0〜1 の確率に変える
     P(正解) = シグモイド(拡大した差)

シグモイドだけ先に

③ で使う関数です。どんな数でも 0 と 1 のあいだに押し込む関数で、S 字の形をしているのでこの名前です。

シグモイド(x) = 1 / (1 + exp(-x))

  x = -3  →  0.05
  x = -2  →  0.12
  x = -1  →  0.27
  x =  0  →  0.50     ← 差が無ければ 50%
  x = +1  →  0.73
  x = +2  →  0.88
  x = +3  →  0.95

読み方は 1 行です。差が 0 なら 50%、プラスなら 50% より上、マイナスなら下。 差が大きくなるほど 0 か 1 に近づきますが、0 や 1 には届きません。能力が難易度を大きく上回っていても取りこぼすことはある、という形になっています。

弁別力は「差を何倍に見るか」

②の倍率が弁別力です。ここが効き方の肝です。

能力が難易度を +0.5 だけ上回っているモデルを考えます。差は +0.5 で固定です。

弁別力 0.5 の問題   拡大した差 = 0.5 × 0.5 = 0.25  →  シグモイド(0.25) = 0.56
弁別力 3   の問題   拡大した差 = 3   × 0.5 = 1.5   →  シグモイド(1.5)  = 0.82

同じ実力差なのに、正解率が 0.56 と 0.82 に分かれます。 弁別力が高い問題は、小さな実力差を大きな正解率の差に拡大してくれる。だから差が見えます。弁別力が低い問題は、実力差を薄めてしまいます。

差を −1 から +1 まで振ると、こうなります。

能力 − 難易度 弁別力 0.5(なだらか) 弁別力 3(急)
−1.0 0.38 0.05
−0.5 0.44 0.18
0 0.50 0.50
+0.5 0.56 0.82
+1.0 0.62 0.95

弁別力 3 の問題は、実力が難易度を少し跨いだだけで 0.18 から 0.82 へ動きます。この 1 問で、そのモデルが難易度より上か下かがほぼ分かります。 弁別力 0.5 の問題は 0.44 から 0.56 しか動きません。何問並べても差が見えにくい。

欲しいのは弁別力の大きい問題です。難しさだけ上げても、弁別力が小さければ測れません。

論文を読むときは、同じことがギリシャ文字で書かれています。並べておきます。

P = 1 / (1 + exp(-a(θ - b)))

  θ(シータ)= 能力
  b          = 難易度
  a          = 弁別力

具体例 — 平均が隠すもの

10 問のテストで、2 つのモデルを比べたとします。

点は A が 9 割、B が 8 割。1 割の差がついて見えます。しかし差を作ったのは 1 問だけです。残りの 9 問は、どちらも同じ答えなので、順位について何も言っていません。

そしてその 1 問が、たまたま当たっただけだったら、順位は入れ替わります。これが「上位のモデル同士の差が測れていない」の中身です。点は出ます。点の差の根拠が、ほとんど無いというだけです。

主要なベンチマークを診断すると

Lost in Benchmarks?(2025 年 5 月)は、12 のモデルと 11 のベンチマークでこの枠組みを当てました。出発点は 2 つの症状です。

2 つ目が、上の 10 問の例そのものです。横並びになる理由は、モデルの側ではなく問題の側にあります。そのベンチマークに、その水準で差がつく問題が残っていないのです。だから使う問題集を変えると順位が動きます。

論文は原因を 2 つに分けています。難易度の天井が足りないことと、問題が飽和していることです。

飽和の測り方はこうです。いちばん強いモデルの能力の位置で、上のシグモイドの曲線の傾きを見ます。傾きがほぼ 0 なら、そのモデルにとってこの問題は「もう必ず解ける」側に乗っていて、これ以上強くなっても正解率は動きません。つまりこの問題に残っている伸びしろが無いということです。論文はこれを問題ごとに測り、Local Efficiency Headroom と呼んでいます。以下では「伸びしろ」と書きます。

もう 1 つ、冒頭の 1 と 2 をそのまま裏付ける測定があります。弁別力は、問題が易しすぎても難しすぎても落ちる。 a が大きくなるのは中間だけです。易しくすれば測れず、難しくすれば測れない、という冒頭の行き詰まりが、ここで数字になっています。

同じ分析では、理解していなくても正解できる確率が不自然に高い問題も見つかっていて、学習データへの混入の指標として使われています。難易度に見合わないほど通ってしまう問題は、答えを知っている疑いがある、という読み方です。

そして質の高い問題だけを選び直すと、より小さいベンチマークで人間の好みとの一致が高まり、上位モデル同士の差もつくようになりました。

問題を 10 問に減らして、点が復元できる

Item Response Theory for AI Safety(2026 年 8 月)は、8 本の安全性ベンチマークと 192 モデルで測った、この種の分析としては最大規模のものです。

「適応的に選ぶ」は、人間の適応型テストと同じ考え方です。10 問を固定で決め打ちするのではなく、答えを見ながら次の問題を選びます。 1 問目で正解したら、次はもっと難しい問題を出す。そうすると、そのモデルの能力の近くにある、弁別力の高い問題だけを引けます。能力から遠い問題は、結果が分かりきっているので引く意味がありません。

実務にいちばん効くのはここです。弁別力で問題を選ぶと、ベンチマークは小さくなり、しかも精度が上がります。問題を増やすより、効いていない問題を外すほうが先です。

3. ただし、モデルの数が足りない

2 章の枠組みを手元に持ってくる前に、Can We Trust Item Response Theory for AI Evaluation?(2026 年 7 月)を読む必要があります。結論を先に言うと、この枠組みが検証されてきた条件と、AI のベンチマークの条件がかみ合っていません。

問題ごとに「何個の値を推定するか」で形が変わる

2 章では、問題 1 つに難易度と弁別力の 2 つを置きました。この個数は選べます。少なく置けば推定は楽になり、多く置けば現実に合わせられます。

論文はこの問題側の値も parameter と呼び、1PL・2PL・3PL という名前で区別します。この記事では 1 章の「パラメータ」(モデルの中にある重みの数)と区別するため、問題側は 「推定する値」 と書きます。モデルの重みは学習で決まり、測る側はその結果を読むだけです。問題側の値は、答案を集めてこちらが当てにいきます。

値 1 つ(1PL)  難易度だけ推定する。弁別力は全問 1 とみなす
                P(正解) = シグモイド(能力 − 難易度)

値 2 つ(2PL)  + 弁別力も推定する。2 章で見た形
                P(正解) = シグモイド(弁別力 ×(能力 − 難易度))

値 3 つ(3PL)  + 理解していなくても当たる確率も推定する
                P(正解) = 当たる確率 +(1 − 当たる確率)× シグモイド(弁別力 ×(能力 − 難易度))

3 つ目の値について

3 つ目は、実力が足りていないのに正解してしまう分です。選択式なら、ランダムに選んで当たる確率がその目安になります。4 択なら 0.25 です。

4 択の問題で、能力がまるで足りていないモデル
  値 2 つの形  → 正解率はほぼ 0
  値 3 つの形  → 正解率は 0.25 から始まる(4 回に 1 回は当たる)

ただしぴったり 1/選択肢数 になるとは限りません。 これも答案から推定する値なので、もっともらしい選択肢が混じっていれば 0.25 より上に出ますし、ひっかけが強ければ下に出ます。選択式ではない問題にも使えて、その場合は「実力以外の理由で当たってしまう分」をまとめて吸収します。

曲線の下側が 0 ではなく 0.25 のところに乗る、というのが見た目の違いです。

連立方程式と同じ事情です。未知数が 1 つなら式も 1 つで足りますが、3 つなら 3 つ要ります。問題ごとに 3 つの値を推定したければ、1 つのときよりずっと多くの答案が必要になります。

人間のテストでは、どれだけ要るかが分かっています。

AI のベンチマークは、形が裏返し

人間のテスト AI のベンチマーク
答える側 数百〜数千人 モデル 100 未満
問題の数 20〜100 問 数万
実力のばらつき きれいな山が 1 つ 山が 2 つあったり、片側に寄ったり

答える側が少なくて、問題が多い。人間のテストとちょうど裏返しです。そして推定の手順は、左の列の形に合わせて作られています。

3 行目も効きます。モデルの実力は、人間の点数のようなきれいな山になりません。最前線の数モデルが上に固まり、小型のモデルが下に固まる。山が 2 つできます。手順の多くは、山が 1 つであることを前提にしています。

試した結果 — 逃げ道がない

ここで言う「推定の方法」は、答案の表から問題ごとの値を当てる計算のことです。同じ枠組みでも計算の仕方は何通りもあって、論文は 4 つ比べました。実際のベンチマーク 6 本から取った数値を使い、条件を 18,000 通り変えています。

結果は、こういう板挟みでした。

計算の方法 問題が数万あるとき 答えるモデルが 100 未満のとき
昔からある、正確な方法 計算が終わらない —
速くて大規模に回る方法 回る 出てくる数字が当てにならない

重いほうは回らず、回るほうは当てにならない。どちらを選んでも欲しい数字は手に入りません。 実力のばらつきがいびつな場合(山が 2 つあるなど)も、下の行が崩れる条件です。

そして当てにならないのは、まさに欲しかった 2 つです。

使えるもの、使えないもの

使える 問題ごとに見るという考え方。全員が通る問題を外すこと(2 章)
使えない 手元の 10 や 20 のモデルから「この問題の難易度は 1.8」のような数字を出すこと

分かれ目は 推定するかどうかです。推定には答案の量が要ります。数えるだけなら要りません。

全員が通った  → 差がつかない。外す
全員が落ちた  → 差がつかない。外す
割れた        → ここで差がついている。残す

これは 10 モデルでも言えます。推定した数字ではなく、数えた事実だからです。

2 章の「約 10 問で全体の点を復元、評価費用が 97〜99% 減」は推定を使った結果なので、そこまでは届きません。ただし向きは同じで、数えるだけでも始められます。

4. 採点する側も間違える

採点を AI に任せるなら、採点者(LLM-as-a-judge)の誤り方を知っておく必要があります。ここは測定がよく進んでいる領域です。

ルーブリックとは

この章で何度も出てくるので先に説明します。ルーブリックは、答えに点を 1 つ付けるのではなく、基準のリストに対して 1 つずつ○×を付ける採点形式です。

問い: 返品手続きを 3 行以内で説明してください

基準 1  3 行以内である                      → 満たす / 満たさない
基準 2  返品できる期限の日数に触れている      → 満たす / 満たさない
基準 3  電話番号を書いていない               → 満たす / 満たさない

基準 1 と 3 は機械で確かめられるので、採点にモデルは要りません。「説明が分かりやすいか」のような基準は、人かモデルが判断するしかありません。前者を機械で検証できる基準、後者を主観的な基準と呼びます。この違いが、以下の結果の読み方を変えます。

4.1 自分の答えに甘い

Self-Preference Bias in Rubric-Based Evaluation(2026 年 4 月)は、ルーブリック形式での自己優遇の最初の測定です。

測り方は 過大評価率(overestimation rate)です。答えるモデルが本当は基準を満たしていないのに、採点者が「満たした」と付けてしまう割合です。これを 2 つの場合で比べます。

過大評価率 = 「満たした」と誤って付けた数 / 本当は満たしていない数

  (a) 自分、または同系統のモデルの出力を採点した場合
  (b) 他のモデルの出力を採点した場合

自己優遇 = (a) − (b)

使ったのは IFEval(指示に従えているかを機械で確かめられる問題集)と LiveCodeBench です。基準はどれも機械で○×が決まります。それでも差が出ました。

そして採点形式どうしの比較が、この論文のもう 1 つの結果です。 3 つを比べています。

採点形式 自己優遇の重さ
2 つを比べる(pairwise) いちばん重い
点を 1 つ付ける(direct assessment) 中
ルーブリック 中(点を付ける形と同程度)

「比較させるほうが安全」とよく言われますが、自己優遇に関しては逆でした。5 章でこの話に戻ります。

4.2 ただし、甘さの多くは正当だった

Do LLM Evaluators Prefer Themselves for a Reason?(2025 年 4 月)は、ここに重要な区別を入れます。

正解が客観的に決まるベンチマーク(数学、事実知識、コード生成)を使うと、自己優遇を 2 つに割れます。

結果はこうです。

3 番目が実務に効きます。「強い採点者を使えば安心」は成り立ちません。危ないのは、採点者が答える側としても間違えた問題で、自分の答えを採点する場面です。

4.3 選択肢の位置で点が動く

Am I More Pointwise or Pairwise?(2026 年 2 月)は、ルーブリックによる採点が 選択肢から選ぶ問題と同じ構造であることを指摘します。

この答えは基準を満たしていますか。
  A  完全に満たす
  B  おおむね満たす
  C  部分的に満たす
  D  満たさない

このリストから選ばせると、中身とは別に、位置そのものの偏りが出ます。

4.4 採点の値の取り出し方で変わる

Improving LLM-as-a-Judge Inference with the Judgment Distribution(2025 年 3 月)は、採点の値をどう取り出すかの話です。

モデルは最後に「4」という 1 文字を返しますが、その手前では次のトークンの確率分布を持っています。たとえばこうです。

1: 0.02   2: 0.03   3: 0.10   4: 0.45   5: 0.40

最頻値(確率がいちばん高い 1 文字。greedy)  → 4
期待値(確率で重みを付けた平均)        → 4.18

期待値を取ったほうが、一貫して良い結果でした。 点を 1 つ付ける形、2 つを比べる形、順位を付ける形(listwise)のすべてで。4 と 5 でほぼ迷っているという情報が、「4」という 1 文字では消えてしまうからです。

最後の行は 4.2 と逆を向いています。「点を出す前に考えさせる」は有害な自己優遇を減らしますが、採点の分布を潰します。どちらを取るかは測って決める話で、既定で決まっていません。

5. 「比較がぶれる」は、必ずしも採点者の欠陥ではない

2 つの出力を比べさせる形は広く使われています。そして採点者の信頼性は、3 つの代用指標で測られるのが普通です。

Pair Difficulty Matters(2026 年 9 月)は、この測り方自体を批判します。

Bradley–Terry モデルとは

2 つを比べた結果を 1 本の順位に直すときの標準的なモデルです。それぞれに強さ s を与えて、勝つ確率をこう置きます。

P(A が B に勝つ) = シグモイド(A の強さ − B の強さ)

強さの差 0    →  50%
強さの差 0.5  →  62%
強さの差 1    →  73%
強さの差 2    →  88%
強さの差 3    →  95%

2 章の正解率と同じ形です。 差をとって、シグモイドで確率に変える。あちらは「能力 − 難易度」、こちらは「強さ − 強さ」です。だから表の数字も同じになります。

差が小さい組では、勝率が 50% に近づきます。 どちらが勝ってもおかしくない、ということです。採点者がそこでぶれたとして、それは採点者の欠陥というより、その組にそもそも決着が無いという話になります。

だから代用指標は採点者の質を測れていない

上の 3 つの代用指標は、どれも実力が近い組に支配されます。近い組でぶれるのは当然で、しかも 1 つ 1 つの勝ち負けは、最終的な順位にほとんど寄与しません。順位の情報を運んでいるのは実力が離れた組ですが、そちらは代用指標をほとんど動かしません。

人手評価の 2 つのコーパスとシミュレーションで確認しています。代用指標は、正解に対する順位の正確さとは弱い相関しかなく、予測力は離れた組に集中していました。

読み方は 2 つあり、どちらも効きます。

1 つ目。「この採点者は比較がぶれるから使えない」は早い判断です。論文は、そのせいで有能な採点者が候補から外されていると主張しています。採点者は、正解に対する順位の正確さで選ぶべきです。

2 つ目は逆向きで、設計の話です。隣り合う 2 つを比べて差を出す形は、そもそも信号が薄いところを測っています。安いモデルとその 1 つ上を比べるのは、まさにこの「近い組」です。差が出ないのはモデルが同じだからではなく、測っている場所のせいかもしれません。

そして 4.1 の結果と合わせると、この形は自己優遇もいちばん重く出ます。2 つを比べる形は、思っているほど安全な選択ではありません。

6. 文章の答えを採点する

選択式や文字列一致で測れる範囲は限られます。記述式に広げたくなりますが、そうすると採点のほうが難しくなります。

記述式の自動採点とは

記述式の自動採点(automated short answer grading、ASAG)は、問いと模範解答と学生の答えを並べて、答えにラベルを付ける仕事です。Estimating LLM Grading Ability and Response Difficulty in Automatic Short Answer Grading via IRT(2026 年 5 月)が使っているのは、科学分野の問いを集めた 2 つのデータです。ラベルは 5 つあります。

correct                       正しい
partially_correct_incomplete  部分的に正しいが、足りない
contradictory                 模範解答と矛盾する
irrelevant                    関係ない
non_domain                    そもそも分野の外

対象は 17 の公開モデル。内容の広さが違う 2 つのデータを使っています(1 つは電気・電子の入門に絞ったもの、もう 1 つは科学全般)。

これまでの測り方と、その限界

普通は全体の macro-F1 と κ で測ります。κ(コーエンのカッパ)は、一致率から「偶然でも一致してしまう分」を引いた指標です。

κ = (実際の一致率 - 偶然の一致率) / (1 - 偶然の一致率)

例: 実際の一致率が 0.70、ラベルの偏りから偶然の一致率が 0.40 なら
    κ = (0.70 - 0.40) / (1 - 0.40) = 0.50

ラベルが 5 つあると偶然の一致も起きるので、素の一致率だけ見ると甘く出ます。だから κ を使います。

ただし κ も F1 も、全体を 1 つの数に潰します。この論文は、2 章と同じ道具を採点者に当てました。答案ごとに 採点難易度、モデルごとに 採点能力 を置いて、別々に見ます。

分かったこと

2 番目は、迷ったときに中間のラベルへ逃げるという現象です。「部分的に正しいが、足りない」は、どんな答案にもある程度は当てはまってしまうラベルです。判断に困ると、そこへ寄ります。中間のラベルを用意すると起きる、という読み方もできます。

3 番目の「埋め込み空間で孤立している」は、ほかのどの答案とも似ていないという意味です。似た答案が周りにあれば、それをなぞって判断できます。独特な書き方をした答案は、その手がかりがありません。

読み方: 記述式への拡張はできます。ただし「平均が同じ採点者は同じ」とは言えないので、難しい答案での落ち方を別に測る必要があります。そして 3 番目は実装に直接使えます。模範解答から意味的に遠い答案は、採点が当たらない側に寄ると分かっているので、そこだけ人が見るという振り分けができます。

7. なぜ採点のほうが易しいのか

ここまでの全体を支えている理屈に、名前が付いています。生成と検証のギャップです。

素朴な説明はこうです。生成は、語彙の中から次の 1 トークンを選ぶことを何百回も繰り返します。どこかで 1 つ外すと以降が崩れるので、誤差が積み上がります。検証は「正しい/正しくない」の 2 択です。選ぶ先の広さが、そもそも違います。

Variation in Verification(2025 年 9 月)は、参照解答なしで正しさを判定する「生成的検証」を測りました。12 のベンチマーク、14 の公開モデル(20 億〜720 億パラメータ)と GPT-4o。

出てくるモデルは 2 種類で、論文は generator と verifier と呼んでいます。この記事ではこれまでどおり答えるモデルと採点者と書きます。

ここで採点者がやっているのは、1 章の判定と同じ○×の作業です。違うのは、1 章では正解の分かっている候補を見せていたのに対し、ここでは模範解答なしで判断する点です。

3 つの結果が出ています。

  1. 易しい問題では、採点者は正答をより確実に認定できる
  2. 弱いモデルが書いた答えの誤りは、強いモデルが書いた答えの誤りより見つけやすい
  3. 採点者の採点能力は、その採点者自身の解答能力と相関する。ただし関係は問題の難しさで変わる

2 番目は、安いモデルに答えさせて、強いモデルに採点させるという、よくある設計にそのまま当たります。この設計で採点されるのは、弱いモデルが書いた答えです。つまり誤りが見つけやすい側だけを採点していることになります。

論文は理由までは特定していません。誤りの出方の違いとして想像できるのは、こういう形です。

答えるモデル 誤りの出方の例 採点者から見て
安いモデル 計算が合わない。形式が崩れる。聞かれていないことを答える 気づきやすい
強いモデル 筋の通った文の、1 か所だけが事実と違う 気づきにくい

読み方: この設計は、2 番目の結果に助けられている側です。ただし、ここで測った採点の当たり方は持ち越せません。安いモデルをより強いものに入れ替えると、採点する側を 1 つも変えていないのに、採点は当たりにくくなります。測っていたのは採点者の能力ではなく、採点者と答えるモデルの組だからです。

もう 1 つ、実務で効く結果があります。同じ問いに何度も答えさせて、採点者に良いものを選ばせる構成(1 つの問いに n 個答えさせ、採点者に 1 つ選ばせる形)を挟むと、弱いモデルが強いモデルにほぼ並ぶ場合があります。論文は Gemma2 の 90 億と 270 億で、その差が 75.7% 縮んだ例を挙げています。

一方で、強い採点者が弱い採点者に対してほとんど優位を持たない場面も特定されています。そこは両方とも意味のある採点になっていません。採点者を上のモデルに替えれば良くなる、とは限らないということです。

8. 本題 — モデルを振り分けると、いくら安くなるか

ここまでが測る側の話です。測れたとして、実際にいくら安くなるのか。

定型の設計はこうです。問いごとに、軽い予測器が「安いモデルで足りるか」を当て、閾値を下回ったら高いモデルへ上げる。

RouteLLM の費用表

RouteLLM(2024 年 6 月)は、強いモデルと弱いモデルの 2 択を、人間の好みデータで学習した振り分け器で選びます。

まず前提の値段です。 論文の見積りで、百万トークンあたり GPT-4 が 24.7 ドル、Mixtral 8x7B が 0.24 ドル。約 100 倍の差があります。この差があるから振り分けが効きます。

比較の基準は「ランダムに振り分けた場合」です。削減比 3.66 倍は、同じ品質に届くまでの GPT-4 の呼び出しが、ランダムに振り分けたときの 1/3.66 で済んだという意味になります。全件を GPT-4 に投げた場合との比ではありません。

ベンチマーク 保った品質 GPT-4 の呼び出しの削減比
MT Bench GPT-4 の 95% 3.66 倍
MMLU GPT-4 の 92% 1.41 倍
GSM8K GPT-4 の 87% 1.49 倍

ベンチマークによって 3.66 倍と 1.41 倍の差が出ているところが実務的に大事です。問いの分布次第で効きが変わります。 論文自身、MT Bench が学習に使った問いの分布に近かったことが、この差の説明だろうと書いています。

そしてもう 1 つ、いちばん使える結果が 転移(transfer)です。学習した振り分け器は、強いモデルと弱いモデルを入れ替えても再学習なしで効きました。学習データに入っていない Claude 3 Opus と Sonnet の組、Llama 3.1 の 700 億と 80 億の組でも性能を保っています。モデルが入れ替わるたびに振り分け器を作り直す必要はない、ということです。

解く前に、解けるかが分かる

LLMs Encode Their Failures(2026 年 2 月)は別の角度から入ります。生成する前の内部表現から、そのモデルがこの問題を解けるかを当てる、という論文です。

使うのは線形プローブです。モデルの中間層が出す数値のベクトルを入力に、1 層の線形分類器を学習させて「解けるか」を当てます。モデル本体は触りません。結果は、質問の長さや単語の重み付けのような表層の特徴を大きく上回りました。

面白いのはここです。モデルは 人間の難易度とは別の、そのモデル固有の難易度 を符号化しています。そして長い推論を使うほど、その 2 つの違いは大きくなります。人間が難しいと思う問題と、モデルが落とす問題は別物だということです。

これを使って複数モデルに振り分けると、最良の単体モデルを上回りながら、MATH で推論費用を最大 70% 削減しました。

まとめて投げる話と、組み合わせると難しくなる

Towards Cost-effective LLMs Routing with Batch Prompting(2026 年 5 月)は、振り分けと、複数の問いを 1 回の呼び出しにまとめるバッチ処理を同時に扱います。従来はどちらか片方だけでした。

合わせた問題は NP 困難 であることを示しています。厳密な最適解を現実的な時間で求める方法は見つかっていない、という意味です。だから論文も、費用と品質の釣り合いの良い組み合わせを貪欲に選ぶ方法を提案しています。最適化そのものを厳密に解こうとしないほうがよい、という実務的な示唆でもあります。

問いごとか、仕事ごとか

論文はほぼ問いごとに振り分けます。仕事の種類ごと(この機能はこのモデル、という形)に振るのは粗いですが、作るのははるかに易しく、まず効果を確かめるには十分です。

そして実務の報告で繰り返し挙がる不満は「各段の品質を検証する評価の負担」です。つまり本稿の 1 章から 7 章に戻ってきます。安くする仕組みを作るより、安くして大丈夫かを測るほうが大変、というのが現場の声です。

失敗の報告も読む価値があります。ルーターが 8 倍払って安いモデルと同じ答えを出した話 は、振り分けの判断自体にモデルを使ったときの素直な失敗例です。

なお、ここで引用した論文はどれも 費用 を測っていて、応答時間は主題になっていません。安さと速さは普通は同じ方向を向きますが、振り分け器自身の推論が 1 段増えることや、バッチにまとめると最初の 1 件の待ち時間が伸びることは、費用の表には出てきません。速さが要件なら、そこは自分で測る必要があります。

9. Anthropic のガイドと、論文と食い違うところ

モデルを作っている側の指針も見ておきます。Define success criteria and build evaluations の要点です。

採点手段には順番があります。

手段 速さ・信頼・規模 弱点
コードで採点 最速、最も信頼でき、最もよく伸びる 細かい判断ができない
AI で採点 速く柔軟で伸びる。複雑な判断に向く 伸ばす前に信頼性を試す必要がある
人手で採点 最も柔軟で質が高い 遅く高い。できれば避ける

「自動不合格の条件」は、ガイドが挙げている例が分かりやすいです。比べるための曖昧な基準は、こちらで置いたものです(ガイドに載っているのは具体的な基準だけです)。

基準
曖昧な基準(例) 答えが適切であること
具体的な基準(ガイドの例) 答えは必ず最初の文で Acme Inc. に触れること。触れていなければ自動的に不正解とする

「適切」は採点者ごとにぶれますが、「最初の文に特定の語があるか」はぶれません。4 章で見たバイアスは、基準が曖昧なところに入り込みます。採点者を強いモデルに替える前に、基準文を書き込むほうが安い、という順番になります。

そして「細かい判断ができない」が、冒頭の 3 つ目です。コードでの採点はいちばん信頼できる手段ですが、信頼できるのは書いたとおりに動くことであって、測りたかったことが測れている保証ではありません。そこを埋めるために AI に採点させると、4 章から 6 章のバイアスが入ってきます。どちらかが正解という話ではなく、トレードオフです。

食い違うところが 2 つ

どちらも、一方が間違っているという話ではなく、意識して選ぶべき分岐です。

1 つ目。量を優先するのか、入れる問題の条件を厳しくするのか。 ガイドは量を推します。一方で 1 章の結果は、AI が作った問題には見つけにくい漏れが入ることを示しています。量を採るなら、入ってくる問題の質は落ちます。両方を最大にはできません。

2 つ目。点を出す前に考えさせるのか。 ガイドと 4.2 は考えさせる側、4.4 は採点の分布が潰れるので逆です。自分の採点の仕組みで測って決めるしかありません。

10. 今の evals にどうつながるか

ここまで論文の話でした。では、いま動かしている評価の仕組みのどこに効くのか。promptfoo、DeepEval、Ragas、Braintrust、Langfuse といった道具の比較は別記事にあります。この章は、どの道具を使っていても同じように効く話です。

結論から言うと、新しい道具は要りません。いまある仕組みの使い方が変わります。

論文の結果 手元の評価のどこに効くか
判定は得意、作成は苦手(1 章) ケースを生成させる機能。生成させた正解表を、そのまま判定条件に使わない
誤りは「漏れ」に偏る(1 章) 生成されたケースのレビュー。足りないケースは目で見つからないので、レビューに期待しない
弁別力(2 章) ケースの選別。全モデルが通るケースは、回帰テストの時間を食うだけ
飽和・天井(2 章) 公開ベンチマークの点を、モデル採用の判断にそのまま使わない
推定にはモデルの数が足りない(3 章) 「問題の難易度を推定する」仕組みを自作しない。通った/落ちたの集計で止める
自己優遇(4.1) 採点者のモデル選び。評価される側と同系統を採点者にしない
アンサンブルが効く(4.1) 採点者を複数にして多数で決める。一致の低い基準は外す
採点者が自分で間違えた問題が危ない(4.2) 採点者自身が苦手な領域を把握しておく
位置バイアス(4.3) 選択肢の順と、基準の並び順をランダム化する
採点の分布の期待値(4.4) 確率を取れるなら、点を 1 文字ではなく期待値で取る
近い組は信号が薄い(5 章) 隣り合う 2 つを比べる設計を見直す。採点者の良し悪しは離れた組で確かめる
採点難易度(6 章) 模範解答から意味的に遠い答案だけ人に回す振り分け
生成と検証のギャップ(7 章) 同じ問いに何度も答えさせ、採点者に選ばせる構成。安いモデルでも上がる
量を優先(9 章) ケース数を増やす方向に投資する。自動採点できる形に問いを設計する

いちばん安い一手を 1 つ挙げるなら 9 章です。採点者を強いモデルに替える前に、基準文へ自動不合格の条件を書く。4 章のバイアスは曖昧な基準に入り込むので、基準を締めるほうが効きます。

やらないほうがよい一手も 1 つあります。3 章の結果から、項目応答理論を手元に持ち込んで難易度や弁別力を推定することです。枠組みの考え方は使えますが、手元のモデル数では推定値が立ちません。

そして、この表のどの行も 評価の仕組みのほうを変える話です。本番のモデルを安いほうへ振り分けるのは 8 章で、そのとき前提として要るのがこの表です。測れるようになってから振り分ける、という順番になります。

まとめ

読む順番を 1 つ提案すると、Judging Is Not Enumerating、Variation in Verification、RouteLLM の 3 本です。それぞれ「なぜ問題集が作れないのか」「なぜ採点なら動くのか」「それでいくら安くなるのか」に対応していて、残りはこの 3 本の精度を上げる話として読めます。

参照

出題と採点

問題の選び方(項目応答理論)

採点者の信頼性

モデル選択

指針

関連記事

この記事をシェア

関連記事

記事一覧に戻る