Najlepsza odpowiedź
W literaturze natknąłem się na kilka możliwych zastosowań rankingowych maszyn SVM:
* Regresja porządkowa * Optymalizacja AUC * Nierównowaga klas * Uczenie się rangowania problemów
Początkowo zaproponowano je do regresji porządkowej; Optymalizacja AUC jest tego szczególnym przypadkiem (dwie klasy). Nierównowaga klas jest związana z optymalizacją AUC, ponieważ AUC jest rozsądną miarą wydajności dla problemów z nierównowagą klas. Rankingowe maszyny SVM zostały również zaproponowane do rozwiązywania problemów Learning 2 Rank w kontekście wyszukiwania informacji. Nie są one dobrze dopasowane do IMHO, ponieważ chociaż AUC można również postrzegać jako miernik rankingowy, różni się on od standardowych wskaźników rankingowych, takich jak NDCG i Średnia Średnia Precyzja: te ostatnie są bardzo ciężkie; tj. kładą duży nacisk na pierwsze przykłady w rankingu (często przykłady poniżej 10 i 20 nie mają żadnego znaczenia), podczas gdy AUC traktuje wszystkie pozycje w rankingu jednakowo.
Biorąc to pod uwagę, ja ” korzystaliśmy z Rankingu SVM dla wszystkich powyższych problemów i IMHO nigdy nie okazały się przydatne – np. z mojego doświadczenia wynika, że przykładowe ważenie zwykle działa lepiej w przypadku nierównowagi klas i w przypadku uczenia się rangowania prostej regresji w wynikach trafności (+ model nieliniowy) zapewnia lepszą wydajność w przypadku większości wzorców L2R. Różnica w wydajności AUC między zwykłym svm a rankingowym svm jest pomijalna w IMHO.
Najciekawszą aplikacją Ranking SVM, z którą się spotkałem, był Thorsten Joachims i jego grupa, gdzie wykorzystali ukryte informacje zwrotne od użytkowników wyszukiwarki internetowej (tj. użytkownik kliknął najpierw pozycję 2, a nie 1), aby wygenerować „przykładowe pary” (doc\_2 – doc\_1), które są wprowadzane do rankingu SVM – sygnały treningowe w tym formularzu działałyby tylko w przypadku podejść parami, takich jak ranking SVM.
Odpowiedź
Co oznacza AUC i co to jest? :
Skróty
- AUC = Obszar pod krzywą.
- AUROC = Obszar pod krzywą charakterystyki operacyjnej odbiornika .
AUC jest używane przez większość czasu do oznaczenia AUROC, co jest złą praktyką, ponieważ, jak zauważył Marc Claesen, AUC jest niejednoznaczne (może to być dowolna krzywa), podczas gdy AUROC nie.
Interpreti ng the AUROC
AUROC ma kilka równoważnych interpretacji :
- Oczekiwanie, że jednolicie wylosowany losowy wynik pozytywny jest klasyfikowany przed jednolicie wylosowanym losowym negatywem.
- Oczekiwany odsetek pozytywów w rankingu przed jednolicie wylosowanym losowym wynikiem negatywnym.
- Oczekiwany prawdziwie pozytywny współczynnik, jeśli ranking jest split tuż przed jednolicie wylosowanym losowym wynikiem negatywnym.
- Oczekiwany odsetek wyników negatywnych uszeregowanych po równomiernie wylosowanym losowym wyniku dodatnim.
- Oczekiwany odsetek wyników fałszywie pozytywnych, jeśli ranking jest podzielony tuż po równomiernym losowy dodatni.
Obliczanie AUROC
Załóżmy, że mają probabilistyczny klasyfikator binarny, taki jak regresja logistyczna. Przed przedstawieniem krzywej ROC (= krzywa charakterystyki operacyjnej odbiornika) należy zrozumieć pojęcie macierzy pomyłki . Kiedy tworzymy predykcję binarną, mogą to być 4 rodzaje błędów:
- Przewidujemy 0, podczas gdy w rzeczywistości powinniśmy mieć klasę równą 0: to się nazywa True Negative , tj. poprawnie przewidujemy, że klasa jest ujemna (0). Na przykład program antywirusowy nie wykrył nieszkodliwego pliku jako wirusa.
- Przewidujemy 0, podczas gdy w rzeczywistości powinniśmy mieć klasę 1: to się nazywa False Negative , tj. Niepoprawnie przewidujemy, że klasa jest ujemna (0). Na przykład program antywirusowy nie wykrył wirusa.
- Przewidujemy 1, podczas gdy w rzeczywistości powinniśmy mieć klasę 0: to się nazywa Fałszywie dodatni , czyli niepoprawnie przewidujemy, że klasa jest dodatnia (1). Na przykład program antywirusowy uważany za nieszkodliwy plik za wirus.
- Przewidujemy 1, podczas gdy powinniśmy mieć klasę 1: nazywa się to True Positive , tj. Poprawnie przewidujemy, że klasa jest pozytywna (1). Na przykład program antywirusowy słusznie wykrył wirusa.
Aby uzyskać macierz nieporozumień, przeglądamy wszystkie przewidywania modelu i liczymy, ile razy każdy z tych 4 typów błędów występują:
W tym przykładzie macierzy pomyłki spośród 50 sklasyfikowanych punktów danych 45 jest poprawnie sklasyfikowanych i 5 jest błędnie sklasyfikowanych.
Ponieważ do porównania dwóch różnych modeli często wygodniej jest mieć jeden wskaźnik niż kilka, obliczamy dwie metryki z macierzy nieporozumień, które później połączymy w jeden:
- Rzeczywisty współczynnik dodatni ( TPR ), aka. czułość, współczynnik trafień i przypominanie , które jest zdefiniowane jako TPTP + FN. Intuicyjnie ta miara odpowiada odsetkowi dodatnich punktów danych, które są prawidłowo uznawane za dodatnie, w odniesieniu do wszystkich dodatnich punktów danych. Innymi słowy, im wyższy TPR, tym mniej dodatnich punktów danych pominiemy.
- Fałszywie dodatni współczynnik ( FPR ), aka. wypadnięcie , które jest zdefiniowane jako FPFP + TN. Intuicyjnie ten wskaźnik odpowiada odsetkowi ujemnych punktów danych, które są błędnie uznawane za dodatnie, w odniesieniu do wszystkich ujemnych punktów danych. Innymi słowy, im wyższy FPR, tym więcej ujemnych punktów danych pominiemy w klasyfikacji.
Aby połączyć FPR i TPR w jedną metrykę, najpierw obliczamy dwie poprzednie metryki z wieloma różnymi progu (na przykład 0,00; 0,01,0,02,…, 1,00) dla regresji logistycznej, a następnie wykreśl je na jednym wykresie, z wartościami FPR na odciętej i wartościami TPR na rzędnej. Powstała krzywa nazywa się krzywą ROC, a miarą, którą rozważamy, jest AUC tej krzywej, którą nazywamy AUROC.
Poniższy rysunek przedstawia graficznie AUROC:
Na tym rysunku niebieski obszar odpowiada obszarowi pod krzywą charakterystyki roboczej odbiornika (AUROC). Kreskowaną linię na przekątnej przedstawiamy krzywą ROC losowego predyktora: ma AUROC równy 0,5. Predykator losowy jest powszechnie używany jako punkt odniesienia, aby sprawdzić, czy model jest przydatny.
Jeśli chcesz zdobyć doświadczenie z pierwszej ręki: