Was ist die mAP-Metrik und wie wird sie berechnet?

Antworten:

45

Zitate stammen aus dem oben erwähnten Zisserman-Papier - 4.2 Auswertung der Ergebnisse (Seite 11) :

Zunächst wird ein "Überlappungskriterium" als Schnittpunkt über Vereinigung größer als 0,5 definiert. (z. B. wenn eine vorhergesagte Box dieses Kriterium in Bezug auf eine Ground-Truth-Box erfüllt, wird dies als Erkennung angesehen). Dann wird eine Übereinstimmung zwischen den GT-Boxen und den vorhergesagten Boxen unter Verwendung dieses "gierigen" Ansatzes hergestellt:

Durch ein Verfahren ausgegebene Erkennungen wurden Grundwahrheitsobjekten zugewiesen, die das Überlappungskriterium in der Reihenfolge der (abnehmenden) Vertrauensausgabe erfüllten. Mehrere Erkennungen desselben Objekts in einem Bild wurden als falsche Erkennungen angesehen, z. B. 5 Erkennungen eines einzelnen Objekts, die als 1 korrekte Erkennung und 4 falsche Erkennungen gezählt wurden

Daher ist jede vorhergesagte Box entweder wahr-positiv oder falsch-positiv. Jede Grundwahrheitsbox ist wahr-positiv. Es gibt keine True-Negatives.

Dann wird die durchschnittliche Genauigkeit berechnet, indem die Genauigkeitswerte auf der Präzisionsrückrufkurve gemittelt werden, wobei der Rückruf im Bereich [0, 0,1, ..., 1] liegt (z. B. Durchschnitt von 11 Präzisionswerten). Genauer gesagt betrachten wir eine leicht korrigierte PR-Kurve, wobei für jeden Kurvenpunkt (p, r) ein anderer Kurvenpunkt (p ', r') vorhanden ist, so dass p '> p und r'> = r ersetzen wir p durch das Maximum p 'dieser Punkte.

Was mir noch unklar ist, ist, was mit diesen GT-Boxen gemacht wird, die niemals erkannt werden (selbst wenn das Vertrauen 0 ist). Dies bedeutet, dass es bestimmte Rückrufwerte gibt, die die Präzisionsrückrufkurve niemals erreichen wird, und dies macht die durchschnittliche Präzisionsberechnung über undefiniert.

Bearbeiten:

Kurze Antwort: In der Region, in der der Rückruf nicht erreichbar ist, sinkt die Genauigkeit auf 0.

Eine Möglichkeit, dies zu erklären, besteht darin, anzunehmen, dass, wenn sich der Schwellenwert für das Vertrauen 0 nähert, eine unendliche Anzahl vorhergesagter Begrenzungsrahmen im gesamten Bild aufleuchtet. Die Genauigkeit geht dann sofort auf 0 (da es nur eine begrenzte Anzahl von GT-Boxen gibt) und der Rückruf wächst auf dieser flachen Kurve weiter, bis wir 100% erreichen.

Jonathan
quelle
2
Das ist nicht das einzige, was unklar ist. Stellen Sie sich einen Fall vor, in dem es zwei vorhergesagte Boxen (P1, P2) und zwei Ground-Truth-Boxen (T1, T2) gibt, in denen P2 ein höheres Vertrauen als P1 hat. Sowohl P1 als auch P2 überlappen T1. Da P2 das höhere Vertrauen hat, ist es klar, dass P2 als Übereinstimmung für T1 angesehen werden sollte. Was nicht gegeben ist, ist, wenn P1 auch eine gewisse IOU-Überlappung mit T2 aufweist, aber niedriger als die IOU mit T1, sollte P1 eine "zweite Chance" erhalten, zu versuchen, sich an T2 anzupassen, oder sollte dies nicht der Fall sein?
Martin
Kann jemand das Problem mit den unentdeckten GT-Boxen klären?
Jonathan
@ Jonathan: Verwerfen wir also einfach die Vorhersagen mit IoU <0,5 und berechnen die Fläche unter der PR-Kurve für die Vorhersagen mit IoU> = 0,5?
Alex
@Alex Nein. Die Vorhersagen mit IoU <0,5 sind falsch positiv.
Jonathan
1
@Martin Wie Sie an Github sehen können , hat P1 keine zweite Chance, sondern ein falsches Positiv.
qq456cvb
49

mAP ist die mittlere durchschnittliche Präzision.

Die Verwendung unterscheidet sich im Bereich der Einstellungen zum Abrufen von Informationen (Referenz [1] [2] ) und zur Klassifizierung mehrerer Klassen (Objekterkennung).

Um es für die Objekterkennung zu berechnen, berechnen Sie die durchschnittliche Genauigkeit für jede Klasse in Ihren Daten basierend auf Ihren Modellvorhersagen. Die durchschnittliche Genauigkeit bezieht sich auf den Bereich unter der Präzisionsrückrufkurve für eine Klasse. Wenn Sie dann den Mittelwert dieser durchschnittlichen Präzision der einzelnen Klassen nehmen, erhalten Sie die mittlere durchschnittliche Präzision.

Zur Berechnung der durchschnittlichen Präzision siehe [3]

Ankitp
quelle
30

Ein üblicher Weg, um festzustellen, ob ein Objektvorschlag richtig war, ist Intersection over Union (IoU, IU). Dies nimmt die Menge A der vorgeschlagenen Objektpixel und die Menge der wahren Objektpixel Bund berechnet:

