Szukam klasyfikatorów, które generują prawdopodobieństwa, że przykłady należą do jednej z dwóch klas.
Znam regresję logistyczną i naiwne Bayesa, ale czy możesz mi powiedzieć o innych, którzy działają w podobny sposób? Czyli klasyfikatory, które przewidują nie klasy, do których należą przykłady, ale prawdopodobieństwo, że przykłady pasują do konkretnej klasy?
Punkty bonusowe za wszelkie przemyślenia na temat zalet i wad różnych klasyfikatorów (w tym regresji logistycznej i naiwnych Bayesa). Na przykład, czy niektóre są lepsze do klasyfikacji wielu klas?
Inną możliwością są sieci neuronowe, jeśli użyjesz entropii krzyżowej jako funkcji kosztu w sigmoidalnych jednostkach wyjściowych. To zapewni Ci szacunkowe dane, których szukasz.
Sieci neuronowe, podobnie jak regresja logistyczna, są klasyfikatorami dyskryminującymi, co oznacza, że próbują zmaksymalizować warunkowy rozkład danych treningowych. Asymptotycznie, w limicie nieskończonych próbek, oba szacunki zbliżają się do tego samego limitu.
W tym artykule znajdziesz szczegółową analizę tego właśnie pytania . Pomysł na wynos jest taki, że chociaż model generatywny ma wyższy błąd asymptotyczny, może zbliżyć się do tego błędu asymptotycznego znacznie szybciej niż model dyskryminacyjny. Dlatego wybór jednego zależy od problemu, dostępnych danych i konkretnych wymagań.
Wreszcie, biorąc pod uwagę szacunki prawdopodobieństw warunkowych jako bezwzględny wynik, na podstawie których podejmowane są decyzje (jeśli o to właśnie chodzi), ogólnie nie ma większego sensu. Ważne jest rozważenie, biorąc pod uwagę konkretną próbkę, najlepszych klas kandydujących wyprowadzonych przez klasyfikator i porównanie powiązanych prawdopodobieństw. Jeśli różnica między dwoma najlepszymi wynikami jest wysoka, oznacza to, że klasyfikator jest bardzo pewny swojej odpowiedzi (niekoniecznie słusznej).
źródło
Jest ich wiele - a to, co działa najlepiej, zależy od danych. Istnieje również wiele sposobów oszukiwania - na przykład możesz wykonać kalibrację prawdopodobieństwa na wyjściach dowolnego klasyfikatora, który daje pozory wyniku (tj. Iloczyn iloczynu między wektorem masy a wejściem). Najczęstszym tego przykładem jest skalowanie Platta.
Jest także kwestia kształtu modelu bazowego. Jeśli masz interakcje wielomianowe z danymi, wówczas waniliowa regresja logistyczna nie będzie w stanie dobrze jej modelować. Możesz jednak użyć jądrzanej wersji regresji logistycznej, aby model lepiej pasował do danych. Zwykle zwiększa to „dobroć” wyników prawdopodobieństwa, ponieważ poprawiasz również dokładność klasyfikatora.
Ogólnie rzecz biorąc, większość modeli, które podają prawdopodobieństwa, zwykle używa funkcji logistycznej, więc porównanie może być trudne. Po prostu działa dobrze w praktyce, sieci bayesowskie są alternatywą. Naiwny Bayes po prostu przyjmuje zbyt uproszczone założenie, że jego prawdopodobieństwo jest dobre - i można to łatwo zaobserwować na każdym zestawie danych o rozsądnej wielkości.
Ostatecznie zazwyczaj łatwiej jest podnieść jakość oszacowań prawdopodobieństwa, wybierając model, który lepiej reprezentuje dane. W tym sensie nie ma większego znaczenia, skąd bierze się prawdopodobieństwo. Jeśli możesz uzyskać 70% dokładności za pomocą regresji logistycznej i 98% za pomocą SVM - to samo podanie samego prawdopodobieństwa „pełnej pewności” sprawi, że wyniki będą „lepsze” według większości metod punktacji, nawet jeśli tak naprawdę nie są to prawdopodobieństwa (i wtedy możesz wykonać kalibrację, o której wspomniałem wcześniej, dzięki czemu są one rzeczywiście lepsze).
To samo pytanie w kontekście niemożności uzyskania dokładnego klasyfikatora jest bardziej interesujące, ale nie jestem pewien, czy ktoś badał / porównywał w takim scenariuszu.
źródło