Pomiar wydajności różnych klasyfikatorów o różnych wielkościach próbek

12

Obecnie używam kilku różnych klasyfikatorów na różnych jednostkach wyodrębnionych z tekstu i używam precyzji / przywołania jako podsumowania tego, jak dobrze każdy oddzielny klasyfikator działa w danym zestawie danych.

Zastanawiam się, czy istnieje sensowny sposób porównywania wydajności tych klasyfikatorów w podobny sposób, ale który bierze również pod uwagę całkowitą liczbę każdego elementu w klasyfikowanych danych testowych?

Obecnie używam precyzji / przypomnienia jako miary wydajności, więc może mieć coś takiego:

                    Precision Recall
Person classifier   65%       40%
Company classifier  98%       90%
Cheese classifier   10%       50%
Egg classifier      100%      100%

Jednak zestaw danych, na którym je uruchamiam, może zawierać 100 000 osób, 5 000 firm, 500 serów i 1 jajko.

Czy istnieje więc podsumowująca statystyka, którą mogę dodać do powyższej tabeli, która uwzględnia również całkowitą liczbę każdego elementu? Czy jest jakiś sposób zmierzenia faktu, że np. 100% prec / rec na klasyfikatorze jaja może nie mieć znaczenia przy tylko 1 pozycji danych?

Załóżmy, że mieliśmy setki takich klasyfikatorów. Myślę, że szukam dobrego sposobu na udzielenie odpowiedzi na pytania: „Które klasyfikatory osiągają gorsze wyniki? Które klasyfikatory nie mają wystarczających danych testowych, aby stwierdzić, czy osiągają gorsze wyniki”.

Dave Challis
źródło
Jeśli masz różnych klasyfikatorów przeszkolonych w zakresie różnych zestawów danych, jak możesz je w znaczący sposób porównać? Przychodzą mi na myśl jabłka i pomarańcze, kreda i ser. Ponadto, jeśli masz klasyfikatory wieloklasowe, w jaki sposób obliczasz precyzję i przywołujesz? Nawet znajomość N = 1 niekoniecznie jest pomocna - jeśli na świecie jest tylko jedno jajko, twój klasyfikator jaj jest w porządku.
Bull
Są to różni klasyfikatorzy wyszkoleni na tych samych zestawach danych, np. Wiemy, że mamy dokument dotyczący jabłek i pomarańczy, więc uruchamiamy na nim klasyfikator jabłek, aby określić rodzaj jabłka, o którym mówi, i pomarańczowy klasyfikator, aby określić rodzaj pomarańczy Mówi o tym. Jeśli nasze dokumenty dotyczą 99% jabłek, 1% pomarańczy, a oba klasyfikatory mają ten sam wstępny / rec (sumowanie wierszy / kolumn nad macierzą pomieszania), czy możemy przedstawić jakieś informacje uwzględniające różnice w ilości każdego z nich ? (może być tak, że nie, nie ma, z której byłbym zadowolony)
Dave Challis

Odpowiedzi:

5

Musisz spojrzeć na przedział ufności statystyki. Pomaga to zmierzyć stopień niepewności w statystyce, która jest w dużej mierze funkcją wielkości próby.

Christopher Louden
źródło
2

Moim zdaniem trudno porównywać wydajność, gdy występuje tak duża różnica wielkości. Pod tym linkiem (sprawdź tutaj w Wikipedii http://en.wikipedia.org/wiki/Effect_size ) możesz zobaczyć różne strategie.

Ten, który sugeruję, jest związany z wariancją. Na przykład rozważ wydajność klasyfikatora (100%) i klasyfikatora osób (65%). Minimalny błąd, który popełniasz za pomocą poprzedniego klasyfikatora, wynosi 100%. Jednak minimalny błąd, który możesz popełnić za pomocą tego drugiego klasyfikatora, to 10e-5.

Tak więc jednym ze sposobów porównania klasyfikatora jest wzięcie pod uwagę tej Reguły trzech ( http://en.wikipedia.org/wiki/Rule_of_three_(statistics), w której można porównać wydajność i jej zmienność.

Inną możliwością jest miara F, która jest połączeniem Precyzji i Przywołania i jest w jakiś sposób niezależna od wielkości efektu.

adesantos
źródło
2

Liczba danych w klasie jest czasami nazywana supportklasyfikatorem. Mówi, jak bardzo możesz ufać swojemu wynikowi, tak jak wartość p pozwoliłaby ci zaufać lub nieufnie w jakimś teście.

Jednym z podejść, które można zastosować, jest obliczenie kilku miar wydajności klasyfikatora, nie tylko precyzji i przywołania, ale także prawdziwej wartości dodatniej, liczby fałszywie dodatnich, specyficzności, wrażliwości, dodatniego prawdopodobieństwa, ujemnego prawdopodobieństwa itp. I sprawdzenie, czy są one zgodne ze sobą . Jeśli jeden z mierników osiąga maksimum (100%), a drugi nie, często z mojego doświadczenia wynika, że ​​coś poszło nie tak (np. Słabe wsparcie, trywialny klasyfikator, stronniczy klasyfikator itp.). Zobacz to, aby uzyskać listę miar wydajności klasyfikatora.

damienfrancois
źródło