Jak wybrać metrykę błędu podczas oceny klasyfikatora?

15

Widziałem różne wskaźniki błędów stosowane w konkursach Kaggle: między innymi RMS, średnia kwadratowa, AUC. Jaka jest ogólna ogólna zasada wyboru metryki błędu, tj. Skąd wiesz, którą metrykę błędu należy zastosować dla danego problemu? Czy są jakieś wytyczne?

Vishal
źródło

Odpowiedzi:

12

Pula wskaźników błędów, które możesz wybrać, różni się między klasyfikacją a regresją. W tym ostatnim próbujesz przewidzieć jedną ciągłą wartość, a za pomocą klasyfikacji przewidujesz dyskretne klasy, takie jak „zdrowy” lub „niezdrowy”. Z przytoczonych przykładów błąd średniej kwadratowej pierwiastka miałby zastosowanie do regresji, a AUC do klasyfikacji z dwiema klasami.

Pozwól, że dam ci trochę więcej szczegółów na temat klasyfikacji. Wspominałeś AUC jako miarę, która jest obszarem pod krzywą ROC, który zwykle stosuje się tylko do problemów z klasyfikacją binarną dla dwóch klas. Chociaż istnieją sposoby konstruowania krzywej ROC dla więcej niż dwóch klas, tracą one prostotę krzywej ROC dla dwóch klas. Ponadto krzywe ROC można skonstruować tylko wtedy, gdy wybrany klasyfikator generuje pewien wynik związany z każdą prognozą. Na przykład regresja logistyczna da ci prawdopodobieństwa dla każdej z dwóch klas. Oprócz swojej prostoty krzywe ROC mają tę zaletę, że nie wpływa na nie stosunek między instancjami oznaczonymi pozytywnie i negatywnie w twoich zestawach danych i nie zmuszają cię do wyboru progu. Niemniej jednak zaleca się nie tylko spojrzenie na samą krzywą ROC, ale także inne wizualizacje. Polecam rzucić okiem na krzywe precyzji przywołania i krzywe kosztów.jeden prawdziwy pomiar błędu, wszystkie mają swoją siłę i słabości.

Pomocna w tym zakresie jest literatura:

Jeśli twój klasyfikator nie zapewnia jakiegoś wyniku, musisz wrócić do podstawowych miar, które można uzyskać z macierzy pomieszania zawierającej liczbę prawdziwie pozytywnych, fałszywie pozytywnych, prawdziwych negatywów i fałszywych negatywów. Wspomniane wizualizacje (ROC, przywołanie precyzji, krzywa kosztów) opierają się na tych tabelach uzyskanych przy użyciu innego progu wyniku klasyfikatora. Najbardziej popularną miarą w tym przypadku jest prawdopodobnie miara F1N.N.×N.N. 2)×2)ZAZA

wrz
źródło
1
N.N.×N.N. 2)×2)
Wielkie dzięki za wskazanie tego błędu, poprawiłem go w powyższej odpowiedzi.
sebp
5

Pozwól, że dodam jeszcze kilka przemyśleń do już istniejących odpowiedzi.

  • większość klasyfikatorów faktycznie ma pośredni ciągły wynik, do którego zwykle stosuje się próg przypisywania klas twardych (poniżej t: klasa a, powyżej: klasa b). Zmiana tego progu daje ROC.
  • Zasadniczo kompresja takiej krzywej w jedną liczbę nie jest dobrym pomysłem . patrz np . Szacunek dokładności dla porównania algorytmów indukcyjnych
    Istnieje wiele różnych ROC, które mają takie same AUC, a użyteczność może się znacznie różnić w zależności od zastosowania.
  • odwrotnie: wybór progu może zależeć w dużej mierze od posiadanej aplikacji.
  • Nie musisz patrzeć na skuteczność klasyfikatora poza tymi granicami, a jeśli wybierzesz jedną metrykę, powinna ona przynajmniej podsumować tylko odpowiedni zakres innych ograniczonych metryk.
  • w zależności od projektu badania ogólna część prawidłowo lub źle sklasyfikowanych próbek może być odpowiednim podsumowaniem lub nie, a wnioski, które można z tego wyciągnąć, będą również zależeć od projektu badania: Czy dane z testu odzwierciedlają wcześniejsze prawdopodobieństwa (rozpowszechnienie) zajęcia? Dla populacji, w której ma być używany twój klasyfikator? Czy zostało zebrane w sposób warstwowy? Jest to ściśle związane z faktem, że większość użytkowników klasyfikatora bardziej interesują się wartościami predykcyjnymi, ale czułość i swoistość są znacznie łatwiejsze do zmierzenia.

  • Pytasz o ogólne wytyczne. Jedną ogólną wskazówką jest to, że musisz wiedzieć

    • jakiego rodzaju wydajności potrzebujesz (czułość, swoistość, wartości predykcyjne itp. odpowiedz na konkretne pytania dotyczące zachowania twojego klasyfikatora, zobacz, co tu napisałem ).
    • Jakie dopuszczalne zakresy robocze dla tych charakterystyk wydajności dla Twojej aplikacji ?.
      Mogą się one znacznie różnić: możesz chcieć zaakceptować niektóre fałszywe negatywy w wykrywaniu spamu, ale nie byłoby to akceptowalne ustawienie do diagnozy HIV ...

Myślę, że nie będziesz w stanie znaleźć przydatnych danych, jeśli nie będziesz w stanie odpowiedzieć na te pytania.

To trochę tak, jakby nie było też darmowego lunchu podczas walidacji klasyfikatora.

cbeleites obsługuje Monikę
źródło
2

Oczekiwany poziom błędu błędnej klasyfikacji to metoda, której najczęściej używałem i którą widziałem. AUC ROC jest miarą zestawu reguł klasyfikacji. Jeśli chodzi o porównanie konkretnego klasyfikatora z innym, AUC nie jest właściwe. Pewna forma błędu klasyfikacji ma największy sens, ponieważ najbardziej bezpośrednio reprezentuje działanie reguły klasyfikacji.

Wiele wysiłku włożono w znalezienie dobrych oszacowań poziomu błędu klasyfikacji ze względu na duże odchylenie szacunków dotyczących ponownej substytucji i dużą zmienność pomijania. Uruchomiono estymatory rozruchowe i gładkie. Zobacz na przykład artykuł Efrona w JASA 1983 na temat ulepszeń bootstrapu w stosunku do weryfikacji krzyżowej.

Oto raport techniczny Uniwersytetu Stanforda z 1995 roku autorstwa Efrona i Tibshirami, podsumowujący literaturę, w tym niektóre z moich własnych prac.

Michael R. Chernick
źródło
Porównanie wydajności dwóch klasyfikatorów w tym samym zestawie danych to kolejny temat do dyskusji. Zwłaszcza w przypadku ROC i AUC istnieje kilka metod porównywania krzywych ROC jako całości lub szacunków AUC. Są to zasadniczo testy statystyczne z hipotezą zerową, że ROC / AUC nie różnią się. Cross-validation vs. Bootstrap to kolejny interesujący temat, ostatnio widziałem artykuł ( dx.doi.org/10.1016/j.csda.2010.03.004 ) na ten temat. Myślę, że jeśli weźmiesz pod uwagę wszystkie aspekty naraz, może to być dość zastraszające.
sebp