Dolování dat Vyhodnocení výsledků – 2. část Jan Górecki Název prezentace Název projektu Rozvoj vzdělávání na Slezské univerzitě v Opavě Registrační číslo projektu CZ.02.2.69/0.0./0.0/16_015/0002400 Logolink_OP_VVV_hor_barva_cz Obsah přednášky •Klasifikační úlohy •Hodnocení v podobě grafů •Regresní úlohy •Vizualizace •Volba nejvhodnějšího algoritmu Klasifikační úlohy •kritériem úspěšnost klasifikace (predikce) na datech • • Testování modelů •testování na celých trénovacích datech •náhodné rozdělení na část trénovací a testovací •křížová validace (cross-validation) •leave-one-out •bootstrap (náhodný výběr s opakováním pro učení) •testování na testovacích datech Cílem je zjistit v kolika případech došlo ke shodě resp. neshodě modelu (systému) s informací od učitele csvukrs Matice záměn (Confusion matrix) Naivní Bayes Skutečnost Predikce ano ano ano ano ne ano ano ano ano ano ne ne ano ano ano ano ne ne ano ano ne ne ano ano Celková správnost (Acc) nebere v potaz: 1.Různé ceny chyb FP a FN (lze řešit maticí cen) 2.Míru přesvědčení klasifikátoru o správnosti klasifikace Více k maticím cen za chyby (cost matrices) na https://www.kdnuggets.com/2019/11/machine-learning-what-why-how-weighting.html Hodnocení v podobě grafů •Většina klasifikačních metod dává k dispozici, kromě samotné klasifikace, i tzv. skóre (score) klasifikace, tz. jak moc je model „přesvědčen“ o tom, že daný objekt patří do dané třídy => lze taktéž využít pro další hodnocení modelů Skutečné zařazení našich 12ti bankovních klientů do třídy, klasifikace dle Naivního Bayese a skóre klasifikace pro jednotlivé třídy Vytváří se pro jednu zvolenou tzv. pozitivní třídu – všechny ostatní třídy se pak sloučí do tzv. negativní třídy Tabulka vytvořena na základě skriptu v sem11.txt Hodnocení v podobě grafů •Křivka navýšení (lift curve) • • • • • Vztah mezi počtem úspěšných klasifikací a váhou klasifikace Tečkovaná čára – výkon „modelu“, když pošleme dopisy náhodně Plná čára – výkon modelu, když pošleme dopisy adresátům s nejvyšším skoré (dle modelu) Tvorba křivky se neřídí predikovanou třídou! Řídí se pouze podle skóre a skutečné třídy! Vytváří se pro jednu zvolenou tzv. pozitivní třídu – všechny ostatní třídy se pak sloučí do tzv. negativní třídy http://www2.cs.uregina.ca/~dbd/cs831/notes/lift_chart/lift_chart.html http://mlwiki.org/index.php/Cumulative_Gain_Chart Hodnocení v podobě grafů •Křivka ROC • • • • • Vztah mezi TP a FP pro různá nastavení klasifikátoru Interpretace: Každý bod křivky říká, kolik falešně pozitivních objektů budu mít, pokud budu chtít mít určité procento skutečně pozitivních objektů (modrý bod - 10% falešných při 40% skutečných) roc TP% = Senzitivita (Úplnost), 1 – FP% = Specificita Tvorba křivky se neřídí predikovanou třídou! Řídí se pouze podle skóre a skutečné třídy! Interpre Vytvoření ROC křivky AUC = 0.9844 AUC = Area Under Curve (obsah plochy pod křivkou) Tvorba křivky se neřídí predikovanou třídou! Řídí se pouze podle skóre a skutečné třídy! ROC křivky pro více modelů Do „šedé zóny“ se lze dostat kombinací modelů, např. bagging nebo boosting Levý obrázek získán příkladem ze sem11.txt https://en.wikipedia.org/wiki/Bootstrap_aggregating https://en.wikipedia.org/wiki/Boosting_(machine_learning) Numerické predikce •pi predikovaná hodnota •si skutečná hodnota Obě pro i-tý příklad ze soubor n příkladů tvořících trénovací data Obrázek získán pomocí nnstart, fitting app a data Abalone Hodnocení pro numerický výstup – regresi Analogie k matici záměn. Obrázek získán pomocí nnstart, fitting app a data Abalone Vizualizace - pravidla IF nezamestnany(ne) THEN uver(ano) grafpravidla2 Uvedený graf názorněji ukazuje, že platnost pravidla 5/6 je větší než relativní četnost třídy úvěr(ano) v datech (ta je rovna 8/12), a že tedy toto pravidlo dobře charakterizuje bonitní klienty. csvukrs Vizualizace – Rozhodovací stromy Přetrénovaný klasifikační strom Optimalizovaný klasifikační strom Obrázky ze sem10.txt Vizualizace – Shlukování Dendrogram pro Fisher Iris data Obrázek získán ze sem3.txt Vizualizace – Rozhodovací povrchy Jen pro dvou- či maximálně tří-rozměrná numerická data! csvukrs Volba nejvhodnějšího algoritmu • •charakteristiky algoritmů vs. charakteristiky dat –vyjadřovací síla, –schopnost práce s numerickými atributy, –schopnost práce se zašuměnými a chybějícími daty, –schopnost práce s maticí cen, –předpoklad nezávislosti mezi atributy, –ostrá vs. neostrá klasifikace No Free Lunch Theorem: „Neexistuje metoda, která by byla nejlepší na libovolných datech“ https://en.wikipedia.org/wiki/No_free_lunch_theorem Děkuji za pozornost Některé snímky převzaty od: prof. Ing. Petr Berka, CSc. berka@vse.cz