Metriken zur Bewertung von Ranking-Algorithmen


13

Ich bin daran interessiert, verschiedene Metriken für Ranking-Algorithmen zu untersuchen. Einige davon sind auf der Wikipedia-Seite Lernen, Ranglisten zu erstellen aufgeführt, darunter:

• Mittlere durchschnittliche Genauigkeit (MAP);

• DCG und NDCG;

• Precision @ n, NDCG @ n, wobei "@n" angibt, dass die Metriken nur in den ersten n Dokumenten ausgewertet werden.

• Mittlerer gegenseitiger Rang;

• Kendalls Tau

• Rho von Spearman

• Erwarteter gegenseitiger Rang

• Yandex's pfound

Es ist mir jedoch nicht klar, welche Vor- und Nachteile die beiden haben oder wann Sie sich für einen anderen entscheiden können (oder was es bedeuten würde, wenn ein Algorithmus einen anderen Algorithmus in NDGC übertrifft, aber bei der Bewertung mit MAP schlechter ist).

Kann ich irgendwo mehr über diese Fragen erfahren?

Antworten:


27

Eigentlich bin ich auf der Suche nach der gleichen Antwort, aber ich sollte in der Lage sein, Ihre Frage zumindest teilweise zu beantworten.

Alle Metriken, die Sie erwähnt haben, haben unterschiedliche Merkmale. Leider hängt das, was Sie auswählen sollten, davon ab, was Sie tatsächlich messen möchten. Hier sind einige Dinge, die es wert wären, im Auge zu behalten:

  • Die Rho- Metrik von Spearman bestraft Fehler am Anfang der Liste mit derselben Gewichtung wie Nichtübereinstimmungen am Ende. In den meisten Fällen ist dies also nicht die Metrik, die für die Bewertung von Rankings verwendet wird
  • DCG & NDCG sind eine der wenigen Metriken, die die nicht-binäre Utility-Funktion berücksichtigen. Sie können also beschreiben, wie nützlich ein Datensatz ist und nicht, ob er nützlich ist.
  • DCG & NDCG haben feste Gewichtungen für Positionen, sodass ein Dokument an einer bestimmten Position unabhängig von den oben gezeigten Dokumenten immer den gleichen Gewinn und Rabatt aufweist
  • Normalerweise bevorzugen Sie NDCG gegenüber DCG , da sich der Wert durch die Anzahl der relevanten Dokumente normalisiert
  • MAP soll ein Klassiker und eine Anlaufstelle für dieses Problem sein, und es scheint ein Standard auf diesem Gebiet zu sein.
  • (N) DCG sollte immer für eine feste Anzahl von Datensätzen (@k) berechnet werden, da es einen langen Schwanz hat (viele irrelevante Datensätze am Ende des Rankings beeinflussen die Metrik stark). Dies gilt nicht für MAP .
  • Der mittlere gegenseitige Rang kennzeichnet nur die Position des ersten relevanten Dokuments. Wenn Sie also darauf achten, dass möglichst viele relevante Dokumente ganz oben auf der Liste stehen, sollte dies nicht Ihre Wahl sein
  • Kendalls Tau behandelt nur die binäre Utility-Funktion, es sollte auch @k berechnet werden (ähnlich wie bei NDCG )

Wertvolle Quellen:

  • Victor Lavrenko Vortrag auf YouTube - es ist nur ein Link zur MAP vs NDCG-Episode, aber der gesamte Vortrag enthält viel mehr (einschließlich Kendalls Tau). Sie sollten es auf jeden Fall ausprobieren, toller Vortrag!
  • ERR-Papier

Weitere Links können wegen des neuen Accounts nicht gepostet werden :) Wenn jemand weitere Anmerkungen oder Ideen hat, würde ich mich freuen, sie auch zu hören!


Ich denke, jetzt haben Sie genug Punkte, um diese Antwort zu aktualisieren, wenn Sie mehr Links haben.
Yash Kumar Atri

4

In vielen Fällen, in denen Sie Ranking-Algorithmen anwenden (z. B. Google-Suche, Amazon-Produktempfehlung), erhalten Sie Hunderte und Tausende von Ergebnissen. Der Benutzer möchte nur die Top ~ 20 oder so sehen. Der Rest ist also völlig irrelevant.

k

Wenn dies für Ihre Anwendung zutrifft, hat dies direkte Auswirkungen auf die Metrik:

  1. kk
  2. 2k

kk

Top-k-Klassifikationsgenauigkeit für das Ranking

Für die Grundwahrheit könnte es schwierig sein, eine Reihenfolge zu definieren. Und wenn Sie nur relevant / nicht relevant unterscheiden, dann befinden Sie sich tatsächlich in einem Einstufungsfall!

Die Top-n-Genauigkeit ist eine Metrik zur Klassifizierung. Siehe Was ist die Definition der Top-n-Genauigkeit? .

Top-K-Genauigkeit=Wie oft war mindestens ein relevantes Element in der Top-K einer Ranking-Abfrage?Ranking-Anfragen

