Ultralytics YOLO27:
YOLOのライセンス
Ultralytics用語集に戻る

Mean Average Precision (mAP)

平均適合率(mAP)は、再現率、クラス、IoUしきい値にわたる適合率の平均によって検出器を評価します。mAP50とmAP50-95の計算方法を解説します。

平均適合率 (mAP) は物体検出の標準的な評価指標であり、同じ手法でインスタンスセグメンテーション、姿勢推定、方向付き物体検出も評価できます。すべての物体を検出できること、誤検出を避けること、各バウンディングボックスを正確に配置することをモデルに求め、その3つを0~1の1つの値(パーセントで表すこともあります)にまとめます。平均適合率 (AP)は1クラスの適合率-再現率曲線の下側面積であり、mAPはクラス全体のAPの平均です。最も広く報告されている形式のmAP50-95では、さらに10個の交差領域比 (IoU)閾値について平均を取ります。

構成要素#

  • IoU: 予測ボックスとラベル付きボックスの重なり具合で、値は0~1です。予測のIoUが、同じクラスの未マッチのラベルとの間で0.5などの閾値に達した場合にのみ、その予測は真陽性になります。
  • 適合率: 予測のうち正しいものの割合で、TP / (TP + FP)です。
  • 再現率: モデルが検出したラベル付き物体の割合で、TP / (TP + FN)です。
  • 信頼度: 検出結果の順位付けに使うスコアです。信頼度の閾値ごとに適合率と再現率のペアが1つ得られ、すべての閾値を合わせると適合率-再現率曲線になります。

mAPの計算方法#

評価では、データセット全体から1クラスのすべての検出結果を集め、信頼度順に並べます。リストを順に確認し、各検出結果は同じクラスの未マッチのラベルのうち最も重なりが大きいものに対応付けられて真陽性になるか、偽陽性になります。ラベルに対応付けられるのは1回だけなので、すでに検出済みの物体に対する2つ目のボックスは適合率を下げます。各ステップ後に適合率と再現率を再計算することで、最も信頼度の高い検出結果から最も低い検出結果までの適合率-再現率曲線を描きます。

APはその曲線の下側面積です。積分する前に、曲線を包絡線、つまり各再現率レベル以上で得られた最高の適合率に置き換えるため、小さな変動はスコアに影響しません。COCO評価では、再現率0~1の範囲から101点で包絡線をサンプリングします。従来のPASCAL VOCベンチマークでは11点を使用していました。モデルが到達しない再現率レベルの適合率はゼロになるため、検出漏れがあるとAPは低下します。

import numpy as np

# One class: 8 detections sorted by confidence (1 = matched a label, 0 = false positive)
tp = np.array([1, 1, 0, 1, 0, 1, 0, 0])
num_labels = 5  # ground-truth objects of this class in the dataset

# Precision and recall after each detection in the ranked list
tp_cum = np.cumsum(tp)
precision = tp_cum / np.arange(1, len(tp) + 1)
recall = tp_cum / num_labels

# Precision envelope: best precision at this recall or any higher recall
envelope = np.maximum.accumulate(precision[::-1])[::-1]

# COCO-style AP: average the envelope at 101 recall points (0 beyond the highest recall reached)
points = np.linspace(0, 1, 101)
idx = np.searchsorted(recall, points, side="left")
ap = np.mean([envelope[i] if i < len(envelope) else 0.0 for i in idx])
print(f"Max recall: {recall[-1]:.1f}, AP: {ap:.3f}")

スクリプトはMax recall: 0.8, AP: 0.686を出力します。ラベル付きの物体5個のうち1個は一度も検出されないため、再現率軸の最後の5分の1は面積に加算されません。最も信頼度の高い2つの検出結果がどちらも正しくても、APは0.686にとどまります。

  • 精度は正しい予測数を全予測数で割った値であり、真陰性を数える必要があります。検出器の場合、真陰性は背景の空のパッチすべてに相当するため、精度は検出において意味のある値になりません。
  • F1スコアは、1つの信頼度閾値における適合率と再現率を組み合わせ、デプロイ済みモデルが使用する閾値など、単一の動作点を示します。
  • 混同行列は、1つの閾値で検出器がどのクラスを混同したかを数えます。これは単一のmAP値では分からない詳細です。

