Uncertainty Quantification
AIおよび機械学習における不確実性定量化について学びます。これには、偶発的およびエピステミックな不確実性、キャリブレーション、評価方法、およびUltralytics YOLOワークフローが含まれます。
不確実性の定量化(UQ)は、AIまたは機械学習モデルが自身の予測に対してどれほど不確実であるかを推定、評価、および伝達するプロセスです。ラベル、値、またはバウンディングボックスだけを返すのではなく、UQワークフローは確率分布、予測区間、信頼度スコア、予測セットなどの追加情報を提供します。これにより、ユーザーはモデルが何を予測しているかだけでなく、その予測をどれほど信頼すべきかも理解できるようになります。
Link to this section不確実性の定量化が重要な理由#
モデルは限られたデータからパターンを学習するため、その出力が完全に確実になることは決してありません。入力にノイズが含まれる場合や、ラベルがあいまいな場合、本番データがトレーニング分布と異なる場合があります。UQはこうした限界を測定可能にし、より安全な意思決定、人間のレビュー、およびより優れたデータ収集を支援します。
NISTの仮想測定プログラムで説明されているモデル品質の特性評価という、より広範な目的にこの考え方は拡張されます。AIシステムにおいて、不確実性の推定はチームの以下の活動に役立ちます。
- 不確実性が許容レベルを超える場合に、予測を拒否またはレビューする。
- 単一の答えに依存するのではなく、複数の代替予測を比較する。
- 見慣れない入力や、考えられるデータドリフトを特定する。
- アクティブラーニングを通じて、不確実なサンプルを優先的にラベリングする。
- エネルギー省による計算モデルにおける不確実性の概要に示されているように、不確実性を下流の計算や決定に伝播させる。
予測エラーの結果が不均等である場合、UQは特に重要になります。歩行者を見落とすことは路面の標識を誤検出することよりも深刻であるため、許容される不確実性のしきい値はアプリケーションによって異なります。
Link to this section偶発的不確実性と認識的不確実性#
予測の不確実性がどこから生じるのかを説明する2つのカテゴリ:
- 偶発的不確実性(アレアトリー不確実性とも呼ばれます)は、データに内在するランダム性やあいまいさに起因します。モーションブラー、センサーノイズ、部分的なオクルージョン、一貫性のないラベルにより、十分にトレーニングされたモデルであっても画像の解釈が難しくなることがあります。トレーニングデータを増やすことでこの不確実性の推定には役立ちますが、根本的なあいまいさを完全になくすことはできません。
- 認識的不確実性は、不完全なモデル知識に起因します。これは多くの場合、トレーニングデータが不十分である、代表的でない、または重要な状況が欠けている場合に発生します。関連する例の収集、アノテーションの改善、またはモデルの変更によって、頻繁に削減することができます。
UQは、これら発生源に関する情報を結合して有用な出力にします。TensorFlow Probabilityなどの確率的モデリングツールは予測を分布として表現でき、一方アンサンブル手法は複数のモデルやトレーニング実行を比較して不確実性を推定します。大きな不一致は、一般的に大きな認識的不確実性を示唆しています。
不確実性は信頼度スコアに関連していますが、それよりも広範な概念です。信頼度は1つの予測の強さを表すのに対し、UQはそのスコアが信頼できるかどうか、そしてどのような不確実性の要因がそれに影響しているかを評価します。同様に、共形予測は、定義された前提のもとでターゲットカバレッジを持つ予測セットまたは予測区間を生成するための特定の手法です。
Link to this section手法と評価#
一般的なUQのアプローチには、確率的出力、アンサンブル、繰り返しサンプリング、ベイジアンモデリング、予測区間が含まれます。ブートストラップ信頼区間は、観測されたデータを繰り返しリサンプリングして変動性を推定します。分類の場合、キャリブレーションでは、約80%の確率が割り当てられた予測が約80%の確率で正しいかどうかを確認します。
モデルは正確であってもキャリブレーションが不十分な場合があるため、チームはタスクのパフォーマンスと不確実性の品質の両方を評価する必要があります。確率キャリブレーションツールは、信頼性ダイアグラムとキャリブレーション手法を使用して、予測された確率と観測された結果を比較します。Googleの機械学習のルールでも、解釈可能で監視された確率的予測が強調されています。
有用な評価基準には、カバレッジ、区間幅、キャリブレーション誤差、困難なデータスライスにおけるパフォーマンスが含まれます。コンピュータービジョンでは、UltralyticsバリデーションモードとYOLOパフォーマンス指標ガイドが、クラスやしきい値全体での精度、再現率、混同行列、信頼度の挙動を検証するのに役立ちます。
Link to this section実社会での応用#
- 医療画像解析: 診断モデルは、複数の妥当な所見が同様のスコアを持つ場合や、画像がトレーニングデータと異なる場合に、専門家によるレビューのためにスキャンにフラグを立てることができます。このようなエスカレーションを行わない場合、過度に自信を持った誤った予測によって治療が遅れる可能性があります。
- 製造業の外観検査: 欠陥検出器は、グレア、新しい材料、またはこれまでに見たことのない損傷に遭遇する可能性があります。不確実性を認識したルーティングにより、あいまいな製品を自動的に受け入れたり拒否したりするのではなく手動検査に回すことができ、見逃された欠陥と不要な廃棄の両方を削減できます。
これらのポリシーは、モデルの不確実性と運用上のリスクを結びつけます。NIST AIリスク管理フレームワークコアでは、不確実性の測定、汎化限界の文書化、およびデプロイ全体にわたるシステムの監視を推奨しています。
Link to this sectionUltralytics YOLOワークフローにおける不確実性#
Ultralytics YOLO26は、ドキュメント化されたPredictモードを通じて検出信頼度スコアを公開します。
from ultralytics import YOLO
# Load an official detection model
model = YOLO("yolo26n.pt")
# Run inference
results = model("https://ultralytics.com/images/bus.jpg")
result = results[0]
# Inspect each detection's confidence
for box in result.boxes:
class_id = int(box.cls.item())
class_name = result.names[class_id]
confidence = box.conf.item()
print(f"{class_name}: {confidence:.3f}")このワークフローは不確実性に関連する有用なシグナルを公開しますが、信頼度単体は完全なUQではなく、キャリブレーションされた確率として自動的に解釈されるべきではありません。代表的なホールドアウトデータでスコアを検証し、エラーコストに基づいてしきい値を選択し、デプロイ後に信頼度分布を監視してください。
チームはUltralyticsプラットフォームを使用して、データセットのアノテーション、モデルのトレーニングとデプロイ、およびエンドポイントの監視を行うことができます。継続的なモデルの監視と保守と組み合わせることで、不確実性のシグナルは未知の条件を明らかにし、人間のレビューを誘導し、新しいデータや再トレーニングが必要な時期を特定するのに役立ちます。






