Beste Antwort
RankNet, LambdaRank und LambdaMART sind alles, was wir Ranking lernen Algorithmen.
Was ist Ranking lernen?
Ranking lernen (LTR) ist eine Klasse von Techniken, die überwacht angewendet werden maschinelles Lernen (ML) zur Lösung von Ranking-Problemen . Der Hauptunterschied zwischen LTR und traditioneller überwachter ML besteht darin, dass:
- Traditionelle ML ein Vorhersageproblem (Klassifizierung oder Regression) jeweils für eine einzelne Instanz löst. Z.B. Wenn Sie eine Spam-Erkennung für E-Mails durchführen, sehen Sie sich alle mit dieser E-Mail verbundenen Funktionen an und klassifizieren sie als Spam oder nicht. Das Ziel der traditionellen ML ist es, eine Klasse (Spam oder kein Spam) oder eine einzelne numerische Bewertung für diese Instanz zu erstellen.
- LTR löst ein Ranking-Problem in einer Liste von Elementen. Das Ziel von LTR ist es, eine optimale Bestellung dieser Artikel zu erreichen. Daher kümmert sich LTR nicht viel um die genaue Punktzahl, die jedes Element erhält, sondern um die relative Reihenfolge aller Elemente.
Die häufigste Anwendung von LTR ist die Suchmaschine Ranking, aber es ist überall dort nützlich, wo Sie eine Rangliste von Elementen erstellen müssen.
Die Trainingsdaten für ein LTR-Modell bestehen aus einer Liste von Elementen und einer „Grundwahrheits“ -Bewertung für jedes dieser Elemente . Für das Suchmaschinenranking bedeutet dies eine Liste der Ergebnisse für eine Abfrage und eine Relevanzbewertung für jedes dieser Ergebnisse in Bezug auf die Abfrage. Die gängigste Methode, mit der große Suchmaschinen diese Relevanzbewertungen generieren, besteht darin, menschliche Bewerter zu bitten, die Ergebnisse für eine Reihe von Abfragen zu bewerten. Falls Sie interessiert sind, habe ich hier ausführlich über menschliche Bewertungssysteme geschrieben: Nikhil Dandekars Antwort auf Wie misst Google die Qualität ihrer Suchergebnisse?
Für eine technischere Erklärung von Learning to Rank Überprüfen Sie dieses Dokument von Microsoft Research: Eine kurze Einführung in das Lernen des Rankings
Was ist RankNet, LambdaRank und LambdaMART ?
RankNet, LambdaRank und LambdaMART sind LTR-Algorithmen, die von Chris Burges und seinen Kollegen bei Microsoft Research entwickelt wurden. RankNet wurde als erstes entwickelt, gefolgt von LambdaRank und dann LambdaMART.
Bei allen drei Techniken ist das Ranking umgewandelt in ein paarweises Klassifizierungs- oder Regressionsproblem . Das heißt, Sie betrachten jeweils mehrere Artikelpaare, finden die optimale Reihenfolge für dieses Artikelpaar und dann benutze es, um mit zu kommen die endgültige Rangliste für alle Ergebnisse.
Hier sind einige allgemeine Details für jeden der Algorithmen:
RankNet http://research.microsoft.com/en-us/um/people/cburges/papers/ICML\_ranking.pdf
RankNet wurde ursprünglich mit entwickelt Neuronale Netze, aber das zugrunde liegende Modell kann unterschiedlich sein und ist nicht nur auf neuronale Netze beschränkt. Die Kostenfunktion für RankNet zielt darauf ab, die Anzahl der Inversionen im Ranking zu minimieren. Hier bedeutet eine Inversion eine falsche Reihenfolge unter einem Ergebnispaar, d. H. Wenn wir ein Ergebnis mit niedrigerer Bewertung über ein Ergebnis mit höherer Bewertung in einer Rangliste stufen. RankNet optimiert die Kostenfunktion mithilfe des stochastischen Gradientenabfalls.
LambdaRank http://research.microsoft.com/pubs/68133/lambdarank.pdf
Burgess et. al. Es wurde festgestellt, dass Sie während des RankNet-Trainingsverfahrens nicht die Kosten benötigen, sondern nur die Steigungen (\ lambda) der Kosten in Bezug auf die Modellbewertung. Sie können sich diese Steigungen als kleine Pfeile vorstellen, die jedem Dokument in der Rangliste beigefügt sind und geben die Richtung an, in die sich diese Dokumente bewegen sollen.
Außerdem stellten sie fest, dass die Gradienten durch die Änderung in skaliert werden NDCG , das durch Austauschen jedes Dokumentenpaars gefunden wurde, lieferte gute Ergebnisse. Die Kernidee von LambdaRank besteht darin, diese neue Kostenfunktion für das Training eines RankNet zu verwenden zeigt sowohl Geschwindigkeits- als auch Genauigkeitsverbesserungen gegenüber dem ursprünglichen RankNet.
LambdaMART http://research.microsoft.com/pubs/102750/LambdaMART\_Final.pdf
LambdaMART kombiniert LambdaRank und MART (Multiple Additive Regression Trees). Während MART verwendet gradientenverstärkte Entscheidungsbäume für Vorhersageaufgaben, La mbdaMART verwendet gradientenverstärkte Entscheidungsbäume unter Verwendung einer von LambdaRank abgeleiteten Kostenfunktion zum Lösen einer Ranking-Aufgabe.In experimentellen Datensätzen hat LambdaMART bessere Ergebnisse gezeigt als LambdaRank und das ursprüngliche RankNet.
Wenn Sie interessiert sind, hat Chris Burges ein einziges Papier, in dem die Entwicklung von RankNet zu LambdaRank zu LambdaMART hier detailliert beschrieben wird: Von RankNet zu LambdaRank zu LambdaMART: Ein Überblick
Antwort
Das Erlernen des Rankings ist eine Klasse von Problemen, die mit der Wiederherstellung der vollständigen Reihenfolge verbunden sind einer Menge aus ihrer Teilreihenfolge, die auf verschiedene Arten beschrieben werden kann:
- Bewertungen für alle Datenpunkte
- Punktepaare, wobei wir angeben, welcher Punkt sein soll höher eingestuft
Dies könnte als Regressionsproblem angesehen werden – prognostizieren Sie die Punktzahl für einen Merkmalsvektor oder als Klassifizierungsproblem, bei dem wir vorhersagen müssen, welcher der beiden Punkte höher eingestuft wird Diese Ansätze werden als punktweise und paarweise bezeichnet und sind derzeit die am besten erforschten und robustesten Methoden.