mAP50、mAP75、mAP50-95#

mAPはクラス間の単純平均であるため、出現頻度の低いクラスも高いクラスも同じ重みで扱われます。IoUのしきい値によって、正解とみなされるBBoxの厳密さが決まります。

  • mAP50: IoUが0.5のときに検出を正解とします。これはPASCAL VOCの基準です。
  • mAP75: しきい値を0.75に引き上げ、位置特定をより厳密に評価します。
  • mAP50-95: 0.50から0.95まで0.05刻みの10個のしきい値でmAPを平均した値です。COCOではこの値を単に「AP」と呼び、APとmAPを区別せず、主要なチャレンジ評価指標として使用しています。

Ultralytics YOLO26のトレーニングでは、検証mAP50-95が最も高かったエポックのbest.ptが保持され、検証では実行ごとに3種類すべての指標が報告されます。

from ultralytics import YOLO

# Load a pretrained YOLO26 nano detector
model = YOLO("yolo26n.pt")

# Validate on the small COCO8 dataset to compute mAP
metrics = model.val(data="coco8.yaml")

# The same detections scored at three IoU thresholds
print(f"mAP50:    {metrics.box.map50:.3f}")
print(f"mAP75:    {metrics.box.map75:.3f}")
print(f"mAP50-95: {metrics.box.map:.3f}")

IoUのしきい値が低いほど、正解とみなされる検出が増えるため、mAP50が最も高くなり、mAP50-95はそれより低くなります。COCOでは、物体サイズ別にもAPを分類します。小さい物体は面積が32 × 32ピクセル未満、中サイズの物体は最大96 × 96ピクセル、大きい物体はそれを超えるものです。

Explore solutions

スポーツにおけるコンピュータービジョン

スポーツにおけるコンピュータービジョン

Ultralytics YOLOが、選手やボールの追跡、パフォーマンス分析、コーチングへの知見、アスリートのリハビリを通じて、スポーツビジョンをどのように支えるかをご紹介します。
詳しく見る
航空画像向けコンピュータービジョン

航空画像向けコンピュータービジョン

Ultralytics YOLOを活用して、ドローンや航空画像をリアルタイムの知見に変換し、農業、水産養殖、環境モニタリング、自然保護、地理空間分析に役立てましょう。
詳しく見る
航空宇宙分野のコンピュータービジョン

航空宇宙分野のコンピュータービジョン

Ultralytics YOLOモデルで航空モニタリングにビジョンAIを導入しましょう。コンピュータービジョンソリューションで、ドローン、航空宇宙のワークフロー、環境保全、地理空間業界を支援します。
詳しく見る
セキュリティ分野のコンピュータービジョン

セキュリティ分野のコンピュータービジョン

Ultralytics YOLOモデルであらゆる施設を保護しましょう。ビジョンAIは、周辺監視、脅威検知、ナンバープレート認識、職場の安全管理を支援します。
詳しく見る
ロボティクス分野のコンピュータービジョン

ロボティクス分野のコンピュータービジョン

Ultralytics YOLOモデルで、よりスマートなマシンを実現しましょう。ロボティクスにおけるビジョンAIは、自律ナビゲーション、認識、物体追跡、リアルタイム制御を支援します。
詳しく見る
物流におけるコンピュータービジョン

物流におけるコンピュータービジョン

Ultralytics YOLOモデルで物流を効率化しましょう。ビジョンAIにより、荷物検査、仕分け、車両追跡、倉庫のリアルタイム安全監視を実現します。
詳しく見る
小売業におけるコンピュータービジョン

小売業におけるコンピュータービジョン

