© Institut biostatistiky a analýz Pokročilé metody analýzy dat v neurovědách RNDr. Eva Koriťáková, Ph.D. doc. RNDr. Ladislav Dušek, Dr. Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Blok 8 Klasifikace dat II 2 Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Osnova 1. Klasifikace pomocí hranic – metoda podpůrných vektorů (SVM) 2. Další metody klasifikace 3. Hodnocení úspěšnosti klasifikace a srovnání klasifikátorů 3 Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Klasifikace pomocí hranic – metoda podpůrných vektorů (SVM) 4 Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Typy klasifikátorů – podle principu klasifikace 5 • klasifikace pomocí diskriminačních funkcí: – diskriminační funkce určují míru příslušnosti k dané klasifikační třídě – pro danou třídu má daná diskriminační funkce nejvyšší hodnotu • klasifikace pomocí min. vzdálenosti od etalonů klasif. tříd: – etalon = reprezentativní objekt(y) klasifikační třídy – počet etalonů klasif. třídy různý – od jednoho vzorku (např. centroidu) po úplný výčet všech objektů dané třídy (např. u klasif. pomocí metody průměrné vazby) • klasifikace pomocí hranic v obrazovém prostoru: – stanovení hranic (hraničních ploch) oddělujících klasifikační třídy x1 x2 ? x1 x2 ? 0 1 2 3 4 5 6 7 4 6 8 10 12 14 0 0.05 x1x2 x2 x1 Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách 6 Motivace x1 x2 Hranice je nadplocha o rozměru o jedna menší než je rozměr prostoru • ve 2-rozměrném prostoru je hranicí křivka (v lineárním případě přímka) • v 3-rozměrném prostoru plocha (v lineárním případě rovina) Hranice je tedy dána rovnicí: h 𝐱 = 𝐰 𝑇 𝐱 + w0 = 0 Výpočet hranice různými metodami (např. Fisherova LDA, SVM apod. – viz dále) 2-rozměrný prostor 3-rozměrný prostor x1 x2 x3 Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách 7 • použití pro lineární klasifikaci • princip: transformace do jednorozměrného prostoru tak, aby se třídy od sebe maximálně oddělily (maximalizace vzdálenosti skupin a minimalizace variability uvnitř skupin Fisherova lineární diskriminace (FLDA) projekce 1 projekce2 x1 x2 pacienti kontroly centroid pacientů centroid kontrol • předpoklad: vícerozměrné normální rozdělení u jednotlivých skupin Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Metoda podpůrných vektorů (SVM) 8 Princip: Proložení klasifikační hranice tak, aby byla v co největší vzdálenosti od subjektů z obou tříd. pacienti kontroly x2 x1 hranice 1 hranice 2 Anglicky: Support Vector Machines Nevýhody: - vyžaduje stanovení parametrů (např. C) a případně i typu jádra Výhody: + nemá předpoklady o normálním rozdělení dat + lze využít pro lineární i pro nelineární klasifikaci Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách 9 Varianty SVM dle typu vstupních dat: x1 x2 a) x1 x2 b) x1 x2 c) a) lineární verze metody podpůrných vektorů pro lineárně separabilní třídy (anglicky maximal margin classifier) b) lineární verze metody podpůrných vektorů pro lineárně neseparabilní třídy (anglicky support vector classifier) c) nelineární verze metody podpůrných vektorů (anglicky support vector machine) Metoda podpůrných vektorů (SVM) – varianty Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Metoda podpůrných vektorů (SVM) – princip 10 pacienti kontroly x2 x1 hranice: h 𝐱 = 𝐰 𝑇 𝐱 + w0 = 0 • proložení klasifikační hranice tak, aby byla v co největší vzdálenosti od subjektů z obou tříd → tzn. aby byl okolo hranice co nejširší pruh bez bodů (tzv. toleranční pásmo = margin) • na popis hranice stačí pouze nejbližší body, kterých je obvykle málo a nazývají se podpůrné vektory (support vectors) Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách 11 Lineární SVM – lineárně separabilní třídy • Pro všechny body z trénovací množiny platí: 𝐰T 𝐱 + 𝑤0 ≥ 1 pro všechna x z 𝜔 𝐷, 𝐰T 𝐱 + 𝑤0 ≤ −1 pro všechna x z 𝜔 𝐻, • což můžeme stručněji zapsat jako 𝛿 𝑥 𝑘 𝐰T 𝐱 𝑘 + 𝑤0 ≥ 1, pro k=1, …, N, • kde 𝛿 𝑥 𝑘 = 1 pro 𝐱 𝑘 ze třídy 𝜔 𝐷 a 𝛿 𝑥 𝑘 = -1 pro 𝐱 𝑘 ze třídy 𝜔 𝐻 • hledáme takové hodnoty 𝐰 a 𝑤0, aby byla celková šířka tolerančního pásma 1 𝐰 + 1 𝐰 = 2 𝐰 co největší • hledat maximum funkce 2 𝐰 je to stejné, jako hledat minimum funkce 𝐰 2 a toto minimum se nezmění, když kladnou hodnotu v čitateli umocníme na druhou (což nám zjednoduší výpočty), takže dostáváme následující kriteriální funkci, jejíž hodnotu se snažíme minimalizovat: J 𝐰, 𝑤0 = 𝐰 2 2 → řešení pomocí metody Lagrangeova součinitele Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Lineární SVM – vliv odlehlých hodnot 12 x1 x2 x1 x2 x1 x2 klasifikace v případě dat neobsahujících odlehlé hodnoty klasifikace v případě odlehlé hodnoty, která není podpůrným vektorem (poloha klasifikační hranice se nezmění) klasifikace v případě odlehlé hodnoty, která je podpůrným vektorem (poloha hranice se změní) → lepší použít lineární SVM pro lineárně neseparabilní třídy, kterou tato odlehlá hodnota téměř neovlivní Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách 13 Lineární SVM – lineárně neseparabilní třídy • zavedeme relaxační proměnné 𝜉 𝑘 ≥ 0 vyjadřující, jak moc každý bod porušuje podmínku 𝛿 𝑥 𝑘 𝐰T 𝐱 𝑘 + 𝑤0 ≥ 1 • 3 situace: • podmínky jsou pak ve tvaru: 𝛿 𝑥 𝑘 𝐰T 𝐱 𝑘 + 𝑤0 ≥ 1 − 𝜉 𝑘 𝜉 𝑘 = 0 0 < 𝜉 𝑘 ≤ 1 𝜉 𝑘 > 1 𝜉 𝑘 = 0 0 < 𝜉 𝑘 ≤ 1 𝜉 𝑘 > 1 1. objekt leží vně pásma a je správně klasifikován: 𝜉 𝑘 = 0 2. objekt leží uvnitř pásma a je správně klasifikován (body s čtverečky): 0 < 𝜉 𝑘 ≤ 1 3. objekt leží na opačné straně hranice a je chybně klasifikován (body s hvězdičkami): 𝜉 𝑘 > 1 x1 x2 Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách 14 Lineární SVM – lineárně neseparabilní třídy • když chceme najít hranici poskytující co nejrobustnější klasifikaci, musíme se snažit: • řešíme opět pomocí metody Lagrangeova součinitele • to můžeme vyjádřit jako minimalizaci kriteriální funkce: • kde 𝐶 vyjadřuje poměr vlivu obou členů kriteriální funkce: – pro nízké hodnoty C bude toleranční pásmo širší a počet trénovaních subjektů v tolerančním pásmu a počet chybně klasifikovaných trénovacích subjektů bude vyšší – pro vysoké hodnoty C bude toleranční pásmo užší, ale počet trénovaních subjektů v tolerančním pásmu a počet chybně klasifikovaných trénovacích subjektů bude nižší – maximalizovat šířku tolerančního pásma – minimalizovat počet subjektů z trénovací množiny, které leží v tolerančním pásmu nebo jsou dokonce špatně klasifikovány (tj. těch, pro které 𝜉 𝑘 > 0) J 𝐰, 𝑤0, 𝛏 = 𝐰 2 2 + 𝐶 ෍ 𝑘=1 𝑁 𝜉 𝑘 Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách SVM – vliv parametru C („box constraint“) 15 pacienti kontroly podpůrné vektory x1 x2 pacienti kontroly podpůrné vektory x1 x2 pacienti kontroly podpůrné vektory x1 x2 C = 0.1 C = 1 C = 10 • pro nízké hodnoty C – toleranční pásmo širší, ale počet subjektů v tolerančním pásmu a počet chybně klasifikovaných trénovacích subjektů vyšší • pro vysoké hodnoty C – toleranční pásmo užší, ale počet subjektů v tolerančním pásmu a počet chybně klasifikovaných trénovacích subjektů nižší • zpravidla nevíme, jaká hodnota parametru C pro data nejvhodnější → klasifikace s několika hodnotami C a výběr toho výsledku, který je nejlepší (křížová validace) Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách 16 Příklad Příklad: Bylo provedeno měření objemu hipokampu a mozkových komor (v cm3) u 3 pacientů se schizofrenií a 3 kontrol: 𝐗 𝐷 = 2 12 4 10 3 8 , 𝐗 𝐻 = 5 7 3 9 4 5 . Určete, zda testovací subjekt 𝐱0 = 3,5 9 patří do skupiny pacientů či kontrolních subjektů pomocí metody podpůrných vektorů. pacienti kontroly testovací subjekt 1 2 3 4 5 6 4 5 6 7 8 9 10 11 12 13 Objem hipokampu Objemmozkovýchkomor Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Příklad – srovnání výsledků pro 𝑪 = 𝟏 a 𝑪 = 𝟏𝟎 17 𝑪 = 𝟏: 𝑪 = 𝟏𝟎: Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách • princip: zobrazíme původní p-rozměrný obrazový prostor nelineární transformací pomocí jader (např. polynomiální nebo radiální bázová funkce) do nového m-rozměrného prostoru tak, aby v novém prostoru byly klasifikační třídy lineárně separabilní 18 Nelineární SVM Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách 19 Nelineární SVM – ukázka Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách 20 Anglicky: kernel Nelineární SVM – jádro Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Nelineární SVM • transformace do nového prostoru může proběhnout navýšením počtu proměnných (např. přidáním kvadratických forem původních proměnných, tedy soubor pak bude obsahovat proměnné 𝐱1, x1 2 , 𝐱2, x2 2 , … , 𝐱 𝑝, x 𝑝 2) 21 • tento přístup však výpočetně náročný → použití jader (kernels) • u lineárního SVM pro lineárně separabilní i neseparabilní třídy lze Lagrangeovu funkci přepsat do podoby 𝐿 𝐰, 𝑤0, 𝛌 = ෍ 𝑘=1 𝑁 λ 𝑘 − 1 2 ෍ 𝑖,𝑗 λ𝑖 λ𝑗 𝛿 𝑥 𝑖 𝛿 𝑥 𝑗 𝐱 𝑖 𝑇 𝐱𝑗 • kde si skalární součin 𝐱 𝑖 𝑇 𝐱𝑗 můžeme zapsat obecně jako 𝐾 𝐱 𝑖, 𝐱𝑗 , kde 𝐾 je nějaká funkce, kterou nazveme jádro • typy jader: – lineární jádro: 𝐾 𝐱 𝑖, 𝐱𝑗 = 𝐱 𝑖 𝑇 𝐱𝑗 – polynomiální jádro stupně d: 𝐾 𝐱 𝑖, 𝐱𝑗 = 1 + 𝐱 𝑖 𝑇 𝐱𝑗 𝑑 = 1 + σ𝑙=1 𝑝 x𝑖𝑙x𝑗𝑙 𝑑 – radiální bázové jádro: 𝐾 𝐱 𝑖, 𝐱𝑗 = exp −𝛾 σ𝑙=1 𝑝 x𝑖𝑙 − x𝑗𝑙 2 – atd. → lineární SVM nelineární SVM Koriťáková: Analýza a klasifikace dat Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Další metody klasifikace 22 Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Klasifikační (rozhodovací) stromy a lesy 23 Princip: Postupné rozdělování datasetu do skupin podle hodnot jednotlivých proměnných. Zmenšený hipokampus Zmenšená amygdalaZvětšené komory Pacient Kontrola KontrolaPacient Ano Ne Ano Ne Ano Ne Klasifikační lesy – použití více klasifikačních stromů ke klasifikaci, každý strom zpravidla používá jen část původních dat (část subjektů nebo část proměnných). Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Neuronové sítě 24 Princip: Postupné učení neuronové sítě (tzn. postupné nastavování vah u jednotlivých neuronů), aby byla chyba klasifikace trénovací množiny minimální. Umožňuje nelineární klasifikaci. Vstupní vrstva 1. skrytá vrstva Výstupní vrstva 2. skrytá vrstva Více typů neuronových sítí – např.: • Vícevrstvé neuronové sítě typu perceptron • RBF (Radial Basis Function) sítě • LVQ (Learing Vector Quantization) sítě Nelineární klasifikace pacienti kontroly x1 x2 Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Strukturální (syntaktické) klasifikátory 25 Princip: Vstupní data popsána relačními strukturami. Lze vytvořit i kombinované klasifikátory – jednotlivá primitiva doplněna příznakovým popisem. Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Poznámka • Nelze dopředu říci, která klasifikační metoda bude pro daná data fungovat nejlépe → potřebné vyzkoušet více klasifikačních metod a zvolit nejvhodnější pro daná data. • U velkých datových souborů je obtížné dopředu určit, zda je možné data oddělit lineárně nebo ne → potřebné vyzkoušet lineární i nelineární klasifikační metody. 26 Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Hodnocení úspěšnosti klasifikace a srovnání klasifikátorů 27 Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Hodnocení úspěšnosti klasifikace - úvod 28 Subjekt voxel 1 voxel 2 voxel 3 ... Skutečnost (správná třída) 1 pacient 2 pacient 3 pacient 4 kontrola 5 kontrola 6 kontrola pacient pacient kontrola kontrola pacient kontrola Vstupní data Výsledek klasifikace Jak dobrá je klasifikační metoda, kterou jsme použili? Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Hodnocení úspěšnosti klasifikace 29 Skutečnost (správná třída) Pacienti (+) Kontroly (-) Výsledek klasifikace Pacienti (+) TP FP Kontroly (-) FN TN Matice záměn (konfusní matice, confusion matrix): TP („true positive“) – kolik výsledků bylo skutečně pozitivních (tzn. kolik pacientů bylo správně diagnostikováno jako pacienti). FP („false positive“) – kolik výsledků bylo falešně pozitivních (tzn. kolik zdravých lidí bylo chybně diagnostikováno jako pacienti). FN („false negative“) – kolik výsledků bylo falešně negativních (tzn. kolik pacientů bylo chybně diagnostikováno jako zdraví). TN („true negative“) – kolik výsledků bylo skutečně negativních (tzn. kolik zdravých lidí bylo správně diagnostikováno jako zdraví). Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Hodnocení úspěšnosti klasifikace 30 Skutečnost (správná třída) Pacienti (+) Kontroly (-) Výsledek klasifikace Pacienti (+) TP FP Kontroly (-) FN TN TP+FN FP+TN Senzitivita (sensitivity) Specificita (specificity) TP / (TP+FN) TN / (FP+TN) Celková správnost (accuracy): (TP+TN)/(TP+FP+FN+TN) Chyba (error): (FP+FN)/(TP+FP+FN+TN) Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Příklad – klasifikace pomocí FLDA 31 Subjekt Skuteč- nost Výsledek LDA 1 P P 2 P P 3 P K 4 K K 5 K P 6 K K Výsledek klasifikace Skutečnost (správná třída) Pacienti (+) Kontroly (-) Pacienti (+) TP=2 FP=1 Kontroly (-) FN=1 TN=2 Senzitivita: TP/(TP+FN)=2/(2+1)=0,67 Specificita: TN/(FP+TN)=2/(1+2)=0,67 Správnost: (TP+TN)/(TP+FP+FN+TN)=(2+2)/(2+1+1+2)=0,67 Chyba: (FP+FN)/(TP+FP+FN+TN)=(1+1)/(2+1+1+2)=0,33 Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách                 N PP P N PP P AA A AA A ˆ1ˆ 96,1ˆ; ˆ1ˆ 96,1ˆ Intervaly spolehlivosti pro celkovou správnost • celková správnost: 𝑇𝑃+𝑇𝑁 𝑇𝑃+𝐹𝑃+𝐹𝑁+𝑇𝑁 = 1 − 𝑁 𝑒𝑟𝑟𝑜𝑟 𝑁 32 • z toho plyne: ෠𝑃𝐴 = 1 − ෠𝑃𝐸 = 𝑁 𝑐𝑜𝑟 𝑁 (tedy 𝑁𝑐𝑜𝑟~𝐵𝑖(𝑁, 𝑃𝐴)) • za splnění předpokladů, že ෠𝑃𝐴 ∙ 𝑁 > 5, 1 − ෠𝑃𝐴 ∙ 𝑁 > 5 a 𝑁 > 30, lze spočítat 95% interval spolehlivosti pro správnost pomocí aproximace na normální rozdělení: Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Příklad – pokračování 33  00,1;29,0                 N PP P N PP P AA A AA A ˆ1ˆ 96,1ˆ; ˆ1ˆ 96,1ˆ               6 66,0166,0 96,166,0; 6 66,0166,0 96,166,0 IS pro správnost: Správnost: (TP+TN)/(TP+FP+FN+TN) = 0,67 Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Trénovací a testovací data 34 4. křížová validace (cross validation) ‐ k-násobná (k-fold) ‐ „odlož-jeden-mimo“ (leave-one-out, jackknife) 1. resubstituce 2. náhodný výběr s opakováním (bootstrap) 3. predikční testování externí validací (hold-out) Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách 1. resubstituce 35 • stejná trénovací a testovací množina • výhody: + jednoduché + rychlé • nevýhody: - příliš optimistické výsledky!!! Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách 2. náhodný výběr s opakováním (bootstrap) 36 • náhodně vybereme N subjektů s opakováním jako trénovací data (tzn. subjekty se v trénovací sadě mohou opakovat) a zbylé subjekty (ani jednou nevybrané) použijeme jako testovací data • pro rozumně velká data se vybere zhruba 63,2% subjektů pro učení a 36,8% subjektů pro testování • trénování a testování se provede jen jednou • výhody: + velká trénovací sada + rychlé • nevýhody: - data se v trénovací sadě opakují - výsledek vcelku závislý na výběru trénovacích dat Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách 3. predikční testování externí validací (hold-out) 37 • použití části dat (většinou dvou třetin) na trénování a zbytku dat (třetiny) na testování • výhody: + nezávislá trénovací a testovací sada • nevýhody: - méně dat pro trénování i testování - výsledek velmi závislý na výběru trénovacích dat trénovací data testovací data Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách 3. predikční testování externí validací (hold-out) – modifikace 1 38 • použití části dat (obvykle poloviny) pro trénování a zbytku (poloviny) pro testování a následné přehození testovací a trénovací sady → zprůměrování 2 výsledků klasifikace • výhody: + nezávislá trénovací a testovací sada • nevýhody: - při malých souborech může být polovina dat pro trénování příliš málo - výsledek velmi závislý na výběru trénovacích dat (i když trochu méně než předtím) trénovací data testovací data testovací data trénovací data Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách 3. predikční testování externí validací (hold-out) – modifikace 2 39 • r-krát náhodně rozdělíme soubor na trénovací a testovací data (většinou dvě třetiny pro trénování a třetinu pro testování) a r výsledků zprůměrujeme • výhody: + poměrně přesný odhad úspěšnosti klasifikace • nevýhody: - trénovací i testovací sady se překrývají - časově náročné trénovací data testovací data iterace 1 iterace 2 iterace 3 iterace 4 iterace r... Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách 40 • používán též název příčná validace • rozdělení souboru na k částí, 1 část použita na testování a zbylých k-1 částí na trénování → postup se opakuje (všechny části 1x použity pro testování) • speciálním případem je „odlož-jeden-mimo“ (leave-one-out) CV (pro k=N) • výhody: + testovací sady se nepřekrývají + poměrně přesný odhad úspěšnosti klasifikace • nevýhody: - časově náročné 4. k-násobná křížová validace (k-fold cross validation) testování trénování trénování trénování trénování např. pro k=5: iterace 1 iterace 2 iterace 3 iterace 4 iterace 5 trénování testování trénování trénování trénování trénování trénování testování trénování trénování trénování trénování trénování testování trénování trénování trénování trénování trénování testování Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách „odlož-jeden-mimo“ křížová validace • platí výhody a nevýhody zmíněné u k-násobné křížové validace se čtyřmi komentáři: ‐ časově nejnáročnější ze všech možných k ‐ velmi vhodná pro malé soubory dat ‐ na rozdíl od jakékoliv k-fold CV dostaneme vždy pouze jeden výsledek úspěšnosti (tzn. výsledek úspěšnosti nezávisí na tom, jak se jednotlivé subjekty „namíchají“ do jednotlivých skupin) ‐ v některých článcích se uvádí, že lehce nadhodnocuje úspěšnost → doporučuje se 10-násobná křížová validace 41 • anglický překlad: leave-one-out (nebo jackknife) • pro k=N (tzn. v každé z N iterací je jeden subjekt použit na testování a zbylých N-1 subjektů na trénování) Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Příklad - „odlož-jeden-mimo“ křížová validace 42 pacient kontrola kontrola kontrola pacient kontrola 1 2 3 4 5 6 iter. 1 iter. 2 iter. 3 iter. 4 iter. 5 iter. 6 1 2 3 4 5 6 1 2 3 4 5 6 1 2 3 4 5 6 1 2 3 4 5 6 1 2 3 4 5 6 Skutečnost: pacient pacient pacient kontrola kontrola kontrola Výsledek klasifikace Skutečnost pac. kont. pacient TP=1 FP=1 kontrola FN=2 TN=2 Iterace: Výsledek klasifikace: pacient kontrola kontrola kontrola pacient kontrola Senzitivita: 1/(1+2)=0,33 Specificita: 2/(1+2)=0,67 Správnost: (1+2)/(1+1+2+2)=0,50 Chyba: (1+2)/(1+1+2+2)=0,50 Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Upozornění !!! 43 Postup 1 je nesprávný, je potřebné rozdělit soubor na trénovací a testovací ještě před redukcí dat, jinak dostaneme nadhodnocené výsledky!!! Data Předzpra- cování Redukce Klasifikace Trénovací data Testovací data Naučení klasifikátoru Data Předzpra- cování Redukce Klasifikace Trénovací data Testovací data Naučení klasifikátoru Postup 1: Postup 2: Redukce Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Je klasifikace lepší než náhodná klasifikace? • permutační testování • jednovýběrový binomický test 44 Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Permutační testování • r-krát náhodně přeházíme identifikátory příslušnosti do skupin u subjektů a provedeme klasifikaci (se stejným nastavením jako při použití originálních dat) • p-hodnota se vypočte jako: Τ𝑛 𝑟, kde n je počet iterací, v nichž byla úspěšnost klasifikace (např. celková správnost) vyšší nebo rovna úspěšnosti klasifikace originálních dat (PA) • pozn. pokud histogram z r celkových správností získaných permutacemi neleží kolem 0,5, máme v algoritmu zřejmě někde chybu! 45 PA0,5 → Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Jednovýběrový binomický test • testujeme, zda se liší celková správnost (což je podíl správně zařazených subjektů) od správnosti získané náhodnou klasifikací • správnost u náhodné klasifikace: 𝑃𝐴0 = ൗ𝑁 𝑖 𝑁, kde 𝑁𝑖 je počet subjektů nejpočetnější skupiny • 𝑧 = 𝑃 𝐴−𝑃 𝐴0 Τ𝑃 𝐴0 1−𝑃 𝐴0 𝑁 • Pokud 𝑧 >1,96, zamítáme nulovou hypotézu o shodnosti správnosti naší klasifikace a správnosti náhodné klasifikace 46 Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Příklad – jednovýběrový binomický test 47 • 𝑧 = 𝑃 𝐴−𝑃 𝐴0 Τ𝑃 𝐴0 1−𝑃 𝐴0 𝑁 = 0,67−0,5 Τ0,5 1−0,5 6 = 0,83 • uvažujme např. výsledek klasifikace pacientů a kontrol pomocí LDA (pomocí resubstituce): 𝑃𝐴 = 0,67, 𝑁 = 6, 𝑃𝐴0 = ൗ𝑁 𝑖 𝑁 = 0,5 • protože 𝑧 <1,96, nezamítáme nulovou hypotézu o shodnosti správnosti naší klasifikace a správnosti náhodné klasifikace (tzn. neprokázali jsme, že by naše klasifikace byla lepší než náhodná klasifikace) • nezamítnutí nulové hypotézy vyplývá už i z vypočteného intervalu spolehlivosti (0,29 – 1,00), protože tento interval spolehlivosti obsahuje hodnotu 0,5 Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Srovnání úspěšnosti klasifikace • Srovnání 2 klasifikátorů • Srovnání 3 a více klasifikátorů 48 Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Srovnání 2 klasifikátorů 49 McNemarův test: Dvouvýběrový binomický test: Dvouvýb. binomický test předpokládá nezávislost (tzn. že každý klasifikátor byl testován na jiném testovacím souboru) → raději používat McNemarův test Klasifikátor 1 Klasifikátor 2 Správně (1) Chybně (0) Správně (1) 𝑁11 𝑁10 Chybně (0) 𝑁01 𝑁00 Celkem: Pokud χ2 > 3,841, zamítáme nulovou hypotézu H0 o shodnosti celkové správnosti klasifikace pomocí dvou klasifikátorů Pokud 𝑧 >1,96, zamítáme nulovou hypotézu H0 o shodnosti podílu správně klasifikovaných subjektů dvou klasifikátorů 𝑁11 + 𝑁10 + 𝑁01 + 𝑁00 = 𝑁𝑡𝑠 Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Příklad – srovnání 2 klasifikátorů 50 Lineární diskriminační analýza (LDA) Metoda 9 nejbližších sousedů (9-nn) Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Příklad – srovnání 2 klasifikátorů 51 Matice záměn: McNemarův test: Dvouvýb. binomický test: Klasifikátor 1: LDA Klasifikátor 2: 9-nn Správně (1) Chybně (0) Správně (1) 𝑁11 = 82 𝑁10 = 2 Chybně (0) 𝑁01 = 10 𝑁00 = 6 9-nnLDA správnost správnost Protože χ2 > 3,841, zamítáme H0. Protože 𝑧 < 1,96, nezamítáme H0. Shody u klasifikátorů: Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Srovnání 3 a více klasifikátorů 52 Cochranův Q test: F-test: Looney doporučuje F-test, protože je méně konzervativní. Testuje se, zda jsou statisticky významně odlišné správnosti klasifikátorů měřené na stejných testovacích datech – tzn. 𝐻0: 𝑝1 = 𝑝2 = ⋯ = 𝑝 𝐿 , kde 𝑝 𝐿 je správnost L-tého klasifikátoru. Poté je možno srovnávat správnosti klasifikátorů vždy po dvou, aby se zjistilo, které klasifikátory se od sebe liší. Pokud 𝑄 𝐶 > χ2 (𝐿 − 1), zamítáme H0. Pokud 𝐹𝑐𝑎𝑙 > 𝐹(𝐿 − 1, 𝐿 − 1 × 𝑁𝑡𝑠 − 1 ), zamítáme H0. Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Příklad – srovnání 3 a více klasifikátorů 53 Cochranův Q test: F-test: Matice záměn: 9-nnLDA Parzen Protože 𝑄 𝐶 < χ2 𝐿 − 1 = 5,991, nezamítáme H0. Protože 𝐹𝑐𝑎𝑙 > 𝐹 2; 198 = 3,09, zamítáme H0. správnost správnost správnost Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Hodnocení úspěšnosti klasifikace a srovnání klasifikátorů - shrnutí • výpočet úspěšnosti klasifikace (správnosti, chyby, senzitivity, specificity a přesnosti) pomocí matice záměn • výpočet intervalu spolehlivosti pro správnost a chybu • volba trénovacího a testovacího souboru: – resubstituce – náhodný výběr s opakováním (bootstrap) – predikční testování externí validací (hold-out) – křížová validace (cross validation): k-násobná, „odlož-jeden-mimo“ • srovnání úspěšnosti klasifikace s náhodnou klasifikací – permutační testování – jednovýběrový binomický test • srovnání úspěšnosti klasifikace 2 klasifikátorů: – McNemarův test – dvouvýběrový binomický test • srovnání úspěšnosti klasifikace 3 a více klasifikátorů: – Cochranův Q test – F-test 54 Koriťáková, Dušek: Pokročilé metody analýzy dat v neurovědách Poděkování Příprava výukových materiálů předmětu „DSAN02 Pokročilé metody analýzy dat v neurovědách“ byla finančně podporována prostředky projektu FRMU č. MUNI/FR/0260/2014 „Pokročilé metody analýzy dat v neurovědách jako nový předmět na LF MU“ 55