Research
LYR Performance Note #027 計測・調整

一つのモードで測って満足しない

片方に最適化すると、もう片方が静かに壊れる

2026-07-23 シリーズ第7回 7 min 計測評価設計モードトレードオフ

Live翻訳の数字を 90 から 96 へ押し上げて、「改善した」と宣言しかけた。全モードで測り直すと、PageとMangaが静かに4ポイントずつ落ちていた

これは事故ではなく、繰り返し観測される形(regime shift)だった。同じ日に3手で確かめて、3手とも「狙ったモードが上がり、逆側が下がる」を再現した。

規律は単純だ。製品が複数のモードで使われるなら、1つのモードの数字だけで勝利を宣言してはいけない。 +6と−4を並べて初めて、天秤が存在する。片側しか見ていない限り、そもそも判断が成立しない。

LYRの翻訳モデルは、一つではなく複数のモード(=ユーザーの使い方が根本的に異なる利用シーン)で走る。動画字幕をリアルタイムに訳す Live、静止画面をまとめて訳す Page、コマ割りされた Manga。同じモデルが、この3つを兼務している。

ある日、私はそのうちの1つ——Live——を狙って磨いた。そして狙い通りの数字が出た。私は「改善した」と宣言しかけた。

宣言していたら、間違っていた。

Liveを磨いたら、狙い通り上がった

Liveの翻訳品質には、はっきりした弱点があった。慣用句を直訳する、主語を取り違える、言葉を幻覚する。そこで、教師モデルからN個の候補を出して品質で選び抜き(best-of-N)、その良質なデータで追加学習し、さらにLive専用の選好学習(CPO)で仕上げた。

結果は狙い通りだった。8Bモデル(80億パラメータの軽量機)の Live overall(総合品質スコア、同一評価セット上の %)が 90 → 96。以前は「8BのLiveは現役最強の27B(270億パラメータ)より6ポイント低い」と言われていた差が、ゼロになった。best-of-Nで作った良質データが、Liveのギャップを丸ごと埋めたのだ。この達成そのものの物語は小さな専門家が、現役最強と肩を並べたに書いた。

この時点で、私の目の前にあった数字はこれだけだった。

モデルLive
磨く前(8B一般)90
磨いた後(8B Live特化)96

+6ポイント。27B同点。文句なしの勝利に見えた。もしここで手を止めていたら、私はこの数字を根拠に「Live特化を採用」と決めていた。

全モードで測ると、静かに壊れていた

だが、この製品はLiveだけで使われるわけではない。同じモデルがPageもMangaも訳す。だから、Liveだけでなく全モードで測り直した

すると、こう出た。

モデルLivePageManga
磨く前(8B一般)909392
磨いた後(8B Live特化)968988
差分+6−4−4

Liveを+6上げた代償に、PageとMangaがそれぞれ−4。狙っていないモードが、静かに劣化していた。Liveの数字しか見ていなければ、この−4は永遠に見えなかった。

Liveを磨くと、PageとMangaが静かに下がった Live 90 → 96 (+6) Page 93 → 89 (−4) Manga 92 → 88 (−4)
図1:Live特化の代償。各モードとも、上の薄い帯が磨く前、下の濃い帯が磨いた後。Liveだけが伸び(+6)、PageとMangaは縮んでいる(各−4)。
注:同一評価セット上の overall %。評価件数は記録に残していないため、単一評価の点推定として読む。

±数ポイントは慎重に扱うべき数字だ。ただし「狙ったモードが上がり、狙っていないモードが下がる」という同じ形が、下で見るように3つの独立な実験で再現した事実は、偶然では説明しにくい。

これは事故ではない。regime shift

なぜLiveを磨くとPageとMangaが下がるのか。1回なら偶然のノイズで片付けられる。だが、これは違った。同じ現象を、3つの別々の手で一貫して踏んだからだ。

足したデータLivePageManga
Live特化(best-of-N+CPO)↑(+6)−4−4
Manga厚め(350×3)−0.7−6.9±0(ノイズ)
文脈付き学習(単発行3661足す)+7.2−5.1−1.1

狙ったモードは上がる。だがそのたびに、別のモードが下がる。3手とも同じ形をしている。これは事故ではなく、構造だ。