Ultralytics YOLOモデルで小売のあり方を変革しましょう。ビジョンAIにより、在庫追跡、棚の監視、行列管理、より高度な顧客インサイトを実現します。
詳しく見る
医療分野におけるコンピュータービジョン

医療分野におけるコンピュータービジョン

Ultralytics YOLOモデルで医療ソリューションを構築しましょう。医療分野のビジョンAIは、医用画像処理の高速化、より高度な診断、患者モニタリングを実現します。
詳しく見る
製造業におけるコンピュータービジョン

製造業におけるコンピュータービジョン

Ultralytics YOLOモデルで製造を最適化しましょう。ビジョンAIは、品質管理、欠陥検出、PPE準拠、組立ラインの自動化を推進します。
詳しく見る
自動車分野におけるコンピュータービジョン

自動車分野におけるコンピュータービジョン

Ultralytics YOLOモデルで自動車分野にコンピュータービジョンを導入しましょう。ビジョンAIは、道路の安全性、運転支援、車両の自動化を向上させ、よりスマートな道路を実現します。
詳しく見る
農業におけるコンピュータービジョン

農業におけるコンピュータービジョン

Ultralytics YOLOモデルでスマート農業にビジョンAIを導入しましょう。作物のモニタリング、家畜の追跡、精密農業を支援し、より高く効率的な収量を実現します。
詳しく見る
スポーツにおけるコンピュータービジョン

スポーツにおけるコンピュータービジョン

Ultralytics YOLOが、選手やボールの追跡、パフォーマンス分析、コーチングへの知見、アスリートのリハビリを通じて、スポーツビジョンをどのように支えるかをご紹介します。
詳しく見る
航空画像向けコンピュータービジョン

航空画像向けコンピュータービジョン

Ultralytics YOLOを活用して、ドローンや航空画像をリアルタイムの知見に変換し、農業、水産養殖、環境モニタリング、自然保護、地理空間分析に役立てましょう。
詳しく見る
航空宇宙分野のコンピュータービジョン

航空宇宙分野のコンピュータービジョン

Ultralytics YOLOモデルで航空モニタリングにビジョンAIを導入しましょう。コンピュータービジョンソリューションで、ドローン、航空宇宙のワークフロー、環境保全、地理空間業界を支援します。
詳しく見る
セキュリティ分野のコンピュータービジョン

セキュリティ分野のコンピュータービジョン

Ultralytics YOLOモデルであらゆる施設を保護しましょう。ビジョンAIは、周辺監視、脅威検知、ナンバープレート認識、職場の安全管理を支援します。
詳しく見る
ロボティクス分野のコンピュータービジョン

ロボティクス分野のコンピュータービジョン

Ultralytics YOLOモデルで、よりスマートなマシンを実現しましょう。ロボティクスにおけるビジョンAIは、自律ナビゲーション、認識、物体追跡、リアルタイム制御を支援します。
詳しく見る
物流におけるコンピュータービジョン

物流におけるコンピュータービジョン

Ultralytics YOLOモデルで物流を効率化しましょう。ビジョンAIにより、荷物検査、仕分け、車両追跡、倉庫のリアルタイム安全監視を実現します。
詳しく見る
小売業におけるコンピュータービジョン

小売業におけるコンピュータービジョン

Ultralytics YOLOモデルで小売のあり方を変革しましょう。ビジョンAIにより、在庫追跡、棚の監視、行列管理、より高度な顧客インサイトを実現します。
詳しく見る
医療分野におけるコンピュータービジョン

医療分野におけるコンピュータービジョン

Ultralytics YOLOモデルで医療ソリューションを構築しましょう。医療分野のビジョンAIは、医用画像処理の高速化、より高度な診断、患者モニタリングを実現します。
詳しく見る
製造業におけるコンピュータービジョン

製造業におけるコンピュータービジョン

Ultralytics YOLOモデルで製造を最適化しましょう。ビジョンAIは、品質管理、欠陥検出、PPE準拠、組立ラインの自動化を推進します。
詳しく見る
自動車分野におけるコンピュータービジョン

