まったく同じ性能の2つを比べました。最後に1回だけ見れば、差があると出るのは4.5%です。
ところが毎日のぞくと29.9%になりました。差がないものを比べているのに、3回に1回は差が出ます。
同じ性能の2つを2000回ずつ比べました。途中で判定する回数が増えるほど、誤った結論が増えます。
LLMのA/Bテストで途中経過を見るとどうなるのかを、実際に走らせて測りました。まったく同じ性能の2つを比べています。
どちらも正答率70%で、片側2000件まで集めます。これを2000回繰り返し、差があると判定された割合を数えました。
for (let i = 1; i <= TOTAL / 2; i++) {
if (r() < TRUE_RATE) a++; na++;
if (r() < TRUE_RATE) b++; nb++;
if (checkPoints.includes(i)) {
if (Math.abs(zTest(a, na, b, nb)) > Z95) { found = true; break; }
}
}
見るタイミング 「差がある」と出た割合 最後に1回だけ見る 4.5% 途中で1回見る 7.6% 4回に分けて見る 12.7% 10回に分けて見る 19.3% 毎日見る(40回) 29.9%
上の表を見てください。最後に1回だけ判定すれば4.5%です。5%前後という設計どおりの値です。
途中で1回見るだけで7.6%に上がります。40回のぞくと29.9%です。
比べているのはまったく同じ性能の2つです。本当は差がありません。それでも3回に1回は「差がある」という結論が出ます。
判定を1回行うたびに、5%の確率で誤ります。何回も判定すれば、どこかで当たってしまいます。
この性質は昔から知られています。一連の検定でなされる推論の数が多いほど、誤った推論が起きやすくなると説明されています。
しかも途中で止めるので、たまたま差が開いた瞬間を選んでいることになります。もう少し続ければ縮んでいたかもしれません。
のぞく回数が増えるほど、幻の差に当たる。
The larger the number of inferences made in a series of tests, the more likely erroneous inferences become.原文Wikipedia「Multiple comparisons problem」 この内容の有効期限2027-02-18
件数と判定のタイミングを先に決めます。決めずに始めると、都合のよい時点で止めることになります。
LLMのA/Bテストは、2つのやり方を同じ条件で比べて選ぶ実験です。指示の書き換えやモデルの変更を判断するときに使います。
4番目も効きます。指標を5つ見れば判定も5回で、前の節と同じ理由でどれかに差が出やすくなります。一方でAnthropicの資料は多くの用途では、複数の成功の基準にわたる多面的な評価が必要になるともしています。主役を1つ決めたうえで、他は参考として見る形になります。
判定が1回だけなら、誤る確率は決めた水準に収まります。回数を増やさないことが、いちばん単純な対処です。
前の節の実測でも、最後に1回だけ見た場合は4.5%でした。設計どおりに収まっています。
誤解されやすいのですが、途中経過を見ること自体は問題ありません。問題なのは、見て判定して止めることです。
動いているかの確認、片方だけ極端に遅いといった異常の検出には、途中経過が要ります。採否の判断だけを最後まで持ち越すという分け方になります。
判定には2つの割合の差についての近似的な検定を使いました。実際の実験では、指標の種類や分布によって適した方法が変わります。ここで見せているのは、判定の回数と誤検出の関係という構造です。問題数そのものの効き方はゴールデンデータセットの記事で扱っています。
Most use cases need multidimensional evaluation along several success criteria.原文Anthropic ドキュメント「Create strong empirical evaluations」 この内容の有効期限2027-02-18
差が小さいほど、必要な件数は急に増えます。1ポイントの改善は、片側1万件でも見つけきれません。
LLMのA/Bテストで何件必要かを、差の大きさごとに数えました。元の正答率を70%として、改善の幅を変えています。
改善の幅 片側500件 片側1000件 片側2000件 片側5000件 片側10000件
+1ポイント 5% 7% 11% 21% 34%
+2ポイント 10% 17% 28% 61% 89%
+3ポイント 17% 32% 56% 92% 100%
+5ポイント 45% 72% 95% 100% 100%
+10ポイント 96% 100% 100% 100% 100%
10ポイントの改善なら、片側500件で96%見つかります。ここは問題になりません。
1ポイントの改善は、片側1万件でも34%しか見つかりません。3回に2回は見逃します。
必要な件数は差の大きさの二乗に反比例して増えます。差が半分になれば、件数は4倍という関係です。
4番目も正当な結論です。1万件で見つからない差は、実務では区別できない差だとも言えます。
件数を確保しても、指標を増やすと元に戻ります。判定の回数が増えるためです。
指標が20個あれば、1つは偶然に差が出ます。先に1つを主役として決めておいてください。採点の形も先に決めます。Anthropicの資料は選択式・文字列の一致・コードによる採点・モデルによる採点といった形で、自動採点できるよう問いを組み立てることを挙げています。
差が小さいほど、必要な件数は急に増える。
Structure questions to allow for automated grading (for example, multiple-choice, string match, code-graded, LLM-graded).原文Anthropic ドキュメント「Create strong empirical evaluations」 この内容の有効期限2027-02-18
同じ課題を持つ会社にとって、動いている設定は「作る時間」を買えるということです。ServiceDockは自作のワークフローやテンプレートを出品できるマーケットプレイスです。手数料や出品の流れは出品者向けページにまとまっています。
出品の仕組みを見る