推論確率が変わった主因はTTA:1発勝負から「複数回推論+集約」へ
TL;DR
- 確率の出方が変わった最大の理由は TTA(テスト時拡張)的に、推論を複数回行って集約(平均など)する方式に変えたため。
- 1回の推論(ピーク値)ではなく、「見え方が変わっても同じ結論になりやすいか」を反映するので、数値は安定しやすい一方で低めに出ることがある。
背景:1回の確率は“たまたま”に引っ張られる
画像認識では、学習データと違う画像を入れた瞬間に意外な誤判定が出ることがあります。
例えば、Qiitaのこちらの記事では「猫の写真」を入れたら 『飛行機: 90%』 になった、という具体例が紹介されています。
この手のケースは、**1発勝負の推論結果(しかも高確率)**がそのまま表示されると、ユーザー体験としてもつらいです。
そこで「推論を慎重にする」方向の定番アプローチが TTA です。
この記事で言うTTA(簡易TTA)
ここでのTTAは、厳密な研究実装というより次の考え方です。
- 推論時に入力画像の「見え方」を少し変えた複数パターンを作る
- それぞれ推論して、最後に 平均(または多数決等)で集約する
何が変わったか:1回推論 → 複数回推論+集約
以前(1発勝負)
- 画像を1枚だけ渡して推論し、その確率をそのまま採用
例:
- 全体を見て「猫?」→ 90%
今回(TTA的:複数パターンで推論して集約)
例(平均で集約するケース):
- 全体 → 90%
- 少し右を隠す → 80%
- もっと隠す → 70%
平均:
- (90 + 80 + 70) / 3 = 80%
なぜTTAで確率が変わるのか
1回推論の確率は、その1回の見え方に強く依存します。
TTAで複数回推論すると、次が起きます。
- まぐれ当たり(たまたま高く出た1回)を抑えやすい
- 「少し欠ける/少し条件が変わる」でも結論が維持できるかが反映される
- その結果、ピーク値は下がることがあるが、再現性は上がりやすい
以前の「90%」と今回の「80%」は同じ意味の確率ではなく、
今回は “複数の見え方で確かめた上での確率” になっている。
集約方法の選択肢(目的で選ぶ)
- 平均:極端な値をならしやすい(今回の想定)
- 多数決:ラベルの安定を重視したいとき
- 最大値:ピークを拾う(ただし、まぐれも拾いやすい)
- 重み付き平均:元画像を重視するなど意図を入れたいとき
TTAのメリット/デメリット
メリット
- 1回の偶然に左右されにくく、出力が安定しやすい
- “ちょっと見え方が変わっても強い対象”はブレにくい
デメリット
- 推論回数が増える分、処理が重くなる(遅くなる)
- 1回だけのピーク値より、確率が低めに出ることがある(正常な挙動)
(補足)前処理差は副作用として効くことがある
主因はTTAですが、前処理(リサイズ/切り抜き)が変わると
AIが見る情報が変わるため、確率に影響することがあります。
- 変形して全体を残す:端の情報は残るが歪みが出る
- 中央を切り抜く:歪みは減るが端の情報が落ちることがある
まとめ
- 確率の出方が変わった最大の理由は、推論を 1回 → 複数回(TTA的)+集約 に変えたこと
- 数値が低めに出ることがあっても、それは “慎重になった” 結果で狙い通り
- 誤判定例(高確率の誤り)が現実に起きることを踏まえると、TTAは導入価値が高い
参考
- AI画像認識アプリの開発を通じて学んだこと(誤判定例あり)
https://qiita.com/sharp231/items/34440b5bbc8039374b59