Dlaczego dzięki klasyfikatorowi Bayes osiągamy najlepszą wydajność, jaką można osiągnąć? Jaki jest na to formalny dowód / wyjaśnienie?
Zazwyczaj zestaw danych jest uważana składać próbek IID z rozkładem, który generuje dane. Następnie budujesz model predykcyjny na podstawie podanych danych: biorąc pod uwagę próbkę , przewidujesz klasę , podczas gdy prawdziwą klasą próbki jest .renxjaxjaf ( x I ) F ( x I )fa^( xja)fa( xja)
Teoretycznie możesz jednak zdecydować, aby nie wybierać jednego konkretnego modelu , ale raczej rozważyć wszystkie możliwe modele na raz i połączyć je jakoś w jeden duży model .fa^wybrany F Ffa^fa^
Oczywiście, biorąc pod uwagę dane, wiele mniejszych modeli może być bardzo nieprawdopodobnych lub nieodpowiednich (na przykład modele przewidujące tylko jedną wartość celu, mimo że w zestawie danych jest wiele wartości celu ).re
W każdym razie chcesz przewidzieć wartość docelową nowych próbek, które pochodzą z tego samego rozkładu co . Dobrym miernikiem wydajności twojego modelu byłoby
tj. Prawdopodobieństwo, że przewidujesz prawdziwa wartość docelowa dla losowo .xjamie ( model ) = P[ f( X) = model ( X) ] ,
X
Korzystając ze wzoru Bayesa, możesz obliczyć, jakie jest prawdopodobieństwo, że nowa próbka ma wartość docelową , biorąc pod uwagę dane :xvre
P.( v ∣ D ) = ∑fa^P.( v ∣ f^) P( f^∣D).
Należy podkreślić, że
- zwykle ma wartość lub , ponieważ jest deterministyczną funkcją ,P.( v ∣ f^)01f xfa^x
- nie zwykle, ale prawie cały czas, nie można oszacować (z wyjątkiem wyżej wspomnianych trywialnych przypadków),P.( f^∣ D )
- Zazwyczaj nie, ale prawie cały czas, liczba możliwych modeli jest zbyt duży, aby górna suma zostać ocenione.fa^
Dlatego w większości przypadków bardzo trudno jest uzyskać / oszacować .P.( v ∣ D )
Teraz przechodzimy do klasyfikatora Optimal Bayes. Dla danego przewiduje wartość
Ponieważ jest to najbardziej prawdopodobna wartość spośród wszystkich możliwych wartości docelowych , klasyfikator Optimal Bayes maksymalizuje miarę wydajności .xV = argmax V Ď f P ( V | f ) P ( f | D ) . V E ( f )v^= argmaxv∑fa^P.( v ∣ f^) P( f^∣ D ) .
ve ( f^)
Jak zawsze używamy klasyfikatora Bayesa jako punktu odniesienia do porównywania wydajności wszystkich innych klasyfikatorów.
Prawdopodobnie używasz naiwnej wersji klasyfikatora Bayesa. Jest łatwy do wdrożenia, działa dość dobrze przez większość czasu, ale oblicza tylko naiwne oszacowanie .P.( v ∣ D )