2016-03-29 19 views

Antwort

15

Zitate aus der oben erwähnten Zisserman paper - 4.2 Evaluation of Results (Page 11) sind:

Zuerst wird ein „Überlappungskriterium“ ist definiert als ein Schnittpunkt-over-Union größer als 0,5 ist. (Wenn beispielsweise eine vorhergesagte Box dieses Kriterium in Bezug auf eine Grundwahrheits-Box erfüllt, wird dies als eine Erkennung betrachtet). Dann wird eine Anpassung zwischen den GT-Boxen und den vorhergesagten Boxen unter Verwendung dieses „gierigen“ -Ansatz besteht:

Erkennungen Ausgang durch ein Verfahren, wurde zugewiesen Ground-Truth-Objekte Erfüllen des Überlappungskriteriums, um vom Rang (abnehmend) Vertrauensausgabe. Mehrere Erfassungen desselben Objekts in einem Bild wurden als falsche Erfassungen angesehen, z. 5 Erkennungen eines einzelnen Objekts als 1 gezählt korrekte Erkennung und 4 falsche Erfassungen

Daher jeder vorausgesagten Feld entweder wahr-positive oder falsch-positiv ist. Jede Grundwahrheits-Box ist entweder wahr-positiv oder falsch-negativ. Es gibt keine True-Negatives.

Dann wird die durchschnittliche Genauigkeit durch Mittelung der Präzisionswerte auf der Präzisions-Abrufkurve berechnet, wobei der Abruf im Bereich [0, 0,1, ..., 1] liegt (z. B. Durchschnitt von 11 Präzisionswerten). Um genauer zu sein, betrachten wir eine leicht korrigierte PR-Kurve, wo für jeden Kurvenpunkt (p, r), wenn es einen anderen Kurvenpunkt (p ', r') gibt, 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 nie erkannt werden (auch wenn das Vertrauen 0 ist). Dies bedeutet, dass es bestimmte Rückrufwerte gibt, die die Präzisionswiederholungs-Kurve niemals erreichen wird, und dies macht die Berechnung der durchschnittlichen Genauigkeit über undefiniert.

Edit:

Kurze Antwort: in der Region, in dem Rückruf nicht erreichbar ist, sinkt die Präzision auf 0

Eine Möglichkeit, dies zu erklären, ist anzunehmen, dass, wenn der Schwellenwert für das Vertrauen Ansätze 0, eine unendliche Anzahl von vorhergesagt Bounding-Boxen leuchten überall auf dem Bild. Die Genauigkeit geht dann sofort auf 0 (da es nur eine endliche Anzahl von GT-Boxen gibt) und der Rückruf wächst weiter auf dieser flachen Kurve, bis wir 100% erreichen.

+0

Das ist nicht die einzige Sache ist, dass unklar ist. Betrachten Sie einen Fall, in dem zwei vorausgesagte Boxen (P1, P2) und zwei Grundwahrheitsfelder (T1, T2) vorhanden sind, wobei P2 eine höhere Konfidenz als P1 aufweist. Sowohl P1 als auch P2 überlappen T1. Da P2 das höhere Vertrauen hat, ist klar, dass P2 als die Übereinstimmung für T1 betrachtet werden sollte. Was nicht gegeben ist, wenn P1 auch eine IOU mit T2 überlappt, aber niedriger als die IOU mit T1, sollte P1 eine "zweite Chance" gegeben werden, um zu versuchen, sich mit T2 zu vergleichen, oder sollte es nicht? – Martin

+0

Kann jemand das Problem mit den unentdeckten GT-Boxen klären? – Jonathan

+0

@ Jonathan: Also verwerfen wir 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

23

mAP ist mittlere durchschnittliche Präzision.

Seine Verwendung unterscheidet sich im Bereich der Information Retrieval (Referenz [1][2]) und Multi-Class-Klassifizierung (Object Detection) Einstellungen.

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äzisions-Abrufkurve für eine Klasse. Wenn Sie dann den Mittelwert dieser durchschnittlichen Genauigkeit der individuellen Klasse ermitteln, erhalten Sie die mittlere durchschnittliche Präzision.

zu mitteln Precision zu berechnen, siehe [3]

4

Ich denke, der wichtige Teil hier ist Verknüpfung, wie Objekterkennung als die Standard-Information-Retrieval-Probleme, für die es mindestens eine excellent description of average precision gibt.

