Recall
機械学習における再現率の重要性を説明します。高い検出率を確保するため、Ultralytics YOLO26モデルの感度を測定・改善する方法を紹介します。
再現率は、感度または真陽性率とも呼ばれ、データセット内の関連するすべてのインスタンスをモデルが識別する能力を測定する、機械学習における基本的な性能指標です。物体検出や分類の文脈では、具体的に「実際の陽性事例がすべてのうち、モデルはそのいくつを正しく見つけたか」という問いに答える指標です。陽性インスタンスの見逃し(偽陰性と呼ばれることが多い)が重大な結果を招くシナリオでは、高い再現率を達成することが重要です。不均衡データを扱う場合に誤解を招く可能性がある正解率とは異なり、再現率は対象クラスをモデルがどれだけ効果的に「捉えられるか」に焦点を当てた見方を提供します。
高い再現率の重要性#
多くの人工知能アプリケーションでは、物体の検出に失敗するコストは、誤警報のコストをはるかに上回ります。再現率を重視して最適化されたモデルは偽陰性を最小限に抑え、潜在的な脅威、異常、または重大な状態を捉えられるよう、システムが十分に広い範囲をカバーできるようにします。ただし、再現率を高めると適合率スコアが低下する場合があり、モデルが関連性のない項目を陽性としてより多くフラグ付けする可能性があるため、これは多くの場合トレードオフを伴います。このバランスを理解することは、堅牢な機械学習ソリューションを開発するうえで重要です。
実世界での利用例#
再現率は、多くの安全性が重視されるAIソリューションを支える主要な指標です。ここでは、感度が優先される代表的な2つの例を紹介します。
- 医療診断: 初期の疾患兆候を探すX線検診などの医用画像解析では、高い再現率は必須です。医療におけるAIシステムを腫瘍の検出に使用する場合、良性と判明する疑わしい影をシステムがフラグ付けする(偽陽性)ほうが、悪性腫瘍を完全に見逃すよりはるかに望ましいです。医師はこれらのツールをセーフティネットとして活用し、潜在的な健康リスクを見落とさないようにしています。
- セキュリティと監視: セキュリティ警報システムの主な目的は、あらゆる侵入の試みを検出することです。高い再現率を重視して最適化されたシステムでは、人が立入禁止区域に入ると確実に警報が作動します。野生動物が原因で誤警報が時折発生する可能性はありますが、実際の侵入者をシステムが検出できないよりは望ましい結果です。このようなシナリオの物体検出モデルは、潜在的な脅威に対する感度を最大限に高めるよう調整されます。
再現率と適合率の比較#
再現率と、その対となる適合率を区別することが重要です。再現率が見つかった関連事例の量(完全性)を測定するのに対し、適合率は陽性予測の質(正確性)を測定します。
- 再現率: 検出漏れの回避に重点を置きます。「リンゴをすべて見つけたか?」
- 適合率: 誤警報の最小化に重点を置きます。「リンゴと呼んだものはすべて、本当にリンゴか?」
これら2つの指標は逆の関係になることが多く、適合率-再現率曲線で可視化されます。両者の全体的なバランスを評価するために、開発者は両方の調和平均であるF1スコアをよく使用します。不均衡データセットでは、再現率を混同行列と併せて確認すると、正解率だけの場合よりも性能を明確に把握できます。
Ultralytics YOLOで再現率を測定する#
最先端のYOLO26などのモデルをトレーニングすると、検証フェーズ中に再現率が自動的に計算されます。フレームワークは各クラスの再現率と平均適合率 (mAP)を計算し、モデルがどの程度適切に物体を検出できるかを開発者が評価できるようにします。
Pythonを使用すると、トレーニング済みモデルを簡単に検証し、その再現率メトリクスを確認できます。このスニペットでは、モデルを読み込み、標準データセットでその性能を確認する方法を示します。
from ultralytics import YOLO
# Load a pretrained YOLO26 model
model = YOLO("yolo26n.pt")
# Validate the model on the COCO8 dataset
# The results object contains metrics like Precision, Recall, and mAP
metrics = model.val(data="coco8.yaml")
# Access and print the mean recall score for box detection
print(f"Mean Recall: {metrics.results_dict['metrics/recall(B)']:.4f}")このコードはUltralytics APIを使用して検証を実行します。再現率がプロジェクトに必要な水準を下回る場合は、より多様なトレーニング例を作成するデータ拡張や、モデルの感度を調整するハイパーパラメータチューニングなどの手法を検討できます。Ultralytics Platformを使用すると、データセットの管理や複数回のトレーニング実行にわたるこれらのメトリクスの追跡も効率化できます。
モデルの再現率を向上させる#
モデルの再現率を高めるために、データサイエンティストは推論時に使用する信頼度しきい値を調整することがよくあります。しきい値を下げると、モデルはより「楽観的」になり、より多くの予測を陽性として受け入れるため、再現率は向上しますが、適合率が低下する可能性があります。さらに、より多様なトレーニングデータを収集すると、モデルが難しい陰性例や見つけにくいインスタンスを認識できるようになります。複雑なタスクでは、Transformerブロックなどの高度なアーキテクチャを採用したり、アンサンブル手法を検討したりすることで、単純なモデルでは見逃す可能性のある微妙な特徴をシステムが検出する能力も向上させられます。