Im Allgemeinen bedeutet IoU> 0,5, dass es ein Treffer war, andernfalls war es ein Fehlschlag. Für jede Klasse kann man die berechnen

  • True Positive TP (c): Es wurde ein Vorschlag für die Klasse c gemacht, und es gab tatsächlich ein Objekt der Klasse c
  • False Positive FP (c): Es wurde ein Vorschlag für die Klasse c gemacht, aber es gibt kein Objekt der Klasse c
  • Durchschnittliche Präzision für Klasse c:

Der mAP (mittlere durchschnittliche Genauigkeit) ist dann:

Hinweis: Wenn Sie bessere Vorschläge wünschen, erhöht man die IoU von 0,5 auf einen höheren Wert (bis zu 1,0, was perfekt wäre). Man kann dies mit mAP @ p bezeichnen, wobei p \ in (0, 1) die IoU ist.

mAP@[.5:.95] bedeutet, dass der mAP über mehrere Schwellenwerte berechnet und dann erneut gemittelt wird

Bearbeiten: Weitere Informationen finden Sie in den COCO- Bewertungsmetriken

mrk
quelle
9

Ich denke, der wichtige Teil hier ist die Verknüpfung, wie die Objekterkennung als die gleichen Standardprobleme beim Abrufen von Informationen angesehen werden kann, für die es mindestens eine hervorragende Beschreibung der durchschnittlichen Genauigkeit gibt .

Die Ausgabe eines Objekterkennungsalgorithmus ist ein Satz vorgeschlagener Begrenzungsrahmen und für jeden ein Vertrauens- und Klassifizierungswert (ein Wert pro Klasse). Lassen Sie uns die Klassifizierungswerte vorerst ignorieren und das Vertrauen als Eingabe für eine binäre Schwellenklassifizierung verwenden . Intuitiv ist die durchschnittliche Genauigkeit eine Aggregation über alle Auswahlmöglichkeiten für den Schwellenwert / Grenzwert. Aber warte; Um die Genauigkeit zu berechnen, müssen wir wissen, ob eine Box korrekt ist!

Hier wird es verwirrend / schwierig; Im Gegensatz zu typischen Problemen beim Abrufen von Informationen haben wir hier tatsächlich eine zusätzliche Klassifizierungsebene. Das heißt, wir können keine exakte Übereinstimmung zwischen Feldern herstellen, daher müssen wir klassifizieren, ob ein Begrenzungsrahmen korrekt ist oder nicht. Die Lösung besteht darin, im Wesentlichen eine fest codierte Klassifizierung der Kastenabmessungen vorzunehmen. Wir prüfen, ob es sich ausreichend mit einer Grundwahrheit überschneidet, um als „richtig“ angesehen zu werden. Die Schwelle für diesen Teil wird vom gesunden Menschenverstand gewählt. Der Datensatz, an dem Sie arbeiten, definiert wahrscheinlich den Schwellenwert für einen "korrekten" Begrenzungsrahmen. Die meisten Datensätze setzen es einfach auf 0,5 IoU und belassen es dabei (ich empfehle, einige manuelle IoU-Berechnungen durchzuführen [sie sind nicht schwer], um ein Gefühl dafür zu bekommen, wie streng IoU von 0,5 tatsächlich ist).

Nachdem wir tatsächlich definiert haben, was es bedeutet, "korrekt" zu sein, können wir einfach den gleichen Prozess wie das Abrufen von Informationen verwenden.

Um die mittlere durchschnittliche Genauigkeit (mAP) zu ermitteln, schichten Sie Ihre vorgeschlagenen Felder einfach auf der Grundlage des Maximums der mit diesen Feldern verknüpften Klassifizierungswerte und berechnen dann den Durchschnitt (Mittelwert) der durchschnittlichen Genauigkeit (AP) über die Klassen.

TLDR; Unterscheiden Sie zwischen der Feststellung, ob eine Bounding-Box-Vorhersage "korrekt" ist (zusätzliche Klassifizierungsebene), und der Bewertung, wie gut das Box-Vertrauen Sie über eine "korrekte" Bounding-Box-Vorhersage informiert (völlig analog zum Fall des Informationsabrufs), und den typischen Beschreibungen von mAP wird Sinn machen.


Es ist erwähnenswert, dass die Fläche unter der Präzisions- / Rückrufkurve mit der durchschnittlichen Genauigkeit identisch ist , und wir approximieren diese Fläche im Wesentlichen mit der Trapez- oder Rechtsregel zur Approximation von Integralen.

Multihunter
quelle
2

Definition: mAP → mittlere durchschnittliche Präzision

Bei den meisten Objekterkennungswettbewerben sind viele Kategorien zu erkennen, und die Bewertung des Modells wird jedes Mal für eine bestimmte Kategorie durchgeführt. Das Bewertungsergebnis ist der AP dieser Kategorie.

Wenn jede Kategorie bewertet wird, wird der Mittelwert aller APs als Endergebnis des Modells berechnet, das mAP ist.

刘洪宇
quelle
0

Geben Sie hier die Bildbeschreibung ein

Intersection Over Union (IOU) ist ein auf dem Jaccard-Index basierendes Maß, das die Überlappung zwischen zwei Begrenzungsrahmen bewertet. Es erfordert einen Grundwahrheitsbegrenzungsrahmen und einen vorhergesagten Begrenzungsrahmen. Durch Anwenden der IOU können wir feststellen, ob eine Erkennung gültig ist (True Positive) oder nicht (False Positive). Die IOU wird durch den Überlappungsbereich zwischen dem vorhergesagten Begrenzungsrahmen und dem Boden angegeben Wahrheitsgrenzkasten geteilt durch den Bereich der Vereinigung zwischen ihnen.

Hart
quelle
Die Frage bezieht sich auf mAP und nicht auf IoU. Sie sollten also zumindest klären, wie IoU mit mAP zusammenhängt.
nbro