Die Ausgabe eines Objekterkennungsalgorithmus besteht aus einer Reihe von vorgeschlagenen Begrenzungsfeldern und für jedes ein Konfidenz- und Klassifizierungs-Scores (ein Score pro Klasse). Lassen Sie uns die Klassifizierungswerte für jetzt ignorieren und verwenden Sie das Vertrauen als Eingabe für eine threshold binary classification. Intuitiv ist die durchschnittliche Genauigkeit eine Aggregation über alle Wahlmöglichkeiten für den Schwellenwert/Cut-Off-Wert. 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 Information Retrieval-Problemen haben wir hier eine zusätzliche Klassifikationsstufe. Das heißt, wir können keine exakte Übereinstimmung zwischen Boxen herstellen, daher müssen wir klassifizieren, ob eine Bounding Box korrekt ist oder nicht. Die Lösung besteht darin, im Wesentlichen eine fest codierte Klassifizierung der Boxdimensionen vorzunehmen; wir prüfen, ob es mit irgendeiner Grundwahrheit ausreichend überschneidet, um als "richtig" angesehen zu werden. Die Schwelle für diesen Teil wird durch gesunden Menschenverstand gewählt. Das Dataset, an dem Sie gerade arbeiten, wird wahrscheinlich definieren, was dieser Schwellenwert für eine "richtige" Bounding Box ist. Die meisten Datensätze setzen es einfach auf 0,5 IoU und belassen es dabei (ich empfehle ein paar manuelle IoU-Berechnungen [sie sind nicht schwer], um ein Gefühl dafür zu bekommen, wie streng IoU von 0,5 tatsächlich ist).

Nun, da wir tatsächlich definiert haben, was es bedeutet, "korrekt" zu sein, können wir einfach den gleichen Prozess wie die Informationsbeschaffung verwenden.

Um die mittlere durchschnittliche Genauigkeit (mAP) zu finden, stratifizieren Sie einfach Ihre vorgeschlagenen Boxen basierend auf dem Maximum der Klassifizierungswerte, die diesen Boxen zugeordnet sind, und mitteln dann den Mittelwert der durchschnittlichen Genauigkeit (AP) über die Klassen.

TLDR; die Unterscheidung zwischen der Bestimmung, ob eine Bounding - Box - Vorhersage korrekt ist (Extraklasse der Klassifikation) und der Bewertung, wie gut die Box - Konfidenz Sie über eine "korrekte" Bounding Box - Vorhersage informiert (vollständig analog zum Fall des Informationsabrufs) und die typischen Beschreibungen von MAP macht Sinn.


Es ist erwähnenswert, dass Area under the Precision/Recall curve is the same thing as average precision, und wir sind im Wesentlichen annähert, diesen Bereich mit dem Trapez oder mit der rechten Hand-Regel Integrale zur Annäherung.

7

Zur Detektion wurde ein gemeinsamer Weg, um zu bestimmen, ob ein Objekt Vorschlag war Recht ist Überschneidung über Union (IoU, IU). Dies nimmt die Menge A der vorgeschlagenen Objektpixel und den Satz von echten Objektpixeln B und berechnet:

IoU(A, B) = \frac{A \cap B}{A \cup B} 

üblicherweise IoU> 0,5 bedeutet, dass es ein Treffer war, ansonsten war es ein fehlschlagen.Für jede Klasse kann man das

  • wahren Positiven TP (c) berechnet werden: ein Vorschlag für die Klasse c gemacht und es war tatsächlich ein Objekt der Klasse c
  • Falsch Positive FP (c): ein Vorschlag gemacht für die Klasse c, aber es gibt kein Objekt der Klasse c
  • Durchschnittliche Präzision für Klasse c: \ frac {#TP (c)} {# TP (c) + #FP (c)}

Die mAP (mittlere durchschnittliche Genauigkeit) ist dann:

mAP = \frac{1}{|classes|}\sum_{c \in classes} \frac{\#TP(c)}{\#TP(c) + \#FP(c)} 

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

[email protected][.5:.95] bedeutet, dass die Karte über mehrere Schwellenwerte berechnet wird und dann wieder gemittelt

Edit: Nähere Informationen finden Sie in der COCO Evaluation metrics