正体は regime shift(=使い方の異なる領域では、同じモデルが違う挙動をする現象)にある。8Bは1つのモデルで3モードを兼務するマルチタスクモデルだ。そして各モードは、出力の「形」が違う。Liveは単発の1行を返す。PageとMangaは複数ブロック(3〜7エントリ)を返す。片方の形のデータを増やすと、モデルが学ぶエントリ数やスタイルの分布が偏る。その結果、逆側の形のモードが崩れる。

特にわかりやすいのが上表の3行目だ。単発行のデータ(3661件)を足したら、この実験ではPageが最も大きく崩れた(−5.1、Mangaは−1.1)。複数ブロックを返すモードのうち、より深くエントリ数の分布が「1」に引っ張られたからだ。モード間は、データの分布を通じて強く干渉し合っている。だから片方に最適化する行為は、必然的にもう片方への攻撃になる。

1モードの数字は、勝利の証明ではない

ここから引き出せる規律は単純だ。

製品が複数のモードで使われるなら、1つのモードの数字だけを見て「改善した」と宣言してはいけない。 狙ったモードの向上は、狙っていないモードの劣化を隠す。しかもその劣化は、あなたがそのモードを測るまで、静かに存在し続ける。

文脈付き学習のとき、私は危うくこれをやりかけた。Liveだけを見て「純粋な改善だ」と結論しかけたのだ。だが規律に従って全モードで測り直して初めて、Page/Mangaの−5.1が露見した。狙ったモードの数字は、いつもいちばん先に、いちばん良い顔をして出てくる。だからこそ、そこで満足してはいけない。

これはマニフェスト第1原則「まず計測せよ」の、モード版だ。測る対象を1つに絞ることは、貧しい定義を選ぶことに等しい。豊かに測って初めて、あなたはトレードオフを見ていることになる。+6と−4を天秤にかけて「それでも採る/採らない」を判断できる。Liveの+6だけを見ている限り、天秤そのものが存在しない。

トレードオフが見えて初めて、−4を消しにいく設計(混ぜ再学習やモードごとのrouting)が議題に乗る——その打ち手の詳細は小さな専門家が、現役最強と肩を並べたに譲る。片モードの勝利宣言で止まっていたら、この議題は生まれなかった。

速く測れる時代の落とし穴は、いつもここにある。狙った1点だけを速く測り、良い数字を見て、確信する。その確信のすぐ隣で、測っていないものが静かに壊れている。

教訓

  1. 1モードの数字は、勝利の証明ではない。 狙ったモードの向上は、狙っていないモードの劣化を隠す。しかもその劣化は、測るまで静かに存在し続ける。
  2. 豊かに測って初めて、トレードオフが見える。 +6と−4を並べられて初めて「それでも採る/採らない」を判断できる。片側だけを見ている限り、天秤そのものが存在しない。
  3. 干渉はデータ分布を通じて起きる。 単一モデルが複数モードを兼務する限り、片方の形式に偏らせれば逆側が崩れる。足すデータは、エントリ数やスタイルの分布を壊さない形にする。

付録:生データ

実験結果条件・留保
Live特化の結果と代償一般CPO(Live 90 / Page 93 / Manga 92)→ Live特化(Live 96 / Page 89 / Manga 88)= Live +6 の代償に 各−48B・同一評価セット、overall%。内訳は SFT-aug +2、Live-CPO +4。参考: 27B は Live 96 / Page 98 / Manga 99
regime shift の3手一貫実証①Live特化 → Page・Manga −4/②Manga厚め → Page −6.9・Live −0.7(Manga は±0)/③文脈付き学習 → Live +7.2・Page −5.1同日に3手。いずれも「狙ったモードが上がると逆側が下がる」で一致
機構単一マルチタスクモデルで、Live=単発1行、Page/Manga=複数ブロック(3〜7エントリ)片モードの形式に偏るとエントリ数/スタイルの学習分布が偏る。単発行を足すとPageが最も崩れる
不確実性の注記overall% は点推定で、評価件数(n)は未記録個々の±数ポイントは単独では根拠にできない。主張は向きの再現性(3手一貫)に依拠
適用規律毎回全モードを測る/足すデータは分布を崩さない形に既存の複数ブロック例に付与、比率cap、モード別routing