Najlepsza odpowiedź
RankNet, LambdaRank i LambdaMART to wszystko, co nazywamy uczenie się rangi .
Co to jest nauka rangowania?
Uczenie się rangi (LTR) to klasa technik, które stosują nadzorowane systemy uczące się (ML) do rozwiązywania problemów z rankingiem . Główna różnica między LTR a tradycyjnym nadzorowanym ML jest następująca:
- Tradycyjny ML rozwiązuje problem przewidywania (klasyfikacja lub regresja) w pojedynczym wystąpieniu na raz. Na przykład. jeśli wykonujesz wykrywanie spamu w wiadomościach e-mail, przyjrzysz się wszystkim funkcjom związanym z tym e-mailem i sklasyfikujesz go jako spam lub nie. Celem tradycyjnej ML jest wymyślenie klasy (spam lub brak spamu) lub pojedynczego wyniku liczbowego dla tej instancji.
- LTR rozwiązuje problem rankingowy na liście pozycji. Celem LTR jest optymalne uporządkowanie tych pozycji. W związku z tym LTR nie przejmuje się zbytnio dokładnym wynikiem, jaki otrzymuje każdy element, ale bardziej dba o względną kolejność wszystkich elementów.
Najpopularniejszym zastosowaniem LTR jest wyszukiwarka ranking, ale przydaje się wszędzie tam, gdzie trzeba stworzyć listę rankingową pozycji.
Dane treningowe dla modelu LTR składają się z listy pozycji i wyniku „prawdy” dla każdego z tych elementów . W przypadku rankingu wyszukiwarek oznacza to listę wyników zapytania i ocenę trafności każdego z wyników w odniesieniu do zapytania. Najpopularniejszym sposobem generowania tych ocen trafności przez główne wyszukiwarki jest poproszenie osób oceniających o ocenę wyników dla zestawu zapytań. Jeśli jesteś zainteresowany, szczegółowo opisałem systemy oceny ludzi tutaj: odpowiedź Nikhila Dandekara na pytanie Jak Google mierzy jakość wyników wyszukiwania?
Aby uzyskać bardziej techniczne wyjaśnienie uczenia się rangi sprawdź ten artykuł firmy Microsoft Research: Krótkie wprowadzenie do nauki rangi
Co czy RankNet, LambdaRank i LambdaMART ?
RankNet, LambdaRank i LambdaMART to algorytmy LTR opracowane przez Chrisa Burgesa i jego współpracowników z Microsoft Research. RankNet był pierwszym, który został opracowany, a następnie LambdaRank, a następnie LambdaMART.
We wszystkich trzech technikach ranking jest przekształcone w problem parami klasyfikacji lub regresji . Oznacza to, że patrzysz na pary elementów naraz, wymyślasz optymalną kolejność dla tej pary elementów oraz następnie użyj go, aby wymyślić ostateczny ranking wszystkich wyników.
Oto kilka ogólnych szczegółów dla każdego z algorytmów:
RankNet http://research.microsoft.com/en-us/um/people/cburges/papers/ICML\_ranking.pdf
RankNet został pierwotnie opracowany przy użyciu sieci neuronowe, ale model bazowy może być inny i nie jest ograniczony tylko do sieci neuronowych. Funkcja kosztu w RankNet ma na celu zminimalizowanie liczby inwersji w rankingu. W tym przypadku inwersja oznacza nieprawidłową kolejność w parze wyników, tj. Gdy na liście rankingowej umieścimy wynik o niższej ocenie powyżej wyniku o wyższej ocenie. RankNet optymalizuje funkcję kosztu za pomocą stochastycznego zejścia gradientowego.
LambdaRank http://research.microsoft.com/pubs/68133/lambdarank.pdf
Burgess et. glin. stwierdził, że podczas procedury szkolenia RankNet nie potrzebujesz kosztów, potrzebujesz tylko gradientów (\ lambda) kosztu w odniesieniu do wyniku modelu. Możesz myśleć o tych gradientach jako o małych strzałkach dołączonych do każdego dokumentu na liście rankingowej wskazując kierunek, w którym chcielibyśmy, aby te dokumenty się przesunęły.
Ponadto odkryli, że skalowanie gradientów przez zmianę NDCG znalezione przez zamianę każdej pary dokumentów dało dobre wyniki. Podstawową ideą LambdaRank jest użycie tej nowej funkcji kosztu do trenowania RankNet. W eksperymentalnych zestawach danych pokazuje poprawę szybkości i dokładności w porównaniu z oryginalnym RankNet.
LambdaMART http://research.microsoft.com/pubs/102750/LambdaMART\_Final.pdf
LambdaMART łączy LambdaRank i MART (Multiple Aditive Regression Trees). Podczas gdy MART używa drzew decyzyjnych wzmocnionych gradientem do zadań predykcyjnych, La mbdaMART używa drzew decyzyjnych ze wzmocnieniem gradientowym przy użyciu funkcji kosztu uzyskanej z LambdaRank do rozwiązywania zadań rankingowych.W przypadku zestawów danych eksperymentalnych LambdaMART wykazał lepsze wyniki niż LambdaRank i oryginalny RankNet.
Jeśli jesteś zainteresowany, Chris Burges ma jeden artykuł, w którym szczegółowo opisuje ewolucję z RankNet do LambdaRank do LambdaMART tutaj: Od RankNet do LambdaRank do LambdaMART: przegląd
Odpowiedź
Nauka rangi to klasa problemów związanych z przywróceniem pełnego porządku zbioru z jego częściowego porządku, który można opisać na kilka sposobów:
- Oceny dla wszystkich punktów danych
- Pary punktów, w których określamy, który punkt powinien być wyżej w rankingu
Można to postrzegać jako problem regresji – przewidzieć wynik dla wektora cech. Lub jako problem klasyfikacyjny, w którym musimy przewidzieć, który z dwóch punktów będzie miał wyższą pozycję w rankingu . Podejścia te nazywane są punktowymi i parami i są to obecnie najbardziej przebadane i niezawodne metody.