OCENA KLASYFIKACYJNYCH MODELI DATA MINING (wybrane miary oceny algorytmów uczenia maszynowego) Miary oceny klasyfikacyjnych modeli uczenia maszynowego dzielimy przede wszystkim na parametry oceny oraz krzywe oceny. Pierwsze z nich są punktowymi charakterystykami modelu zbudowanego dla danego zbioru instancji. Krzywe umożliwiają rozpatrywanie różnych scenariuszy zastosowania poszczególnych klasyfikatorów. Punktami odniesienia dla obydwu rodzajów miar są modele losowe lub inne klasyfikatory. W związku z heurystycznym charakterem uczenia maszynowego poszczególne miary biorą często inne aspekty informacyjne zbiorów danych i nie dają porównywalnych ocen. Określenia model i klasyfikator będziemy używać zamiennie. 1. Parametry oceny Przedstawione tu parametry oceny modeli odpowiadają prezentowanym w programie komputerowym Weka. Przykład, na który się powołujemy, został zbudowany na bazie klasycznego zbioru labor. Zawiera on 57 instancji, 16 atrybutów opisujących warunki zatrudnienia oraz atrybut służący do klasyfikacji zatrudnienia na dwie klasy: bad (klasa P, ang. positive) i good (klasa N, ang. negative). Klasyfikacji dokonaliśmy według drzewa J48, które reprezentuje w programie Weka algorytm Quinlana, gdy tak jak w naszym wypadku do przycinania drzewa użyjemy parametru confidencefactor lub nie przycinamy drzewa. Dla uproszczenia opisu za zbiór testujący przyjęliśmy zbiór treningowy, dzięki czemu odwzorowaliśmy powstałe reguły decyzyjne w załączonym pliku Labor.xls. Plik ten zawiera wyniki modelu z programu Weka oraz obliczenia miar oceny modelu, które są zbudowane na bazie macierzy trafności (ang. Confusion Matrix). Do prezentacji zależności pomiędzy zbiorem wyjściowym a uzyskanym klasyfikatorem służy macierz trafności (1.1), gdzie korzystamy z notacji: TP (ang. true positive) instancje z klasy P bad sklasyfikowane poprawnie, FP (ang. false positive) instancje z klasy N good sklasyfikowane błędnie jako klasa P bad, FN (ang. false negative) instancje z klasy P bad sklasyfikowane błędnie jako klasa N good, TN (ang. true negative) instancje z klasy N bad sklasyfikowane poprawnie. modelu: Na bazie macierzy trafności uzyskujemy następujące parametryczne miary oceny 1
1) dokładność (ang. Accuracy): 2) współczynnik TP (ang. TP rate lub Recall): 3) współczynnik FP (ang. FP rate): 4) precyzja (ang. Precision): 5) współczynnik F (ang. F-Measure): Miara (1.2) dotyczy całego modelu i oznacza, że nasz klasyfikator 87,7% poprawnie przydzielił instancje do odpowiednich klas. Zatem to błąd predykcji z zastosowanego modelu. Istotność błędu predykcji możemy przetestować statystycznie korzystając z testu istotności dla frakcji elementów. Zwykle w modelach data mining mamy do czynienia z dużą liczbą instancji (obserwacji), co umożliwia wyznaczenie przedziałów ufności korzystając z aproksymacji rozkładem normalnym. Musimy jednak pamiętać, że musimy mieć podstawy do uznania zbioru testowego za próbę losową, czyli reprezentatywną dla populacji. Pozostałe z wymienionych miar dotyczą klasyfikacji instancji jako klasy P. Analogicznie obliczmy je dla klasy N we wspomnianym załączniku Labor.xls. Zasadę tą możemy uogólnić na przypadek wielu klas: macierz trafień i bazujące na niej miary oceny modelu budujemy traktując kolejno poszczególne klasy jako P i pozostałe jako N. Takie ujęcie odpowiada często modelowanej sytuacji w data mining, gdzie jedna z klas oznacza pozytywną sytuację. W naszym przypadku jest odwrotnie, tj. klasą P jest bad, ale dla potrzeby tego krótkiego skryptu nie ma to znaczenia. W każdym razie współczynniki (1.3) (1.6) skupiają się na udziale sklasyfikowanych instancji jako najbardziej interesująca nas klasa P w klasach zbioru testowego. Lepsze wyjaśnienie będzie możliwe przy opisie krzywych oceny. Z punktu widzenia interpretacji możemy wyobrazić sobie sytuację, że interesują nas negatywne oceny warunków zatrudnienia, gdyż właśnie takie warunki chcemy poprawić. 2
Praktyczne wykorzystanie macierzy trafności wydaje się najsensowniejsze przy skorygowaniu jej o macierz zysków i strat odpowiadających odpowiednio trafnym i błędnym klasyfikacjom instancji. W programie Weka można to uwzględnić w module Cost/Benefit analysis. Najbardziej syntetyczny parametr oceny modelu stanowi statystyka Kappa (1.7), którą interpretujemy jako część trafności klasyfikacji naszego modelu, o którą przewyższa on trafność klasyfikacji modelu losowego. Zmienność statystyki Kappa mieści się w przedziale <0,1>, gdzie 0 oznacza model losowy a 1 idealny klasyfikator. Przyjmując oznaczenie T dla liczby instancji zbioru testowego, A k dla dokładności klasyfikatora (1.2) i analogicznie A l dla dokładności klasyfikatora losowego otrzymujemy: Uzyskany wynik dla naszego klasyfikatora oceny warunków zatrudnienia należy uznać za wysoki, a nasz model za efektywny. Oczywiście, pamiętajmy o uproszczeniu polegającym na użyciu zbioru treningowego jako zbioru testowego. W programie Weka znajdziemy 4 miary oceny wartości predykcyjnych modeli. Zwykle wykorzystywane są do oceny prognoz zmiennych numerycznych, więc opiszemy je pobieżnie. Dla zastosowania tych miar musimy przyjąć, że zmienną użytą do klasyfikacji reprezentuje zmienna binarna o wartościach: klasa P = 1, klasa N = 0. Przyjmujemy ponadto oznaczenia: p ϵ <0,1> to prognozowana wartość, k = {P = bad = 1;N = good = 0} to aktualna wartość, i = 1,2,,T, gdzie T to liczba instancji zbioru testowego, Korzystając z poniższych wzorów uzyskamy wyniki, które dla naszego modelu podajemy za programem Weka: 6) średni błąd absolutny (ang. Mean absolute error): 7) pierwiastek średniego błędu kwadratowego (ang. Root mean squared error): 3
8) względny błąd absolutny (ang. Relative absolute error): 9) pierwiastek względnego błędu kwadratowego (ang. Root relative squared error): Miary (1.8) i (1.9) pokazują średnie odchylenie wartości prognozowanych od rzeczywistych wartości zbioru testowego. RMSE nadaje większą wagę odchyleniom większym co do wartości bezwzględnej w stosunku do MAE. Gdy prognozowaną zmienną jest niebinarna zmienna numeryczna miary te zachowują miano zmiennej i ich interpretacja jako błędu predykcji jest oczywista. W naszym wypadku, gdzie wartość prognozowanej klasy P wynosi 1, a prognoza klasy N jest po prostu zdarzeniem przeciwnym do prognozy klasy P, warto uwzględnić przy interpretacji próg odcięcia (ang. threshold), który jest taką wartością prognozowanej zmiennej p = p*, że. Dla naszego modelu próg odcięcia wynosi 0,557, czyli obliczone średnie błędy nie wydają się duże w tym sensie, iż nie są wrażliwe na niewielkie zmiany p *. Względne miary (1.10) i (1.11) pokazują odchylenie wartości prognozowanych od rzeczywistych wartości zbioru testowego jako część zmienności zbioru testowego. RRSE nadaje większe wagi wyższym odchyleniom w stosunku do RAE. Interpretacja dla naszego modelu wydaje się tu prostsza niż poprzednio. Załóżmy, że zróżnicowanie zbioru testowego (entropia zawartej w nim informacji) jest miarą ryzyka błędu losowej klasyfikacji instancji. Wtedy, względne błędy predykcji możemy interpretować jako część losowego ryzyka, którego nie unikniemy przy zastosowaniu naszego modelu. Uzyskane wartości RRSE około 60% i RAE około 40% wskazują, że nasz model redukuje znacząco ryzyko losowego błędu. Zaprezentowane powyżej parametry oceny modeli klasyfikacyjnych należy wykorzystywać w zależności od oczekiwań użytkowników modeli, czyli od najistotniejszych z ich punktu widzenia aspektów klasyfikacji. Z pewnością dla modeli klasyfikacyjnych bardziej przydatne są wzory (1.1) (1.7) niż pozostałe. Pewne sugestie, co do dziedzin, w których stosujemy poszczególne z nich podajemy poniżej przy opisie krzywych modeli. 4
2. Krzywe oceny Krzywe oceny modeli są narzędziem służącym do porównań jakości różnych modeli oraz rozpatrywania różnych scenariuszy wykorzystania poszczególnych klasyfikatorów. Krzywe te wykorzystują wcześniej opisane miary bazujące na tabeli trafności. W pierwszej kolejności scharakteryzujemy same krzywe. W tym celu skorzystamy z dodatkowego zbioru testowego danych, którego instancje sklasyfikowano według pewnego hipotetycznego klasyfikatora zmiennej binarnej. Zachowujemy dotychczasową konwencję, że interesująca nas klasa to P = 1, a także wcześniejsze oznaczenia. Zbiór wraz z obliczeniami do zbudowania wykresów krzywych zawiera plik Ocena modelu.xls. W celu zrozumienia idei leżącej u podstawy krzywych oceny modelu przypomnijmy twierdzenie Bayesa. Podajemy je w wersji dla współzależnych zdarzeń opisujących interesującą nas sytuację. Przyjmujemy T = T 1 + T 2 oraz j j, a także liczbę 1 jako miarę zdarzenia sprzyjającego i oznaczmy zdarzenia jako: A j zdarzenie polegające na przynależności instancji do klasy P = 1, zatem A j zdarzenie przeciwne do A j polegające na przynależności instancji do klasy N = 0, zatem B i zdarzenie polegające na poprawnym sklasyfikowaniu instancji jako P przez wybrany klasyfikator, zatem (A j B i ) zdarzenie polegające na przynależności instancji do klasy P pod warunkiem, że nasz klasyfikator sklasyfikował ją poprawnie jako P, zatem zdarzenie polegające na poprawnym sklasyfikowaniu instancji, pod warunkiem jej klasyfikacji jako P przez wybrany klasyfikator, zatem 5
) zdarzenie polegające na poprawnym sklasyfikowaniu instancji, pod warunkiem jej klasyfikacji jako N przez wybrany klasyfikator, zatem Upraszczamy zapis i uzyskujemy następującą zależność przy wykorzystaniu wzoru Bayesa: Oznacza to, że prawdopodobieństwo poprawnej klasyfikacji instancji jako P przez nasz model to precyzja klasyfikatora, która jest pozytywnie zależna od TP rate oraz negatywnie od wielkości zbioru testowego, który będziemy nazywać zamiennie wielkością próby. Zależność (2.7) jest wykorzystywana do budowy krzywych oceny modelu. W celu wyrobienia sobie intuicji działania krzywych przypomnijmy w największym skucie i przy dużej ogólności ideę tworzenia i działania klasyfikatorów. Zbiór treningowy jest dzielony w sposób hierarchiczny na podzbiory przy wykorzystaniu informacji zawartej w zbiorze. Wybór testu tworzącego podział według wartości poszczególnych atrybutów spełnia kryterium uzyskania maksymalnej wartości informacyjnej uzyskanego podziału. Kolejność otrzymania poszczególnych podzbiorów pozwala na zdefiniowanie przy użyciu indukcji reguł decyzyjnych, które później stosujemy do podziału zbioru testowego i wyboru najefektywniejszego oraz ewaluacji uzyskanego klasyfikatora. Hierarchiczny podział sprawia, że do interesującej nas klasy P klasyfikowane są kolejno instancje ze zbiorów o najwyższej wartości informacyjnej, czyli o najwyższym prawdopodobieństwie uzyskania klasy P. Dla zmiennej binarnej odpowiada takiemu podziałowi zbór uporządkowany od najwyższej do najniższej wartości predykcji p, którą już użyliśmy przy opisie wzorów (1.8) (1.11) (tak uporządkowane dane zawiera arkusz Model w Ocena modelu.xls). Pozwala to obliczyć precyzję modelu według (1.4) lub (2.7) dla każdej wielkości zbioru testowego i otrzymać nierosnącą funkcję precyzji klasyfikatora względem wielkości próby. Oczywiście wraz ze spadkiem precyzji i wzrostem wielkości próby rośnie TP i TP rate, aż do osiągnięcia progu odcięcia. Ze względu na fakt, iż interesującą nas klasą jest P dalszy wzrost TP i TP rate 6
LIFT uzyskamy obniżając próg odciecia. Należy przy tym pamiętać, że zmniejszając próg odcięcia zmieniamy optymalne rozwiązania naszego modelu. Te właśnie zależności wraz z sukcesywnym obniżaniem progu odcięcia wykorzystywane są w konstrukcji krzywych oceny modelu. W programie Weka różne ich konfiguracje można uzyskać za pomocą modułów Visualize threshold curve lub Cost/Benefit analisys. Na podstawie precyzji modelu możemy skonstruować krzywą Lift, którą prezentujemy na wykresie 1. W celu porównywalności krzywej z krzywymi innych modeli zmienna lift odnosi precyzję klasyfikatora do precyzji danych wyjściowych zbioru testowego, klasyfikując go jako próbę losową: Wykres 1: Hipotetyczna krzywa Lift Lift 2,2 2,13 2 1,8 1,6 1,52 1,4 1,2 1 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% Wielkość próby Kolory krzywych są standaryzowane i oznaczają odpowiednio: czerwony krzywa dla modelu losowego (ang. random), niebieski krzywa dla ocenianego modelu, zielony krzywa dla modelu idealnego (ang. wizard). 7
TP rate, Recall Krzywe niebieskie bliższe krzywej zielonej i dalsze od krzywej czerwonej oznaczają poprawę jakości modelu mierzonego w tym wypadku precyzją. Interpretacja wykresu jest dość oczywista. Ograniczając zbiór testowy do instancji zawierających pewniejszą informację z punktu widzenia interesującej nas klasy P uzyskujemy wyższą precyzję. Zaznaczony punkt, gdzie oceniany model ma o 1,52 wyższą precyzję niż model losowy, wskazuje wielkość próby, przy której różnica TP naszego modelu i modelu losowego jest najwyższa i wynosi 40 (por. wykres 3). Druga popularna krzywa oceny modelu to Detektyw (ang. detected), która wskazuje zmienność względnego ujęcia TP w stosunku do wielkości próby. W zależności od dziedziny, której dotyczą dane wyjściowe TP rate określana jest czasami jako Recall. Podtrzymując dotychczasowe oznaczenia wykres krzywej Detektyw prezentujemy na wykresie 2. Wykres 2: Hipotetyczna krzywa Detektyw 100% Detektyw 90% 80% 77% 70% 60% 50% 51% 40% 30% 20% 10% 0% 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% Wielkość próby Wykres powyższy potwierdza rosnący charakter liczby sklasyfikowanych jako interesująca nas klasa P instancji. W zaznaczonym w analogicznym momencie punkcie maksymalna różnica procentowa TP ocenianego modelu w stosunku do modelu losowego wyniosła 26%, co w liczbach bezwzględnych daje 40. 8
TP Krzywe Lift i Detektyw uwzględniają po jednym parametrze oceny modelu, wiec musimy mieć wyraźne wskazanie na wybór jednego z nich. Podobnie jak w wypadku oceny klasyfikatorów na podstawie macierzy trafności właściwe jest uwzględnienie w analizie kosztów i korzyści, co rozwiązuje często problem wyboru kryterium oceny. Podstawowym atutem obu krzywych jest wykorzystanie doboru wielkości próby do poprawy jakości modelu bez odwoływania się do informacji spoza niego samego. Obydwie krzywe przedstawiane są czasami jako zależność TP od wielkości próby (por. wykres 3). Czasami poprawia to własności interpretacyjne w konkretnej sytuacji: widzimy dokładnie jaką cześć uporządkowanego zbioru testowego należy wybrać, aby osiągnąć określoną liczbę TP (oczywiście obliczenie tego z Detektywa nie powinno być problemem). Krzywe względnych wielkości umożliwiają z kolei unikanie błędów przy porównaniu różnych modeli. Należy pamiętać, że porównywanie modeli zbudowanych na różnych zbiorach testowych jest co do zasady niewłaściwe. Wykres 3: Hipotetyczna krzywa TP TP/próba 160 140 152 120 117 100 80 77 60 40 20 0 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% Wielkość próby Dobrym przykładem zastosowania krzywych Lift i Detektyw do rozpatrywania różnych scenariuszy są mailingowe kampanie reklamowe. TP oznacza w nich oczekiwaną ilość odpowiedzi przy wysyłce reklamy do określonego zbioru odbiorców, a precyzja 9
TP rate oczekiwany udział odpowiedzi w stosunku do wielkości kampanii. Przedstawione powyżej krzywe są niekiedy określane jako krzywe wzrostu. Krzywą oceny modelu, która uwzględnia poza konieczność kompromisu pomiędzy trafnymi klasyfikacjami instancji jako interesującej nas klasy P a popełnianymi przy tym błędami jest krzywa ROC. Jej stosowalność pochodzi z problemów alarmowania o nietypowych sytuacjach, tzn. gdy musimy uwzględnić znaczne koszty fałszywych klasyfikacji. Krzywa ROC pokazuje zależność pomiędzy TP a FP w ujęciu względnym, czyli pomiędzy TP rate i FP rate. Zwróćmy uwagę, że wykres 4, na którym prezentujemy krzywą ROC, różni się od Detektywa tylko określeniem osi poziomej, a FP rate ma ten sam kierunek zmienności jaki ma uporządkowany zbiór testowy. Wykres 4: Hipotetyczna krzywa ROC 100% ROC 90% 80% 77% 70% 60% 50% 40% 30% 27% 20% 10% 0% 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% FP rate Punkt, zaznaczony na wykresie, odpowiada temu samemu momentowi, co punkty na poprzednich wykresach i jest to nadal maksymalna różnica między ocenianym modelem a modelem losowym. Widzimy, że teraz pozytywny efekt jest jeszcze mocniejszy, porównując na przykład krzywą ROC z krzywą Detektyw w tym punkcie. Relacja pomiędzy względną trafnością TP rate i względnym błędem FP rate ocenianego klasyfikatora w tym punkcie pozwala na przypisanie mu dobrej jakości. 10
Precision Stwierdziliśmy wcześniej już przeciwny kierunek monotoniczności precyzji modelu oraz TP rate, czyli także Recall. Określenie Recall jest często stosowane w problemach wyszukiwania informacji (np. przeglądarki internetowe) i oznacza liczbę właściwych odpowiedzi na zadane pytanie w stosunku do wszystkich właściwych odpowiedzi. Wtedy precyzja oznacza udział właściwych odpowiedzi w liczbie wszystkich wyszukanych odpowiedzi. Do wyboru takiej wielkości próby (proporcjonalna do Recall), która mogła by wydawać się najsensowniejsza z punktu widzenia kompromisu pomiędzy obydwoma parametrami stosujemy krzywą Recall/Precision. Na wykresie 5 prezentujemy ją w wersji odwróconej Precision/Recall, co wydaje się czytelniejsze. Wykres 5: Hipotetyczna krzywa Precision/Recall 1,00 1,00 Precision / Recall 0,95 0,90 0,85 0,88 0,84 0,80 0,77 0,75 0,70 0,65 0,60 0,75 0,75 0,73 0,71 0,68 0,61 0,55 0,50 0,47 0,45 0% 10% 20% 30% 40% 50% 60% 70% 80% 90% 100% Recall, TP rate Ten wykres nie zawiera krzywych random i wizard. Podawany jest często w powyższej wersji, tj. z zaznaczonymi decylami Recall. Widać wyraźnie, że przestrzeń pomiędzy 30-tym a 80-tym decylem Recall wiąże się z niznacznym spadkiem precyzji z 0,77 do 0,68. Sensowny wydaje się więc wybór punktu z przedziału pomiędzy 70-tym a 90-tym decylem Recall. Oczywiście decydent znajdujący się w konkretnej sytuacji i znający specyfikę problemu powiedziałby precyzyjniej, co byłoby najwłaściwsze. Ponownie wracamy do uwagi, że najwłaściwszym rozwiązaniem byłoby zastosowanie analizy korzyści i strat. 11
LIFT Krzywe oceny modelu mogą być również zastosowane do porównania różnych klasyfikatorów zastosowanych do tego samego zbioru testowego. Pokazujemy ten temat skrótowo, gdyż wydaje się prosty i oczywisty. Wykresy 6,7,8 pokazują odpowiednio krzywą Lift, Detektyw i ROC dla wcześniej prezentowanego modelu opartego na zbiorze Labor. Obok niebieskich krzywych dla naszego modelu prezentujemy kolorem żółtym krzywe dla pewnego hipotetycznego modelu. Krzywe żółte leżą poniżej krzywej niebieskiej, co oznacza że klasyfikator z naszego modelu jest jakościowo lepszy ze względu na wszystkie istotne parametry oceny. Oczywiście sytuacja mogłaby ulec zmianie podczas analizy korzyści i strat, choć ewentualność taka jest mało prawdopodobna, gdy wszystkie parametry i krzywe oceny są lepsze dla jednego z porównywanych modeli. Podany tu przykład jest dużym uproszczeniem, gdyż w realnych sytuacjach, krzywe ocen często się przecinają wzajemnie. W takiej sytuacji możemy zdecydować, który z klasyfikatorów jest lepszy dla określonych liczebności uporządkowanego zbioru testowego. Wykres 6: Krzywa Lift dla Labor 0; 2,47 0,26; 2,47 2,4 0; 2,31 0,23; 2,31 2,2 0,32; 2,17 0,44; 2,17 2 1,8 0,46; 1,73 1,6 1,4 1,2 1 0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1 Wielkość próby % 1; 1 12
TP rate TP rate, Recall Wykres 7: Krzywa Detektyw dla Labor 1 0,9 Detektyw 0,44; 0,95 1; 1 0,8 0,7 0,6 0,5 0,26; 0,65 0,23; 0,53 0,32; 0,68 0,46; 0,79 0,4 0,3 0,2 0,1 0 0; 0 0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1 Wielkość próby % Wykres 7: Krzywa ROC dla Labor 1 0,16; 0,95 ROC 1; 1 0,9 0,8 0,7 0,6 0,5 0,05; 0,65 0,13; 0,68 0,08; 0,53 0,29; 0,79 0,4 0,3 0,2 0,1 0 0; 0 0 0,1 0,2 0,3 0,4 0,5 0,6 0,7 0,8 0,9 1 FP rate 13