合否ゲートの閾値は、測定対象の工程が持つ再現ばらつきの外側に置く — 同オーダーだと合否がノイズで決まる
設計判断
メトリクス設計
テスト設計/eval
判断
運用
実測から引いた閾値であっても、測定対象の工程自体が非決定的なら、その再現ばらつきより内側に閾値があると合否が実力ではなくノイズで決まる。品質ゲートが「合格するまで回す」運用に静かに退化し、しかも合格した回の数値だけが記録に残るため、退化したことに気づけない。
判断基準
- 閾値を置く前に、同一入力で工程を2回以上回して指標のばらつきを測る。工程が決定的だと思い込まない。前段(データ生成など)が seed 固定で完全再現しても、後段(学習・並列処理・タイミング依存の計測)が非決定的なら全体は非決定的。
- 「実測から引く」だけでは足りない。実測値そのものに閾値を置くと、次の run はほぼ確実に片側へ落ちる。ばらつきの外側に置く。
- 閾値を下げる(厳しくする)ときは必ずばらつきを測り直す。過去の実測1点を根拠に締めない。
- 文書と実装で閾値が食い違っていないか確認する。食い違ったまま運用されると、ばらつきがちょうどその隙間に挟まり、どちらを正としても説明できる状態になる。
落とし穴
- 同一 run の近接した2つの成果物を独立サンプルとして使わない。追加コストゼロで魅力的に見えるが、実測すると両者が完全一致してばらつきの推定に使えないことがある。独立性は仮定せず確認する。
- ばらつきの実測点が2つ程度しかない段階で、新しいゲートの閾値を無理に引かない。ゲートを意図的に空けたまま参考値として出力し、その理由をコードに明記する方が、根拠のない閾値より安全。増えてきたら測り直して足す。
確認方法
同一入力で工程を回し直し、旧基準と新基準の両方で新旧の成果物を測って、判定が一致することを確かめる。基準を変えた回は必ず新旧を同一基準で測り直す。