k

kk[5,20]

k

Präzision @ k

Präzision @ k=Anzahl der relevanten Elemente innerhalb des Top-kk[0,1], höher ist besser

Was es dir sagt:

  • wenn es hoch ist -> Vieles, was Sie dem Benutzer zeigen, ist für ihn relevant
  • wenn es niedrig ist -> Sie verschwenden Ihre Benutzerzeit. Vieles, was Sie ihnen zeigen, ist für sie nicht relevant

Rückruf @ k

Rückruf @ k=Anzahl der relevanten Elemente innerhalb des Top-kGesamtzahl der relevanten Artikel[0,1], höher ist besser

Was es bedeutet:

  • Wenn es hoch ist: Sie zeigen, was Sie haben! Sie geben ihnen alle relevanten Gegenstände.
  • Wenn es niedrig ist: Verglichen mit der Gesamtmenge der relevanten Elemente ist k klein / die relevanten Elemente in der oberen k sind klein. Aus diesem Grund ist der Rückruf von @ k allein möglicherweise nicht so aussagekräftig. Wenn es mit einer hohen Genauigkeit @ k kombiniert wird, kann es sinnvoll sein, k zu erhöhen.

2

Vor kurzem musste ich eine Metrik für die Bewertung von Multilabel-Ranking-Algorithmen auswählen und kam zu diesem Thema, das wirklich hilfreich war. Hier sind einige Ergänzungen zu stpks Antwort, die hilfreich waren, um eine Wahl zu treffen.

  • MAP kann auf Kosten einer Annäherung an Multilabel-Probleme angepasst werden
  • MAP muss nicht bei k berechnet werden, aber die Multilabel-Version wird möglicherweise nicht angepasst, wenn die negative Klasse überwiegt
  • MAP und (N) DCG können beide als gewichteter Durchschnitt der eingestuften Relevanzwerte umgeschrieben werden

Einzelheiten

Konzentrieren wir uns auf die durchschnittliche Genauigkeit (Average Precision, AP), da die mittlere durchschnittliche Genauigkeit (Mean Average Precision, MAP) nur der Durchschnitt der APs bei mehreren Abfragen ist. AP ist für Binärdaten korrekt als der Bereich unter der Präzisionsrückrufkurve definiert, der als Durchschnitt der Präzisionen bei jedem positiven Element umgeschrieben werden kann. (siehe den Wikipedia-Artikel über MAP ) Eine mögliche Annäherung besteht darin, ihn als Durchschnitt der Präzisionen bei jedem zu definierenArtikel. Leider verlieren wir die nette Eigenschaft, dass die negativen Beispiele am Ende der Liste keinen Einfluss auf den Wert von AP haben. (Dies ist besonders traurig, wenn es um die Bewertung einer Suchmaschine mit weitaus mehr negativen Beispielen als positiven Beispielen geht. Eine mögliche Problemumgehung besteht darin, die negativen Beispiele auf Kosten anderer Nachteile zu subsampeln, z. B. werden die Abfragen mit positiveren Elementen gleichermaßen schwierig zu den Abfragen mit wenigen positiven Beispielen.)

Andererseits hat diese Annäherung die nette Eigenschaft, dass sie sich gut auf den Mehrfachetikettenfall verallgemeinert. Tatsächlich kann im binären Fall die Genauigkeit an Position k auch als durchschnittliche Relevanz vor Position k interpretiert werden, wobei die Relevanz eines positiven Beispiels 1 und die Relevanz eines negativen Beispiels 0 beträgt. Diese Definition erstreckt sich ganz natürlich auf der Fall, in dem es mehr als zwei verschiedene Relevanzebenen gibt. In diesem Fall kann AP auch als Mittelwert der Durchschnittswerte der Relevanzen an jeder Position definiert werden.

k

wkEINP=1KLog(Kk)

wo Kist die Anzahl der zu bewertenden Gegenstände. Jetzt haben wir diesen Ausdruck und können ihn mit dem DCG vergleichen. In der Tat ist DCG auch ein gewichteter Durchschnitt der eingestuften Relevanzen. Die Gewichte sind:

wkDCG=1Log(k+1)

Aus diesen beiden Ausdrücken können wir ableiten, dass - AP die Dokumente von 1 bis 0 wiegt. - DCG die Dokumente unabhängig von der Gesamtzahl der Dokumente wiegt.

In beiden Fällen kann das Gesamtgewicht des Positivs vernachlässigbar sein, wenn es viel irrelevantere Beispiele als relevante Beispiele gibt. Für AP besteht eine Problemumgehung darin, die negativen Stichproben zu unterbemustern. Ich bin mir jedoch nicht sicher, wie ich den Anteil der Unterabtastung wählen und ob dies von der Abfrage oder der Anzahl der positiven Dokumente abhängen soll. Für DCG können wir es bei k schneiden, aber die gleichen Fragen stellen sich.

Ich würde mich freuen, mehr darüber zu erfahren, wenn hier jemand an dem Thema arbeitet.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.