自動車分野におけるコンピュータービジョン

Ultralytics YOLOモデルで自動車分野にコンピュータービジョンを導入しましょう。ビジョンAIは、道路の安全性、運転支援、車両の自動化を向上させ、よりスマートな道路を実現します。
詳しく見る
農業におけるコンピュータービジョン

農業におけるコンピュータービジョン

Ultralytics YOLOモデルでスマート農業にビジョンAIを導入しましょう。作物のモニタリング、家畜の追跡、精密農業を支援し、より高く効率的な収量を実現します。
詳しく見る
スポーツにおけるコンピュータービジョン

スポーツにおけるコンピュータービジョン

Ultralytics YOLOが、選手やボールの追跡、パフォーマンス分析、コーチングへの知見、アスリートのリハビリを通じて、スポーツビジョンをどのように支えるかをご紹介します。
詳しく見る
航空画像向けコンピュータービジョン

航空画像向けコンピュータービジョン

Ultralytics YOLOを活用して、ドローンや航空画像をリアルタイムの知見に変換し、農業、水産養殖、環境モニタリング、自然保護、地理空間分析に役立てましょう。
詳しく見る
航空宇宙分野のコンピュータービジョン

航空宇宙分野のコンピュータービジョン

Ultralytics YOLOモデルで航空モニタリングにビジョンAIを導入しましょう。コンピュータービジョンソリューションで、ドローン、航空宇宙のワークフロー、環境保全、地理空間業界を支援します。
詳しく見る
セキュリティ分野のコンピュータービジョン

セキュリティ分野のコンピュータービジョン

Ultralytics YOLOモデルであらゆる施設を保護しましょう。ビジョンAIは、周辺監視、脅威検知、ナンバープレート認識、職場の安全管理を支援します。
詳しく見る
ロボティクス分野のコンピュータービジョン

ロボティクス分野のコンピュータービジョン

Ultralytics YOLOモデルで、よりスマートなマシンを実現しましょう。ロボティクスにおけるビジョンAIは、自律ナビゲーション、認識、物体追跡、リアルタイム制御を支援します。
詳しく見る
物流におけるコンピュータービジョン

物流におけるコンピュータービジョン

Ultralytics YOLOモデルで物流を効率化しましょう。ビジョンAIにより、荷物検査、仕分け、車両追跡、倉庫のリアルタイム安全監視を実現します。
詳しく見る
小売業におけるコンピュータービジョン

小売業におけるコンピュータービジョン

Ultralytics YOLOモデルで小売のあり方を変革しましょう。ビジョンAIにより、在庫追跡、棚の監視、行列管理、より高度な顧客インサイトを実現します。
詳しく見る
医療分野におけるコンピュータービジョン

医療分野におけるコンピュータービジョン

Ultralytics YOLOモデルで医療ソリューションを構築しましょう。医療分野のビジョンAIは、医用画像処理の高速化、より高度な診断、患者モニタリングを実現します。
詳しく見る
製造業におけるコンピュータービジョン

製造業におけるコンピュータービジョン

Ultralytics YOLOモデルで製造を最適化しましょう。ビジョンAIは、品質管理、欠陥検出、PPE準拠、組立ラインの自動化を推進します。
詳しく見る
自動車分野におけるコンピュータービジョン

自動車分野におけるコンピュータービジョン

Ultralytics YOLOモデルで自動車分野にコンピュータービジョンを導入しましょう。ビジョンAIは、道路の安全性、運転支援、車両の自動化を向上させ、よりスマートな道路を実現します。
詳しく見る
農業におけるコンピュータービジョン

農業におけるコンピュータービジョン

Ultralytics YOLOモデルでスマート農業にビジョンAIを導入しましょう。作物のモニタリング、家畜の追跡、精密農業を支援し、より高く効率的な収量を実現します。
詳しく見る

AIの未来を一緒に築きましょう!

機械学習の未来に向けた歩みを始めましょう