Analýza antropologických dat metodami výpocetn´ı inteligence Bc
Transkript
České vysoké učenı́ technické v Praze Fakulta elektrotechnická Diplomová práce Analýza antropologických dat metodami výpočetnı́ inteligence Bc. Jakub Novák Vedoucı́ práce: Ing. Kordı́k Pavel, Ph.D. Studijnı́ program: Elektrotechnika a informatika strukturovaný magisterský Obor: Informatika a výpočetnı́ technika květen 2008 ii Poděkovánı́ Chtěl bych moc poděkovat Ing. Pavlu Kordı́kovi, Ph.D. za jeho výborné vedenı́ mé práce. Jeho pozitivnı́ přı́stup a vstřı́cnost, se kterou přistupoval k mým dotazům a problémům. iii iv Prohlášenı́ Prohlašuji, že jsem svou diplomovou práci vypracoval samostatně a použil jsem pouze podklady uvedené v přiloženém seznamu. Nemám závažný důvod proti užitı́ tohoto školnı́ho dı́la ve smyslu §60 Zákona č. 121/2000 Sb., o právu autorském, o právech souvisejı́cı́ch s právem autorským a o změně některých zákonů (autorský zákon). V Praze dne 23.5.2008 ............................................................. v vi Abstract A computational intelligence methods are suitable instrument for work with the anthropological data which represents senescence indicators along with other inputs. Based on this information we try to predict the age of skeleton. But this is a very difficult process and obtain high-quality results is complicated. My goal in this diploma thesis is to find and valorize the best methods which can handle well the anthropological data and give us the best results. Abstrakt Metody výpočetnı́ inteligence jsou vhodným nástrojem pro práci s antropologickými daty, které představujı́ kosternı́ ohledánı́ spolu s některými dalšı́mi vstupy, ze kterých se snažı́me predikovat věk zesnulého. Proces to však nenı́ vůbec jednoduchý a dostat kvalitnı́ výsledky je poměrně komplikované. Proto si touto pracı́ kladu za cı́l nalézt a zhodnotit nejvhodnějšı́ metody, které by uměly dobře zpracovat daná antropologická data a podat co nejlepšı́ výsledek. vii viii Obsah Seznam obrázků xi Seznam tabulek xiii 1 Úvod 1 2 Metody pro analýzu antropologických dat 2.1 Zı́skávánı́ znalostı́ z dat . . . . . . . . . . . 2.2 Typy dolovacı́ch úloh . . . . . . . . . . . . . 2.2.1 Klasifikace a predikce . . . . . . . . 2.2.2 Shlukovánı́ . . . . . . . . . . . . . . 2.2.3 Analýza odlehlých objektů . . . . . 2.2.4 Analýza nalezených vzorů . . . . . . 2.3 Data . . . . . . . . . . . . . . . . . . . . . . 2.3.1 Antropologická data . . . . . . . . . 2.4 Prediktivnı́ metody . . . . . . . . . . . . . . 2.5 Klasifikačnı́ metody . . . . . . . . . . . . . 2.6 Shlukové metody . . . . . . . . . . . . . . . 3 Předzpracovánı́ dat - teoretická část 3.1 Čištěnı́ dat . . . . . . . . . . . . . . 3.1.1 Nekompletnı́ data . . . . . . 3.1.2 Zašumělá data . . . . . . . . 3.2 Integrace a transformace dat . . . . 3.3 Redukce dat . . . . . . . . . . . . . . 3.3.1 Početnı́ redukce . . . . . . . . 3.4 Dalšı́ možné metody předzpracovánı́ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2 2 2 2 2 2 3 3 4 8 12 . . . . . . . 16 16 16 17 17 18 20 21 4 Výsledky experimentů 4.1 Prediktivnı́ metody . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.1.1 GMDH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.1.2 GAME . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Klasifikačnı́ metody . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.1 LVQ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.2 Perceptron . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.3 RBF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3 Metody shlukové analýzy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3.1 SOM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4 Předzpracovacı́ metody . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4.1 Výsledky jednotlivých metod . . . . . . . . . . . . . . . . . . . . . . . . 4.4.2 Výsledky experimentů za použitı́ modulu pro automatické předzpracovánı́ dat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 22 22 23 23 24 25 27 30 30 33 34 5 Zhodnocenı́ výsledků 41 6 Závěr 45 7 Literatura 47 ix 38 A Seznam použitých zkratek 49 B Obsah přiloženého CD 51 x Seznam obrázků 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 2.10 2.11 2.12 2.13 Ukázka GMDH sı́tě jako černé skřı́ňky . . . . Struktura sı́tě GMDH . . . . . . . . . . . . . Ukončenı́ učenı́ sı́tě GMDH . . . . . . . . . . Přı́klad sı́tě GAME . . . . . . . . . . . . . . . Prostor 2D a hraničnı́ přı́mka . . . . . . . . . Model perceptronu jako neuronu . . . . . . . Struktura RBF sı́tě . . . . . . . . . . . . . . . Ukázka typických Radial Basis Function . . . Trénovaná RBF . . . . . . . . . . . . . . . . . Struktura neuronů Kohonenovy mapy . . . . SOM - možné struktury uspořádánı́ neuronů . SOM - přı́klad adaptace vah neuronu . . . . . U-matice pro sı́t’ 10 x 10 . . . . . . . . . . . . . . . . . . . . . . . . . 5 5 7 8 9 9 10 11 12 13 14 15 15 3.1 3.2 Přı́klad rozdělenı́ do shluků . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Metody výběru podmnožiny atributů . . . . . . . . . . . . . . . . . . . . . . . . 18 19 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 4.10 4.11 Výsledný GMDH model v KnowledgeMiner softwaru . . . . . . . . LVQ - celkový přehled úspěšnosti ohodnocenı́ . . . . . . . . . . . . Rozptyl úspěšnosti klasifikace pomocı́ automaticky generované sı́tě Rozptyl úspěšnosti klasifikace pomocı́ minimálnı́ sı́tě . . . . . . . . 2D prostor vstupnı́ch vektorů obsahujı́cı́ dva shluky . . . . . . . . . RBF - správně zařazené vzorky pro n=4 a σ = 0,775 . . . . . . . . SOM - vliv pohlavı́ na predikci . . . . . . . . . . . . . . . . . . . . SOM - rozdělenı́ podle národnosti . . . . . . . . . . . . . . . . . . . SOM - rozdělenı́ podle kontinentu . . . . . . . . . . . . . . . . . . . SOM - výsledné ”shluky” koster podle stářı́ . . . . . . . . . . . . . Ukázka programu GAME spolu s předzpracovacı́m dialogem . . . . . . . . . . . . . . . 22 25 27 28 29 30 31 31 32 33 34 5.1 5.2 5.3 Ukázka grafu trénovacı́ch dat pomocı́ 2D regrese . . . . . . . . . . . . . . . . . Rozptyl výsledných hodnot MAPD - vybrané PM metody . . . . . . . . . . . . Rozptyl výsledných hodnot MMVI . . . . . . . . . . . . . . . . . . . . . . . . . 43 44 45 xi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii Seznam tabulek 4.1 4.2 4.3 4.4 4.5 4.6 4.7 4.8 4.9 4.10 4.11 4.12 4.13 4.14 4.15 4.16 4.17 4.18 4.19 GMDH věková regrese . . . . . . . . . . . . . . . . . . . . . . . Výsledky GMDH a GAME . . . . . . . . . . . . . . . . . . . . Parametry sı́tě LVQ1 . . . . . . . . . . . . . . . . . . . . . . . . LVQ1 - procentuálnı́ úspěšnost klasifikace . . . . . . . . . . . . Parametry automaticky generované sı́tě . . . . . . . . . . . . . Parametry minimálnı́ sı́tě . . . . . . . . . . . . . . . . . . . . . Průměrná úspěšnost klasifikace na automaticky generované sı́ti Průměrná úspěšnost klasifikace na minimálnı́ sı́ti . . . . . . . . Zastoupenı́ ve věkových třı́dách . . . . . . . . . . . . . . . . . . Zastoupenı́ žen Evropanek . . . . . . . . . . . . . . . . . . . . . RBF - nejlepšı́ výsledky pro n=4 a σ = 0,775 . . . . . . . . . . Přepočı́tány výsledky GMDH a GAME . . . . . . . . . . . . . Výsledek předzpracovacı́ch metod - All units, 1N . . . . . . . . Výsledek předzpracovacı́ch metod - All units, ensemble (3N) . . Výsledek předzpracovacı́ch metod - linear, 1N . . . . . . . . . . Výsledek předzpracovacı́ch metod - linear, ensemble (3N) . . . Výsledky č.1 - modulu pro automatické předzpracovánı́ dat . . Průměrné hodnoty z tabulek 4.13 až 4.16 . . . . . . . . . . . . Výsledky č.2 - modulu pro automatické předzpracovánı́ dat . . . . . . . . . . . . . . . . . . . . . 23 23 24 25 26 26 26 27 28 29 29 35 36 36 36 37 39 40 40 5.1 5.2 5.3 Porovnánı́ výsledků klasifikačnı́ch metod - tučně nejlepšı́ výsledek . . . . . . . . Vybrané výsledky algoritmů GAME a GMDH - chyba RMS . . . . . . . . . . . Vybrané nejlepšı́ předzpracovacı́ metody . . . . . . . . . . . . . . . . . . . . . . 41 42 42 xiii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . xiv KAPITOLA 1. ÚVOD 1 1 Úvod V této diplomové práci se zaměřuji na různé metody výpočetnı́ inteligence k nasazenı́ pro dolovánı́ znalostı́ z dat (tzv. data mining). Zkoumám jejich využitı́, kvalitu výsledných dat, které nám mohou poskytnout a jejich nasazenı́ na reálných datech. Pro experimenty se všemi metodami využı́vám antropologická data. Z nich se snažı́m zı́skat co nejlepšı́ hodnoty za použitı́ různých metod neuronových sı́tı́. Experimentuji s různými předzpracovacı́mi metodami, tak aby nám poskytly co nejlepšı́ úpravu předložených dat a tı́m se pokusily pomoci k dosaženı́ ještě lepšı́ho výsledku. S tı́mto cı́lem také testuji modul pro automatické předzpracovánı́ dat, implementovaný do programu GAME, jehož výsledky poté porovnávám s ostatnı́mi metodami. Mou snahou bylo také shromáždit a porovnat výsledky, které vznikly v rámci různých pracı́, a vybrat z nich ty nejvhodnějšı́ pro práci s antropologickými daty. K této práci mě motivovalo navázat na výzkum, který jsem prováděl v rámci své bakalářské práce, která byla také založená na antropologických datech a neuronových sı́tı́ch. Proto možnost pokračovat v této problematice a pokusit se posunout výsledky v této oblasti dále, mě přišlo velice lákavé. Pokusit se vylepšit přesnost predikce stářı́ kosternı́ch pozůstatků, zmapovat použitı́ jiných technologiı́ a předzpracovacı́ch metod. Tato práce se dělı́ do několika kapitol. Prvnı́ z nich je Metody pro analýzu antropologických dat (AD). Zde teoreticky popisuji metody, které jsou vhodné pro práci s AD, jak fungujı́ a jakých výstupů z nich můžeme dosáhnout. V druhé kapitole popisuji různé metody úpravy dat. Co je možné s daty udělat, aby poskytovaly co nejlepšı́ vypovı́dacı́ hodnotu. Za tı́mto účelem, že můžeme data různými způsoby upravovat, redukovat a čistit, k čemuž nám dopomáhajı́ předzpracovacı́ metody. V dalšı́ kapitole popisuji experimenty, které byly s AD provedeny. Jakých prostředků a metod k nim bylo použito a jaké výsledky nám poskytly. Následuje kapitola, kde shrnuji dosažené výsledky a porovnávám je mezi sebou. Tı́m se snažı́m nalézt nejlepšı́ metody a ty doporučit pro práci s AD. Poslednı́ kapitolou je závěr. Ta uzavı́rá mou diplomovou práci a hodnotı́, k jakým výsledkům jsem dospěl. 2 KAPITOLA 2. METODY PRO ANALÝZU ANTROPOLOGICKÝCH DAT 2 Metody pro analýzu antropologických dat 2.1 Zı́skávánı́ znalostı́ z dat Metody výpočetnı́ inteligence pro zı́skávánı́ znalostı́ z dat jsou vhodným nástrojem pro odhalovánı́ předem skrytých vztahů mezi daty. Hlavnı́ techniky použı́vané při vytěžovánı́ dat jsou regrese, klasifikace a shlukovánı́. Pomocı́ těchto technik můžeme z antropologických dat zı́skat požadované informace. Na základě vstupnı́ch dat můžeme pomocı́ regrese predikovat výstup, čı́mž je stářı́ kostry. V podstatě jde o to, že si vezme soubor dat a pomocı́ matematického vzorce se tyto data popı́šı́. Tı́m vznikne určitý model, který popisuje dané data. 2.2 Typy dolovacı́ch úloh Řada metod použı́vaných v problematice zı́skávánı́ znalostı́ vycházı́ z umělé inteligence. Úlohy se rozdělujı́ na 2 typy: deskriptivnı́ a prediktivnı́. Deskriptivnı́ funkce charakterizujı́ a popisujı́ data podle jejich vlastnostı́. Prediktivnı́ funkce pracujı́ tak, že na základě trénovacı́ch dat jsou schopny předpovědět vlastnosti dat nově přı́chozı́ch. 2.2.1 Klasifikace a predikce Jedná se o prediktivnı́ dolovacı́ úlohy. Cı́lem klasifikace je nalezenı́ pravidel, která rozlišujı́ a zároveň popisujı́ třı́dy dat. Tato pravidla se pak použijı́ k predikci třı́dy objektu, jehož zařazenı́ neznáme. Model je sestavován pomocı́ podmı́nkových pravidel, rozhodovacı́ch stromů nebo jiných prostředků. Proces klasifikace se sestává ze třı́ kroků: 1. Trénovánı́ – na základě trénovacı́ množiny je vytvořen model pro klasifikaci. Tato fáze se označuje také jako učenı́. 2. Testovánı́ – ověřenı́ kvality modelu testovánı́m pomocı́ testovacı́ množiny. 3. Aplikace – použitı́ modelu ke klasifikaci dat, jejichž třı́du neznáme. Klasifikace se použı́vá k predikci diskrétnı́ch třı́d. Oproti tomu predikce předpovı́dá hodnoty spojitých atributů. V tomto přı́padě předpovı́dáme numerickou nedostupnou hodnotu. Nejčastějšı́ metodou predikce je regresnı́ analýza. V přı́padě antropologických dat jde o predikci věku kostry. 2.2.2 Shlukovánı́ Shluková analýza (Cluster Analysis) na rozdı́l od klasifikace a predikce analyzuje objekty bez znalosti přiřazenı́ do třı́d. Cı́lem je nalézt třı́dy objektů, které majı́ co nejvı́ce společného tak, aby se objekty různých třı́d co nejvı́ce lišily. Nalezené třı́dy majı́ podobu tzv. shluků. 2.2.3 Analýza odlehlých objektů Jde o nalezenı́ objektů, které se nějakým způsobem významně odlišujı́ od ostatnı́ch. Takové datové objekty se nazývajı́ odlehlé (outlier). Tato analýza může napřı́klad v praxi odhalit podvodné zneužitı́ kreditnı́ch karet, extrémně velké nebo podezřelé nákupy. U antropologických dat jde o nalezenı́ tzv. ”ustřelených” hodnot a ty pro modelovánı́ nepoužı́vat, protože zanášı́ chybu do predikce stářı́. 2.2.4 Analýza nalezených vzorů Systém pro zı́skávánı́ znalostı́ z dat je schopen generovat obrovské množstvı́ vzorů nebo pravidel. Vzniká tak důležitá otázka zajı́mavosti nalezených vzorů. V praxi je zajı́mavá pro koncového KAPITOLA 2. METODY PRO ANALÝZU ANTROPOLOGICKÝCH DAT 3 uživatele pouze malá část. Zajı́mavé vzory nebo pravidla pak představujı́ znalost. Aby byl vydolovaný vzor pro uživatele zajı́mavý, musı́ mı́t 4 základnı́ vlastnosti, které určujı́ mı́ru zajı́mavosti: • Srozumitelnost – vzor musı́ být srozumitelný pro člověka • Platnost – pro nová nebo testovacı́ data • Užitečnost – vzor musı́ mı́t reálnou užitečnost • Novost – přinášı́ nové poznatky Užitečným vzorem může být i vzor, který validuje hypotézu, kterou se snažı́ uživatel potvrdit. Pro určenı́ mı́ry zajı́mavosti existujı́ objektivnı́ a subjektivnı́ metody. Objektivnı́ metody jsou založeny na struktuře objevovaných vzorů a statistických údajı́ch k nim vztažených. Mezi tyto metody patřı́ dřı́ve zmı́něné frekventované vzory a asociačnı́ pravidla (mı́ra podpory a spolehlivosti). Subjektivnı́ mı́ry by měly doplňovat objektivnı́, které samy o sobě nejsou dostatečným kritériem pro vyhodnocenı́ zajı́mavosti. Mezi taková kritéria patřı́ např. novost, neočekávanost apod. 2.3 Data Pro zı́skánı́ kvalitnı́ho výsledku mohou být limitujı́cı́ data sama. Je důležité rozhodnout která data (vstupy) jsou důležité a které méně, pro výsledek, kterého se snažı́me dosáhnout. Ne všechny informace jsou vhodné pro vytěžovánı́ dat. Je zapotřebı́ porozumět struktuře, pokrytı́ a kvalitě daných dat. Často je také zapotřebı́ předzpracovat daná data, abychom z nich odstranili informace, které nejsou pro námi požadovaný model potřebná nebo dokonce jsou zavádějı́cı́ a směřujı́ k špatným výsledkům. Takovým datům řı́káme zašumělá. Pomocı́ předzpracovacı́ch metod se snažı́me takovýmto zavádějı́cı́m hodnotám přecházet a eliminovat je. Bylo vyvinuto mnoho technik pro zı́skávánı́ znalostı́ z dat. Pro predikci biologického stářı́ člověka z jeho kosternı́ch pozůstatků na antropologických datech se hodı́ nejvı́ce regresivnı́ modelovánı́. Protože na trénovacı́ch datech se vytvořı́ model popisujı́cı́ jednotlivé vztahy mezi proměnnými (neuronová sı́t’) a pomocı́ nı́ na testovacı́ch datech se dá predikovat stářı́ kostry. Jednak můžeme určovat stářı́ kostry přı́mo nebo si stanovit určité věkové skupiny a stářı́ dané kostry určovat podle toho do které skupiny spadá - klasifikace. Pro určovánı́ věku koster se jako vhodné jevı́ metody lineárnı́ regrese a to GMDH (Group Method of Data Handling) a GAME (Group of Adaptive Models Evolution). Dı́ky nim můžeme odhadovat věk koster. Dalšı́mi metodami jsou LVQ (Learning Vector Quantization), Perceptron - technický model organické nervové sı́tě a nebo RBF (Radial Basis Function). Tyto metody jsou vhodné pro klasifikaci do věkových třı́d. A třetı́ zajı́mavou skupinou pro práci s AD jsou metody shlukové analýzy. Do těch spadajı́ mapy SOM - Self-Organizing Map. Jednotlivé metody budou popsány dále v práci spolu s výsledky experimentů. 2.3.1 Antropologická data Stěžejnı́m prvkem o který se opı́rá tato diplomová práce jsou použité antropologické data. Ty naše škola zı́skala za spolupráce s Université Bordeaux, přesněji ve spolupráci s Jaroslavem Brůžkem, který dané data poskytnul. Ty jsou posbı́rány z muzeı́ celého světa. Obsahujı́ různé přı́znaky opotřebenı́ kostı́, ke kterým docházı́ při stárnutı́. Podle těchto ohledánı́ se snažı́me predikovat věk kostry. Bohužel jak se ukázalo, tak jsou tyto data velmi zašumělá a predikce 4 KAPITOLA 2. METODY PRO ANALÝZU ANTROPOLOGICKÝCH DAT nenı́ přı́liš přesná, jak bude vidět dále ve výsledcı́ch experimentů. Data reprezentujı́ množinu hodnot, kterými je ohodnocena lidská kostra pro účely odhadu stářı́ z lidského skeletonu (Schmitt, 2001; Schmitt et al., 2002). Jde o vizuálnı́ ohodnocenı́ morfologických změn povrchu dvou kostı́ pánevnı́ch. Vzorek je sebrán z 955 koster, u kterých je známo pohlavı́ a věk. Tato kolekce obsahuje data: • Kontinent: Europe, Africa, North America, Asia. • Národnost: Portugal, Africaner, ZULU, USAW, Spain, Suisse, SOTO, Thailand, USAB. • Pohlavı́: Female, Male. • Čı́selné parametry: PUSA, PUSB, PUSC, SSPIA, SSPIB, SSPIC, SSPID. Věk zesnulých se pohybuje mezi 19 a 100 lety. Vstupnı́ data obsahujı́ informace identifikačnı́ čı́slo kostry, které ale nenı́ pro predikci důležité. Dále data popsaná výše, z nichž nejdůležitějšı́mi faktory jsou: 3 vstupy jsou ohledánı́ spony stydké na pánvi: • Zadnı́ ploténka (PUSA) ohodnocena na stupnici (1-2-3) • Přednı́ ploténka (PUSB) ohodnocena na stupnici (1-2-3) • Zadnı́ hřbet (PUSC) ohodnocena na stupnici (1-2) 4 pozorovánı́ sacropelvic povrchu ilia: • Přı́čné uloženı́ (SSPIA) ohodnocenı́ (1-2) • Změny na povrchu kloubu (SSPIB) hodnocenı́ (1-2-3-4) • Změny na hrotu kosti (SSPIC) hodnocenı́ (1-2) • Změny na iliu tuberosity (SSPID) hodnocenı́ (1-2) A jako poslednı́ informacı́, a to výstupnı́, je stářı́ kostry. Ten sloužı́ k naučenı́ neuronové sı́tě v průběhu fáze trénovánı́ a ve fázi testovánı́ se pokoušı́me tuto hodnotu predikovat, popřı́padě klasifikovat. Nakonec jsou ještě data rozdělily do dvou množin a to do trénovacı́, která obsahuje 639 vzorků a testovacı́, čı́tajı́cı́ 319 vzorků. 2.4 Prediktivnı́ metody GMDH Neuronové sı́tě typu GMDH jsou polynomiálnı́ sı́tě. Lze je použı́t napřı́klad pro predikce (bankovnictvı́, předpovı́dánı́ počası́), ale napřı́klad také pro rozpoznávánı́. Sı́tě se uplatnı́ všude tam, kde si řešený problém lze představit jako ”černou skřı́ňku” majı́cı́ několik nezávislých vstupů a jeden výstup. Úkolem sı́tě je najı́t hodnotu výstupu v závislosti na nějaké kombinaci vstupů. Idea sı́tě GMDH spočı́vá v nalezenı́ analytického vyjádřenı́ (funkce), které bude pracovat takovým způsobem, že sı́tı́ predikovaná hodnota výstupu bude co nejvěrohodněji vyjadřovat skutečnou hodnotu. Tuto funkci hledáme postupně při učenı́ sı́tě pomocı́ učı́cı́ množiny. Autorem sı́tě GMDH je DrSc. Alexey Grigorievich Ivakhnenko. KAPITOLA 2. METODY PRO ANALÝZU ANTROPOLOGICKÝCH DAT 5 Obrázek 2.1: Ukázka GMDH sı́tě jako černé skřı́ňky Sı́tě typu GMDH jsou sı́tě polynomiálnı́ho typu ”s učitelem”. Učitel zde spočı́vá v tom, že sı́ti při učenı́ předkládáme dvojice vstupnı́ vektor - požadovaná hodnota. Jejich základnı́ činnost spočı́vá v aproximaci funkcı́ f : A ⊂ Rn ⇒ R, což demonstruje obrázek 2.1. Z obrázku je patrné, že sı́t’ má n vstupů (X1 − Xn) a jeden výstup (Y ). Hornı́ mez počtu vstupů neexistuje, pouze ovlivňuje nároky na výpočetnı́ prostředky, které musı́me vynaložit. Pokud budeme chtı́t využı́t všech vlastnostı́ GMDH, je minimálnı́ počet vstupů 3. Hlavnı́ nasazenı́ sı́tě je v oblastech, kde je potřeba aproximace funkcı́. Po úpravě lze sı́t’ použı́t napřı́klad pro predikce, či klasifikace. Což se právě hodı́ k určovánı́ věku v antropologických datech. Struktura neuronové sı́tě, ze které také vycházı́ princip GMDH, lze vidět na obrázku 2.2: Obrázek 2.2: Struktura sı́tě GMDH Jak již bylo řečeno výše, činnost sı́tě spočı́vá v aproximaci funkcı́ f : A ⊂ Rn ⇒ R. Funkce mapujı́ podmnožinu n-rozměrného Euclidovského prostoru do množiny reálných čı́sel. Přı́klad na obrázku 2.2 má 4 vstupy (složky vstupnı́ho vektoru X1 −Xn ) a jeden výstup y 0 , což je odhad funkce y = f (X). Na obrázku si lze všimnout toho, že sı́t’ se skládá z jednotlivých vrstev, každá vrstva je složena z prvků (neuronů). Vrstvy můžeme rozdělit na 3 kategorie: • vstupnı́ - sloužı́ k distribuci složek vstupnı́ho vektoru do sı́tě, konkrétně do prvnı́ skryté vrstvy. Obsahuje tolik neuronů, kolik je prvků vstupnı́ho vektoru; • výstupnı́ - pokud při procesu učenı́ dospějeme do stavu, kdy výstup sı́tě splňuje naše kritéria, poslednı́ vrstvu prohlásı́me za výstupnı́ a ukončı́me tvorbu sı́tě. Neuron, který dává nejlepšı́ výsledky v závislosti na testovacı́ch datech, prohlásı́me za výstup sı́tě; • skryté - vrstvy, které jsou mezi vstupnı́ a výstupnı́ vrstvou. Sı́t’ GMDH by měla mı́t 6 KAPITOLA 2. METODY PRO ANALÝZU ANTROPOLOGICKÝCH DAT pro svou správnou funkci alespoň jednu skrytou vrstvu. Maximálnı́ počet skrytých vrstev nenı́ nijak omezen. Vstupnı́ vrstva nenı́ pro funkci sı́tě nijak významná, sloužı́ pouze pro distribuci jednotlivých složek vstupnı́ho vektoru do dalšı́ch vrstev (na vstupnı́ vrstvu navazuje prvnı́ skrytá vrstva, na prvnı́ skrytou druhá skrytá atd.). Skryté vrstvy obsahujı́ výkonné prvky sı́tě (neurony). Výstupnı́ vrstva obsahuje pouze jeden neuron, který zároveň tvořı́ výstup celé sı́tě. Vlastnı́ chovánı́ sı́tě je založeno na principu dopředného šı́řenı́ (v přı́padě obrázku 2.2 zleva doprava). Na jednotlivé vstupy sı́tě (vstupy neuronů vstupnı́ vrstvy) přiložı́me hodnoty vstupnı́ho vektoru, které jsou vstupnı́ vrstvou distribuovány do prvnı́ skryté vrstvy, kde jsou provedeny přı́slušné kombinace. Výstup prvnı́ skryté vrstvy je dále distribuován na vstupy druhé skryté vrstvy a tak dále. Poslednı́ vrstvou je vrstva výstupnı́, která obsahuje pouze jeden neuron (jeden výstupnı́ neuron nenı́ pravidlem, v některých modifikacı́ch GMDH jich může být i vı́ce). Jejı́m výstupem je reálné čı́slo y, které je současně výstupem celé sı́tě. Počet skrytých vrstev nenı́ omezen a nenı́ předem určen. Vyplývá ze složitosti řešeného problému a požadavků kladených na přesnost výstupu. Na obrázku 2.2 si lze všimnout, že mezi neurony jednotlivých vrstev neexistuje úplné propojenı́. Dále si všimněme, že každý neuron (vyjma neuronů vstupnı́ vrstvy) má právě dva vstupy a jeden výstup (výstup se mnohačetně distribuuje do neuronů dalšı́ch vrstev). Z toho plynou jistá omezenı́ pro minimálnı́ počet vstupů. Sı́t’ s jednı́m vstupem vytvořit nejde a ani to nemá smysl. Sı́t’ se dvěma vstupy neobsahuje žádné skryté vrstvy - vzniklá sı́t’ je jiného charakteru. Pokud chceme vytvořit sı́t’, která bude mı́t všechny vlastnosti GMDH jsme omezeni minimálnı́m počtem vstupů 3. Sı́t’ GMDH se od ostatnı́ch sı́tı́ lišı́ předevšı́m tı́m, že docházı́ ke splynutı́ procesu učenı́ a tvorby sı́tě. Na počátku nenı́ dána ani struktura sı́tě, ani počet neuronů. Známe pouze počet složek vstupnı́ho vektoru → vytvořı́me vstupnı́ vrstvu s odpovı́dajı́cı́m počtem neuronů. Na této vrstvě postupně procesem učenı́ vyrůstajı́ dalšı́ a dalšı́ vrstvy, dokud nenı́ splněn požadavek na výstup sı́tě. Algoritmus tvorby jednotlivých vrstev je stále stejný. Každá nově vytvořená vrstva se vždy samostatně zadaptuje a zmrazı́ (během dalšı́ho učenı́ se již jejı́ parametry neměnı́ a tato vrstva sloužı́ pouze k distribuci signálu). Na této vrstvě posléze stavı́me stejným způsobem dalšı́ vrstvu a celý postup opakujeme, dokud sı́t’ nesplňuje požadavky, které na nı́ klademe. Pokud dorazı́me do tohoto bodu, tvorbu sı́tě zastavı́me. Ukončenı́ výpočtu nastane, jakmile sı́t’ splňuje požadavky na ”přesnost” výstupu. Postupujeme tak, že v každém učı́cı́m kroku (po přidánı́ nové vrstvy a vyčı́slenı́ koeficientů) otestujeme, zda jsme již nedosáhli požadovanou hodnotu a zda bychom právě v tomto kroku neměli tvorbu sı́tě ukončit. Průběh střednı́ kvadratické chyby v závislosti na počtu skrytých vrstev ukazuje obrázek 2.3. Na něm si můžeme všimnout toho, že s počtem vrstev se výsledná chyba sı́tě zmenšuje. Jakmile ale dosáhne minima, začı́ná se opět zvětšovat. My musı́me toto globálnı́ minimum najı́t a ukončit zde tvorbu sı́tě. Tvorbu sı́tě tedy můžeme ukončit: • v okamžiku, kdy dosáhneme globálnı́ho minima • v okamžiku, kdy sı́t’ dosáhne lepšı́ho výstupu než požadujeme Zde je třeba si uvědomit, že je při učenı́ třeba obejı́t mı́sta lokálnı́ho minima. Lze to provést napřı́klad tak, že předpokládáme, že nalezené mı́sto je globálnı́m minimem, ale pokračujeme KAPITOLA 2. METODY PRO ANALÝZU ANTROPOLOGICKÝCH DAT 7 Obrázek 2.3: Ukončenı́ učenı́ sı́tě GMDH v přidánı́ ještě několika vrstev. Podle vývoje chyby se bud’ vrátı́me do původnı́ho mı́sta, nebo pokračujeme dál. Poslednı́ vrstvu označı́me za výstupnı́ vrstvu. Neuron s nejlepšı́m výstupem v této vrstvě označı́me jako výstupnı́ neuron celé sı́tě. Odstranı́me ostatnı́ neurony, které neovlivňujı́ výstup sı́tě. Tı́m je sı́t’ naučena a máme model postihujı́cı́ předložená data. Ten poté můžeme aplikovat na testovacı́ data. [GMDH web] GAME Dalšı́ metodou vhodnou pro použitı́ na antropologických datech je GAME (Group of Adaptive Models Evolution). Jedná se v podstatě o vylepšenou variantu GMDH, ze které také vycházı́. Přı́klad tvorby sı́tě GAME je vidět na obrázku 2.4. Z něj je patrné, že se sı́t’ vytvářı́ vrstvu po vrstvě v průběhu procesu učenı́ z jednotek, které přenášejı́ informace dopředně ze vstupů na výstup. Sı́t’ se tak postupně rozrůstá a učı́. Genetický algoritmus musı́ v každé vrstvě vybrat vhodné jednotky, které budou použity dále pro vytvořenı́ modelu. Vı́ce informacı́ o tomto modelovánı́ lze najı́t v [Kordı́k, 05], podle [Kordı́k, Šnorek, 05]. GAME může vytvářet modely pro klasifikaci, predikci, identifikaci a regresi. Topologie GAME modelů se přizpůsobuje povaze skrytých dat. Metoda je odolná vůči neplatným nebo redundantnı́m položkám, vhodná pro krátké a zašumělé vzorky. V GAME rostou jednotky z minimálnı́ formy, počet vstupů je minimálně jeden a shora omezen pořadı́m skryté vrstvy, ve které jednotka je. Vstupy jednotek již nejsou pouze z přı́mé předchozı́ vrstvy. Mohou být připojeny na vstup jakékoli jednotky z předchozı́ch vrstev, stejně tak k libovolnému vstupu modelu. Za použitı́ sı́tě GAME byla využita tzv. ensemble technika. Ta je založena na tom, že konečné množstvı́ modelů neuronových sı́tı́ naučı́me na stejné úloze. A když dáme dohromady všechny tyto modely, tak spolu popisujı́ daný problém (data) daleko lépe než každý model sám. Využı́vá se dvou přı́stupů a to bud’ tzv. bagging nebo boosting. Bagging neboli jakési pytlovánı́ či sáčkovánı́ představuje postup, kdy jsou jedny trénovacı́ data rozděleny na vı́ce souborů a z nich jsou poté trénovány jednotlivé modely. GAME sı́tě použı́vané programem GAME použı́vajı́ přesně takový přı́stup, při použitı́ ensemble techniky. 8 KAPITOLA 2. METODY PRO ANALÝZU ANTROPOLOGICKÝCH DAT input variables P P L C C 3 inputs P max G second layer P P first layer C third layer interlayer connection 4 inputs max L output layer output variable Obrázek 2.4: Přı́klad sı́tě GAME. Sı́t’ se vytvořı́ pomocı́ trénovacı́ch dat obsahujı́cı́ch vhodné jednotky pro přenos (P-jednotky perception optimalizované pomocı́ backpropagation algoritmu, L-lineárnı́ a C-polynomiálnı́ přenosové jednotky, obojı́ optimalizované pomocı́ Quasi Newton metody). 2.5 Klasifikačnı́ metody LVQ Metodou vhodnou pro klasifikaci do třı́d, tudı́ž zde se již nepokoušı́me určit přesný věk kostry, ale padnutı́ do třı́dy, je LVQ - Learning Vector Quantization. Tato neuronová sı́t’ vycházı́ z Kohonenovy sı́tě, která patřı́ k samoorganizujı́cı́m neuronovým sı́tı́m, takže nepotřebuje ke svému trénovánı́ učitele. Jejich funkce je založena na principu shlukové analýzy ( nalezenı́ určitých vlastnostı́ a závislostı́ přı́mo v předkládaných trénovacı́ch datech ). Kohonenův základnı́ model je většinou dvojdimenzionálnı́ i když může mı́t i jiné uspořádánı́ výstupnı́ch neuronů. Tento model obsahuje jen vstupnı́ a výstupnı́ vrstvu. Počet vstupů do sı́tě je roven dimenzi vstupnı́ho prostoru. Počet vstupů neuronu ve výstupnı́ vrstvě je roven počtu vstupů do Kohonenovy sı́tě. Váhy těchto vstupů neuronu sloužı́ k zakódovánı́ vzorů. Jedinou operacı́, kterou neuron provádı́, je výpočet vzdálenosti předloženého vzoru od vzoru zakódovaného ve vahách daného neuronu. Výstupnı́ neurony jsou propojeny se všemi svými sousednı́mi neurony. Každý vstup je spojen s každým neuronem výstupnı́ mřı́žky. LVQ je modifikovaná Kohonenova sı́t’, která je schopna pracovat s pomocı́ učitele. Fáze učenı́ je o něco komplikovanějšı́ než u Kohonenovy sı́tě, vybavovacı́ fáze je shodná. Existujı́ tři verze LVQ1,LVQ2 a LVQ3, které se od sebe lišı́ algoritmem hledánı́ nejlepšı́ hranice mezi třı́dami. LVQ1: Neuronová sı́t’ LVQ vylepšuje své chovánı́ podle informace o třı́dě do které vstupnı́ vektor patřı́. V prvnı́ fázi běžı́ LVQ jako klasická Kohonenova sı́t’. Tı́m se zajistı́ určité samovolné uspořádánı́ neuronů do třı́d. Pak přijde na řadu LVQ1. Přivádı́me na vstupy znovu trénovacı́ vektory a v přı́padě, že vektor byl zařazen do správné třı́dy, přiklonı́ váhy ještě vı́ce k dané třı́dě. V opačném přı́padě musı́ být váhy od špatné třı́dy odkloněny. Tı́m se zvýrazňujı́ hranice mezi třı́dami a zmenšuje riziko špatně zařazeného vektoru. LVQ1 může být ještě vylepšena a tato vylepšená verze se nazývá Optimalizovaná LVQ1. Rozdı́l je v individuálnı́m nastavenı́ KAPITOLA 2. METODY PRO ANALÝZU ANTROPOLOGICKÝCH DAT 9 parametru rychlosti učenı́ pro každý neuron. [MOON web] Perceptron Dalšı́ podobnou metodou klasifikace koster do skupin je neuronová sı́t’ založená na perceptronu. Ten představuje něco jako lidský neuron, do kterého vedou vstupy (vstupnı́ informace) a výstupem jsou zpracované vstupnı́ informace v podobě požadovaného formátu výsledku. Úkolem perceptronu (rep. obecně neuronové sı́tě) je nalézt hranici mezi těmito dvěma skupinami. Správné určenı́ hranice je důležité pro budoucı́ správné zařazenı́ nového vzoru. Obrázek 2.5: Prostor 2D a hraničnı́ přı́mka Obrázek 2.6: Model perceptronu jako neuronu Algoritmus učenı́ Učenı́ je interaktivnı́ proces, kdy se v každém kroku trochu poopravı́ jednotlivé složky váhového vektoru. Vzory, které sloužı́ k učenı́, se vybı́rajı́ z množiny všech vstupnı́ch vzorů. Těchto vzorů může být libovolný počet. Na počátku jsou váhy nastaveny na své počátečnı́ hodnoty, které se nejčastěji volı́ náhodně. Hraničnı́ přı́mka (rovina, ...) určená těmito vahami je samozřejmě špatně orientována. Teprve časem se vlivem adaptace vah podařı́ najı́t správný směr. Základnı́m principem je učenı́ se z vlastnı́ch chyb. Jestliže perceptron odpověděl špatně na předložený vzor, upravujeme váhy (zvyšujeme nebo snižujeme) tak, aby se snı́žila chyba. Hodnota, kterou modifikujeme váhy, je odvozena z velikosti chyby. Je to vlastně ”vzdálenost” mezi daným a správným výstupem, [Perceptron]. 10 KAPITOLA 2. METODY PRO ANALÝZU ANTROPOLOGICKÝCH DAT Obrázek 2.7: Struktura RBF sı́tě RBF • Patřı́ mezi nejmladšı́ typy neuronových sı́tı́. • Často se použı́vá na regresi a predikci. • Jedná se o typ dopředné vı́cevrstvé sı́tě, se vstřı́cným šı́řenı́m signálu a učenı́m s učitelem. Jejı́ výhodou je zejména rychlost učenı́. • Radiálnı́ funkce je určena svým středem a jejı́ hodnota závisı́ na vzdálenosti argumentu od tohoto středu. RBF je to třı́vrstvá sı́t’, jejı́ž struktura je obdobná jako u třı́vrstvé sı́tě typu backpropagation, ale přenosová funkce výstupnı́ch neuronů musı́ být lineárnı́, což nemusı́ být pro sı́t’ typu backpropagation pravda a přenosové funkce skrytých neuronů jsou tzv. Radial Basis Functions, odtud i název sı́tě. Jejich charakteristickým znakem je, že bud’ monotónně klesajı́, nebo rostou směrem od svého středového bodu. Na následujı́cı́ch obrázcı́ch je ukázka struktury RBF sı́tě (obrázek 2.7) a RBF funkce (obrázek 2.8). Kromě vstupnı́ vrstvy, která sloužı́ jen pro předánı́ hodnot, má RBF sı́t’ vrstvu RBF (skrytá vrstva) a vrstvu výstupnı́ tvořenou perceptrony. Mezi jednotlivými vrstvami se zpravidla použı́vá úplné propojenı́. Definice RBF neuronů: výpočet vnitřnı́ho potenciálu φ = pPn i=1 (xi − ci )2 Jinými slovy: Vnitřnı́ potenciál se počı́tá jako euklidovská vzdálenost vstupnı́ho vektoru x od c dělenou šı́řkou b. Pro RBF neurony se použı́vá Eukleidovská metrika, na rozdı́l od perceptronů, kde se použı́vá skalárnı́ součin. Vektor C = c1 , ..., cn označujeme jako prototyp, protože reprezentuje jistou podmnožinu vstupnı́ch dat ve tvaru shluku. Jako aktivačnı́ funkce se nejčastěji použı́vá Gaussova funkce a multikvadratická funkce, ale existujı́ i jiné. Učenı́ neuronů RBF vrstvy Trénovacı́ množinu tvořı́ dvojice vstup-výstup. Učenı́ RBF sı́tě je rozděleno na dvě fáze. V prvnı́ fázi se určı́ prototyp C a sigma pro každý RBF neuron. Tento proces probı́há bez znalostı́ KAPITOLA 2. METODY PRO ANALÝZU ANTROPOLOGICKÝCH DAT 11 Obrázek 2.8: Ukázka typických Radial Basis Function funkčnı́ch hodnot nebo kategoriı́. Použı́vajı́ se algoritmy podobné algoritmům pro shlukovou analýzu, nebo algoritmům učenı́ Kohonenovy sı́tě. Pro urychlenı́ této fáze lze využı́t také neadaptivnı́ch metod, např. rovnoměrné, nebo náhodné rozloženı́ středů RBF neuronů po vstupnı́m prostoru. Učenı́ neuronů výstupnı́ vrstvy Druhá fáze učenı́ má za úkol určit váhy výstupnı́ch neuronů. Vzhledem k charakteru výstupnı́ch neuronů, je možno použı́t metody nejmenšı́ch čtverců, nebo gradientnı́ch algoritmů. Použitı́ RBF sı́tě Po naučenı́ je sı́t’ připravená k použitı́ na nových, zatı́m neznámých datech. Nový vstupnı́ vektor nebude pravděpodobně stejný jako vektory trénovacı́ množiny (přesněji řečeno, bod ve středu aktivačnı́ funkce může být posunut). Pravděpodobně bude částečně odpovı́dat jen několik vah vektoru, a proto se uvedou v činnost odpovı́dajı́cı́ skryté uzly, které se postupně měnı́. Neuron bude aktivován jen tehdy, bude-li vstupnı́ vektor zařazen do jeho oblasti zájmu. Normálně je aktivováno mnoho neuronů a jejich výstup je slučován dohromady ve výstupnı́ch uzlech. Tı́mto způsobem sı́t’ interpoluje prostor mezi středy zájmových oblastı́ neuronů. Obrázek 2.9 ukazuje přı́klad trénované RBF. Jednotlivé aktivačnı́ funkce R1 , R2 , ... jsou zobrazeny jako křivky dvou vstupnı́ch funkcı́ I1 a I2 . Vypočı́taný model bude lokálnı́ (ve smyslu, že má velice malou vypovı́dacı́ schopnost o tom, jak vypadajı́ funkce mimo zájmové oblasti konkrétnı́ho neuronu, popř. kde jsou jiná školená data). Každá aktivačnı́ funkce reprezentuje právě jeden mı́stnı́ model školených dat, takže vnitřek zájmové oblasti odpovı́dá konkrétnı́mu neuronu. Na druhé straně běžná vı́cevrstvá sı́t’ produkuje globálnı́ aproximaci, z toho vyplývá, že je každá zájmová oblast ovlivněna i ostatnı́mi trénovacı́mi daty, které ve skutečnosti nemusı́ mı́t na danou oblast žádný vliv. RBF sı́t’ jako klasifikátor To je přı́pad, který použijeme na antropologická data. Zde můžeme využı́t jak spojitých, tak nespojitých výstupnı́ch funkcı́ RBF neuronů. Nespojité zařazujı́ vstupnı́ vektor do naučené množiny (shluku), spojité mohou informovat, do jaké mı́ry patřı́ vektor do této množiny. 12 KAPITOLA 2. METODY PRO ANALÝZU ANTROPOLOGICKÝCH DAT Obrázek 2.9: Trénovaná RBF Základnı́ pravidla pro stavbu sı́tě jsou: • Výstup RBF neuronu je napojen pouze na jeden výstupnı́ neuron • Na výstupnı́ neuron může být napojeno vı́ce RBF neuronů. • Průnik sféry vlivu RBF neuronů náležejı́cı́ch vı́ce různým kategoriı́m musı́ být prázdný. • RBF neurony téže kategorie musı́ reprezentovat vzory dané kategorie s minimálnı́ chybou. Pokud použı́váme pro klasifikaci RBF sı́t’ se spojitými výstupnı́mi funkcemi RBF neuronů, musı́ být váhy a práh výstupnı́ch neuronů nastaven tak, aby tyto neurony realizovaly prahovou logickou funkci OR. Obvykle se RBF sı́t’ učı́ řádově rychleji, než obyčejná dopředná neuronová sı́t’, ale RBF sı́t’ je zpravidla pomalejšı́ při použitı́ většı́ho počtu uzlů, podle [VSB web]. 2.6 Shlukové metody SOM Dnes již mezi základnı́ typy neuronových sı́tı́, patřı́ také tzv. SOM = Self-Organizing Maps, neboli samoorganizujı́cı́ se mapy, častěji známé po svém ”stvořiteli” jako Kohonenovy mapy. Ty patřı́ do skupiny samoučı́cı́ch se neuronových sı́tı́, tzn. sı́tı́ s učenı́m bez učitele, které ke svému nastavovánı́ nepotřebujı́ ideálnı́ vzory. To znamená, že k učenı́ sı́tě stačı́ jen velká skupina reálných signálů, z nichž některé majı́ určitou společnou vlastnost nebo naopak výrazné odlišnosti a již k nim nemusı́ být přiřazeny žádné ideálnı́ učı́cı́ signály nebo informace (target = cı́lové hodnoty). Ty v přı́padě tzv. učenı́ s učitelem udávajı́ konečný cı́lový stav, do kterého se má sı́t’ učenı́m dostat. A právě jejich zı́skánı́ bývá často velkým problémem. Naopak u SOM (Kohonenovy mapy) nám napřı́klad stačı́ jen skupina vstupnı́ch signálů a během učenı́ si sı́t’ již sama nalezne společné znaky a odlišnosti, podle kterých se bude ve své aktivnı́ činnosti rozhodovat. A to je ta výhoda, která za cca 20 let od vzniku Kohonenových map, z nich udělala velmi často využı́vanou a velmi oblı́benou neuronovou sı́t’. Svojı́ schopnostı́ samoorganizace a shlukovánı́ objektů s podobnými vlastnostmi do skupin jsou Kohonenovy mapy přı́mo předurčeny pro aplikace rozhodovánı́, rozlišovánı́ a třı́děnı́ objektů, signálů, značek apod. Častou aplikacı́ je rozpoznávánı́ řeči (např.přepis mluveného slova na KAPITOLA 2. METODY PRO ANALÝZU ANTROPOLOGICKÝCH DAT 13 Obrázek 2.10: Struktura neuronů Kohonenovy mapy s vı́tězným neuronem BMU (vstupnı́ vektor s hodnotami x1...xn, neuron s váhami mi = W ) napsané apod.) nebo přeloženı́ psaného textu na tištěnı́, či v mém přı́padě antropologická data. Princip a struktura Základ tvořı́ uspořádaná struktura neuronů, které se v tomto přı́padě dajı́ představit jako body (kroužky), kde ke každému přı́slušı́ unikátnı́ vektor koeficientů označované jako váhy W (mi na obrázku 2.10). Nejčastěji má struktura formu dvourozměrné (k=2) čtvercové nebo obdélnı́kové matice, hexagonálnı́ho útvaru nebo někdy i jednorozměrného vektoru (k=1). Rozměr struktury (k) však nemá nic společného s počtem vah každého neuronu (bodu), tedy dimenzı́ neuronu (n). Obvykle platı́, že k < n, stejně jako počet neuronů m < n. Naopak tvar struktury uspořádánı́ neuronů má vliv na učenı́ mapy a počet vah je vždy shodný s počtem parametrů vstupnı́ch vzorků, hodnot nebo koeficientů vstupujı́cı́ho zpracovávaného signálu. Tvar uspořádánı́ neuronů má vliv na volbu tzv. okolı́ neuronu R, které vymezuje jeho sousedy (sousednı́, nejblı́že postavené neurony). V maticovém uspořádánı́ neuronů (čtvercové nebo hexagonálnı́) je velikost okolı́ rovná počtu ”řad” neuronů od centrálnı́ho neuronu - viz obrázek 2.11. Váhy každého neuronu naopak definujı́ polohu neuronu v prostoru. Princip učenı́ SOM Matici neuronů se postupně předkládajı́ vektory vstupnı́ho signálu (x ) tak, že se zvlášt’ porovnává rozdı́l přı́slušných hodnot vektoru vah (koeficientů w ) každého neuronu s hodnotami vektoru vstupnı́ho signálu. K vyjádřenı́ rozdı́lu se může využı́t různých algoritmů, ale nejčastěji se dává přednost výpočtu euklidovské vzdálenosti D, tj. součet rozdı́lů přı́slušných hodnot: D = (x1 − w1 )2 + (x2 − w2 )2 + ..... + (xn − wn )2 Výsledkem je tedy počet hodnot D, rovný počtu neuronů ve struktuře (např. 100 hodnot v matici 10 x 10 neuronů). Následně se vybere jediný neuron s nejmenšı́m D a označı́ se jako tzv. vı́těz (winner). Váhy tohoto neuronu totiž nejvı́ce ze všech odpovı́dajı́ hodnotám právě předloženého signálu. Při předkládánı́ prvnı́ učı́cı́ho vstupnı́ho vektoru se jeho hodnoty porovnávajı́ s náhodně vygenerovanými hodnotami vah (koeficientů) jednotlivých neuronů. Váhy W vı́tězného neuronu se pak upravujı́ (updatujı́), aby se co nejvı́ce přiblı́žily hodnotám právě předloženého vstupnı́ho vektoru (x ). Využı́vá se vzorce: Wi nové = Wi staré + α(x − Wi staré) kde α je učı́cı́ koeficient vyjadřujı́cı́ rychlost učenı́ (může nabývat hodnot 0 až 1, např. α = 0.6), Wi je vektor vah (koeficinetů) i-tého neuronu Wi = [Wi 1, Wi 2, ...., Wi n] a x je vstupnı́ učı́cı́ vektor x = [x1 , x2 , ...xn ]. 14 KAPITOLA 2. METODY PRO ANALÝZU ANTROPOLOGICKÝCH DAT Obrázek 2.11: Možné struktury uspořádánı́ neuronů (*) s definicı́ okolı́ R vı́tězného neuronu (#) Při opětovném opakovánı́ dávky učı́cı́ch vektorů nebo postupným předkládánı́m dalšı́ch nových dávek se učı́cı́ koeficient obvykle snižuje. Spolu s vı́tězným neuronem se měnı́ i ty sousednı́ v definovaném okolı́ R (viz obrázek 2.11). Jejich váhy se upravujı́ stejným způsobem jako u vı́těze, pouze s tı́m rozdı́lem, že koeficient α je nahrazen koeficientem β, přičemž platı́ α < β. Při opětovném opakovánı́m dávky učı́cı́ch vektorů se může provádět i snižovánı́ hodnoty okolı́ R až na R = 0, tzn. adaptuje se pouze vı́těz. Ve výsledku by se mělo dosáhnout stavu, kdy v maticové struktuře neuronů vznikne několik významných center, tzv. shluky, mezi nimiž se výrazně lišı́ hodnoty vah neuronů. Neurony, jejichž váhy během učenı́ dosáhly nulových hodnot, se ze struktury mohou vyloučit. Počet shluků by měl být shodný s počtem odlišných vlastnostı́ nebo parametrů, které Kohonenova mapa našla v předložených dávkách učı́cı́ch vstupnı́ch vektorů. To také znamená, že funkčnost mapy a neuronových sı́tı́ obecně, výrazně závisı́ na složenı́ signálů a informacı́ v učı́cı́ch dávkách. Pro jednoduššı́ kontrolu a přehlednějšı́ dohled nad učenı́m mapy se využı́vá grafického zobrazenı́ shluků, které vyjadřuje prostorové vztahy mezi neurony v prostoru vah. V diagramu jsou váhové vektory (= neurony) zobrazeny jako černé body v dvojdimenzionálnı́m prostoru, které zároveň tvořı́ centra shluků. Černé čáry představujı́ přı́mky spojujı́cı́ váhové vektory sousednı́ch neuronů. Na obrázku 2.12 je ukázaná změna ”pozice” neuronu před a po adaptaci vah na vstupnı́ vektor (zelený bod). Po naučenı́ SOM se na vstup vždy přikládá analyzovaný neznámý vektor hodnot (zelený bod) podobného druhu, jako byly učı́cı́ vektory a opět výpočtem podobnosti-vzdálenosti od vektorů vah jednotlivých neuronů (černé body), se vybere ten vı́tězný neuron, nejvı́ce podobný hodnotám na vstupu. Ten již představuje určitou definovanou skupinu (shluk) a tı́m je znám výsledek. Ten představuje zařazenı́ analyzovaných dat do některé skupiny či kategorie a tı́m i jejich pojmenovánı́ a nalezenı́ jejich vlastnostı́, [SOM]. U-matice Pro zobrazenı́ výsledků metody SOM se využı́vá tzv u-matice. Ta zobrazuje neuronovou sı́t’ s barevně vyjádřenou informacı́ o tom, jak moc se daný neuron lišı́ od okolnı́ch ve svých vahách. KAPITOLA 2. METODY PRO ANALÝZU ANTROPOLOGICKÝCH DAT 15 Obrázek 2.12: Přı́klad adaptace vah neuronu v mapě rozloženı́ shluků ve dvojdimenzionálnı́m prostoru Čı́m světlejšı́, tı́m je jim podobnějšı́. Světlé oblasti vymezené tmavšı́ hranicı́ tak představujı́ shluky (clusters) neuronů s podobným referenčnı́m vektorem. Jako přı́klad můžeme použı́t obrázek 2.13, kde vidı́me jasně jeden takový velký shluk s nepřı́liš ostrou hranicı́ a asi bychom našli i pár menšı́ch. V této u-matici každé druhé polı́čko představuje neuron, mezi nimi jsou vyznačeny přechody k sousednı́m neuronům, takže je obrázek informativnějšı́, než kdyby byl zhuštěný, jak se občas vyskytuje, a jedno polı́čko představovalo jeden neuron. Bı́lé a černé tečky a čı́sla označujı́ neurony, čı́sla jsou názvy, přidělené vektorům ve vstupnı́ch datech (má-li vstupnı́ vektor 10 položek, je 11. sloupec dat brán jako jeho název). Existujı́ různé variace u-matice, snažı́cı́ se překonat některé jejı́ nevýhody nebo poskytujı́cı́ jinou informaci (např. p-matice, u*-matice). Obrázek 2.13: U-matice pro sı́t’ 10 x 10 16 KAPITOLA 3. PŘEDZPRACOVÁNÍ DAT - TEORETICKÁ ČÁST 3 Předzpracovánı́ dat - teoretická část Zı́skávánı́ znalostı́ je proces, který se provádı́ v několika krocı́ch. Tyto kroky se mohou provádět v iteracı́ch. Jelikož máme data nejrůznějšı́ho druhu a ty často bývajı́ tzv. zašumělá nebo nekonzistentnı́. Častým problémem pro dolovánı́ dat je chybějı́cı́ hodnota atributu. Tyto problémy mohou vznikat vlivem lidského faktoru, ztrátou dat nebo integracı́ z různých datových souborů. Podstatným krokem v tomto procesu je proto čištěnı́ a integrace dat. Čištěnı́, integrace, výběr a transformace se souhrnně označujı́ jako předzpracovánı́ dat. Čištěnı́ dat sloužı́ k odstraněnı́ zašuměných a nekonzistentnı́ch dat. Integrace dat je krokem, který spojuje data z různých zdrojů do jednoho zdroje. Transformace dat provádı́ transformaci dat a upravuje data tak, aby byla vhodná pro dolovacı́ metody (např. normalizace hodnot může zlepšit výsledek dolovánı́). Výběr dat zmenšuje objem dat pro dolovánı́, napřı́klad pomocı́ agregace, shlukovánı́m, nebo odstraněnı́m nezajı́mavých atributů. Předzpracovánı́ dat může výrazně zlepšit kvalitu vydolovaných vzorů a tı́m i výsledek dolovánı́. Obecně platı́, že data, která chceme použı́t pro dolovánı́, musı́ co nejpřesněji modelovat realitu, kterou reprezentujı́, být konzistentnı́, důvěrná, aktuálnı́, dostupná a prospěšná pro danou úlohu. Správné předzpracovánı́ dat je důležité pro zı́skánı́ co nejlepšı́ch výsledků a zabı́rá také velké množstvı́ času. 3.1 Čištěnı́ dat Jedná se o odstraněnı́ problémů nekompletnı́ch, zašumělých nebo chybějı́cı́ch hodnot. Důvodem těchto problémů může být porucha na přı́stroji pro sběr dat, lidský faktor, chyba komunikačnı́ho kanálu apod. Úkolem čištěnı́ dat je doplněnı́ chybějı́cı́ch atributů, vyhlazenı́ zašumělých hodnot, odstraněnı́ extrémnı́ch hodnot a vyřešená konzistence. Tento proces nenı́ jednoprůchodový, ale iterativnı́. Určitý krok čištěnı́ může mı́t za následek opakovánı́ některého předchozı́ho kroku. Napřı́klad při odstraněnı́ nekonzistence, může vzniknout potřeba pro odstraněnı́ chybějı́cı́ hodnoty. 3.1.1 Nekompletnı́ data Velmi častým problémem je chybějı́cı́ hodnota atributu, který však může reprezentovat důležité informace pro proces dolovánı́. Existuje několik metod pro ošetřenı́ chybějı́cı́ch hodnot. • Ignorovánı́ položky – tato metoda je vhodná pouze v přı́padě, pokud v prvku relace chybı́ některé dalšı́ atributy (nelze odvodit chybějı́cı́ hodnotu atributu) nebo v přı́padě čištěnı́ dat pro klasifikaci. • Manuálnı́ doplněnı́ chybějı́cı́ hodnoty – metoda by byla vhodná, ale většinou kvůli velkému množstvı́ dat je prakticky nepoužitelná. Uživatel by rovněž musel mı́t znalosti, které by uplatnil při nahrazovánı́. • Automatické doplněnı́ globálnı́ konstantou – použı́vá se hodnota mimo rozsah platných hodnot daného atributu (např. 0 nebo ∞ pro numerický atribut). Pokud by výskyt této odlehlé hodnoty byl nı́zký, algoritmus pro dolovánı́ jı́ může ignorovat, ale v přı́padě častého výskytu může tato metoda negativně ovlivnit výsledek dolovánı́. Algoritmus by mohl tuto konstantu brát za důležitou a chybně ji interpretovat jako stěžejnı́. • Použitı́ průměrné hodnoty atributu – hodnota pro automatické doplňovánı́ se vypočı́tá jako průměr z hodnot atributů v ostatnı́ch prvcı́ch. KAPITOLA 3. PŘEDZPRACOVÁNÍ DAT - TEORETICKÁ ČÁST 17 • Použitı́ průměrné hodnoty n-tic stejné třı́dy – je použita průměrná hodnota atributu z relacı́, které patřı́ do stejné třı́dy. Napřı́klad v přı́padě třı́dy vzdělánı́=“vysokoškolské“ se použije průměrná hodnota atributu přı́jem z průměru hodnot relacı́, které spadajı́ do této třı́dy. • Doplněnı́ nejpravděpodobnějšı́ hodnotou – tato hodnota může být vypočtena použitı́m odvozovacı́ch nástrojů jako je Bayesovská klasifikace, regrese apod. Jedná se vlastně o klasifikaci nebo predikci s doplňovaným atributem jako cı́lem. Metoda se jevı́ jako nejlepšı́, protože nejvı́ce zohledňuje okolnı́ informace, z nichž je doplňujı́cı́ hodnota počı́tána. 3.1.2 Zašumělá data Jedná se o náhodné chyby v datech. Důvodů pro zašuměné hodnoty může být vı́ce. Většinou jde o chyby vzniklé poruchou na zařı́zenı́ pro sběr dat, lidským faktorem, špatným ohodnocenı́m, poruchou hardware nebo použitı́m různých formátů pro kódovánı́. Techniky, které provádějı́ vyhlazenı́ dat, jsou uvedeny nı́že. • Plněnı́ – vyhlazovánı́ numerických dat je prováděno tak, že setřı́děná posloupnost zohledňuje hodnoty v blı́zkém okolı́. Tato technika provádı́ lokálnı́ vyhlazenı́. Setřı́děné hodnoty se rozdělı́ do tzv. košů stejné frekvence. Hodnoty v košı́ch se pak nahradı́ průměrem koše, mediánem koše nebo hraničnı́ hodnotou koše. • Regrese – data se nahrazujı́ hodnotami, které jsou dány regresnı́ křivkou. Lze použı́t lineárnı́ nebo vı́cenásobnou lineárnı́ regresi. • Rozdělenı́ do shluků (tzv. shlukovánı́) – nalezenı́ odlehlých hodnot, které nelze zařadit do žádného shluku. Intuitivně mohou být hodnoty, které spadnou mimo grupu, brány jako zbloudilé. • Kombinovaná počı́tačová a ručnı́ kontrola - expertnı́ systém určı́ potenciálnı́ odlehlé hodnoty detekcı́ překročenı́ určitého prahu. Ručnı́ kontrolou se z nich pak vyberou skutečné chybné hodnoty. Metody pro odstraňovánı́ šumu z dat můžeme rovněž chápat i jako metody pro redukci dat. Lze je použı́t i pro diskretizaci hodnot. Požı́vá se metoda pro rozčleněnı́ na intervaly stejné šı́řky nebo rozčleněnı́ na intervaly stejné hloubky. 3.2 Integrace a transformace dat Jedná se o spojenı́ dat z několika nezávislých úložišt’ do jednoho a vytvořenı́ jednoho konzistentnı́ho zdroje. V přı́padě integrace dat jde o nalezenı́ atributů různých vstupů, které k sobě patřı́. Napřı́klad atribut pro identifikaci zbožı́ může být v jedné databázi (datech) nazván item id v druhé jako iid. Tento problém se označuje jako konflikt schématu. Dalšı́ podstatnou částı́ procesu integrace je odstraněnı́ redundance. To znamená odstraněnı́ dat, která jsou duplicitnı́ ale i taková, která se dajı́ odvodit z jiných uložených dat. Redundance se dajı́ detekovat z metadat, ale v datech se může vyskytnout i silná korelace, která se detekuje tzv. korelačnı́ analýzou. Dalšı́m problémem, s kterým se musı́ integrace vypořádat, je konflikt hodnot, kdy jsou odpovı́dajı́cı́ si hodnoty atributů různé, a konflikt identifikace, kdy v různých úložištı́ch je identifikace objektů různá (např. rodné čı́slo a pořadové čı́slo u osob). Ve fázi transformace se data transformujı́ tak, aby lépe vyhovovala dolovacı́m metodám a charakteru dolovacı́ úlohy. Operace, které můžou být zahrnuty ve fázi transformace: 18 KAPITOLA 3. PŘEDZPRACOVÁNÍ DAT - TEORETICKÁ ČÁST Obrázek 3.1: Přı́klad rozdělenı́ do shluků • Vyhlazenı́ – odstraněnı́ šumu. • Agregace – aplikujı́ se sumačnı́ nebo agregačnı́ funkce typické pro plněnı́ datového soboru. Obvykle se provádı́ při plněnı́ datové kostky pro analýzu na vyššı́ úrovni abstrakce a sloužı́ rovněž jako redukce dat, např. dennı́ přı́jmy sloučené, aby se mohly vypočı́tat měsı́čnı́ a ročnı́ přı́jmy. • Generalizace – nahrazenı́ hodnoty atributu jejich obecnějšı́ hodnotou jako u hierarchie konceptů, např. jednoduchý atribut jako je věk může být mapován na vyššı́ úroveň jako nezletilý, dospělý... • Normalizace dat – jde o transformaci hodnot tak, že spadajı́ do určitého intervalu hodnot (typicky je to < 0.0, 1.0 >). Normalizace se provádı́ typicky u neuronových sı́tı́, shlukovánı́ a metody nejbližšı́ho souseda, protože by mohlo dojı́t k negativnı́mu ovlivněnı́ výsledku dolovánı́. Normalizace většinou zabránı́ tomu, aby atribut s velkým rozsahem hodnot překryl svým významem atributy s menšı́m rozsahem hodnot. Existuje celá řada metod pro normalizaci, ale nejčastějšı́ jsou min-max normalizace (lineárnı́ transformace), z-score (normalizace na základě průměru a odchylky) a dekadickou změnou měřı́tka (posunutı́ desetinné čárky tak, aby obor hodnot ležel v požadovaném rozsahu). 3.3 Redukce dat Jelikož je dolovánı́ nad velkým množstvı́m dat časově a výpočetně náročné, je žádoucı́ zdrojová data vhodným způsobem redukovat. Vhodným způsobem rozumı́me tak, že informace obsažená v datech se nezměnı́ nebo nezměnı́ se charakter dat a je zachována integrita dat. Použı́vá se zpravidla 5 technik pro redukci dat: 1. Agregace datové kostky – sumarizace původnı́ch dat. Technika kde jsou operace aplikované na data, tak aby se seskupila do několikarozměrné datové krychle. 2. Odstraněnı́ dimenze – provádı́ se, pokud je dimenze pro analýzu nepodstatná nebo málo podstatná. Klı́čovým faktorem je správné zvolenı́ množiny atributů pro redukci. Je nutné znát doménu a význam uložených dat včetně závislostı́. KAPITOLA 3. PŘEDZPRACOVÁNÍ DAT - TEORETICKÁ ČÁST 19 3. Redukce počtu hodnot – data jsou nahrazena modelem a reprezentována parametry. 4. Komprese dat – ztrátová či bezztrátová komprese dat. 5. Diskretizace a použitı́ konceptuálnı́ hierarchie – hodnoty atributů jsou nahrazeny hodnotami z intervalů nebo hodnotami z nějaké konceptuálnı́ hierarchie. Redukuje se počet různých hodnot atributů. Množina dat může obsahovat stovky atributů, ze kterých je spousta nerelevantnı́ch nebo redundantnı́ch pro dobývánı́ znalostı́. Např. při klasifikaci zákaznı́ků, kteřı́ si nejspı́še koupı́ novou plazmovou televizi, je atribut telefonnı́ čı́slo nepodstatný na rozdı́l od atributů plat či věk. Vynechánı́ relevantnı́ch atributů nebo ponechánı́ zbytečných může způsobit zmatenı́ procesu dobývánı́ znalostı́ nebo jeho zpomalenı́. Redukce dimenze snižuje velikost dat odstraňovánı́m atributů. Typicky se aplikujı́ metody výběru podmnožiny atributů. Cı́lem je nalézt minimálnı́ podmnožinu atributů takovou, že rozloženı́ pravděpodobnostı́ třı́d je co nejblı́že původnı́mu obsazenı́ atributů. Snı́ženı́ počtu atributů také zjednodušuje pochopenı́ nalezených vzorů. V množině d atributů existuje d2 různých podmnožin. Hledánı́ nejlepšı́ podmnožiny hrubou silou je časově náročné. Proto se použı́vajı́ různé heuristiky, převážně na bázi hladových algoritmů, tj. při prohledávánı́ vybı́rajı́ podle nejlepšı́ možnosti v daném okamžiku. Strategiı́ je přijmout lokálně optimálnı́ krok ve snaze najı́t globálnı́ optimum. V praxi jsou tyto metody efektivnı́. Kvalita atributů se určuje statistickými testy, předpokládá se, že jsou nezávislé. Základnı́ heuristické metody jsou zobrazeny na obrázku 3.2 Obrázek 3.2: Metody výběru podmnožiny atributů 1. Dopředný výběr: začı́ná se s prázdnou množinou atributů. V každém kroku se vložı́ nejlepšı́ atribut ze zbývajı́cı́ch v původnı́ množině. 2. Zpětná eliminace: začı́ná se s úplnou původnı́ množinou atributů. V každém kroku se odstranı́ nejhoršı́ atribut z množiny. 3. Kombinovaný dopředný a zpětný běh: kombinace předchozı́ch, kdy se v každém kroku přidá nejlepšı́ a odstranı́ nejhoršı́ atribut. 4. Rozhodovacı́ stromy: každý vnitřnı́ uzel stromu obsahuje test atributu, každá větev odpovı́dá výsledku testu a každý list znamená výsledek predikce třı́dy. Atributy ve stromu jsou redukovanou podmnožinou atributů a ostatnı́ jsou irelevantnı́. 20 KAPITOLA 3. PŘEDZPRACOVÁNÍ DAT - TEORETICKÁ ČÁST 3.3.1 Početnı́ redukce Početnı́ redukce sloužı́ k snı́ženı́ počtu dat volbou alternativnı́ formy reprezentace dat. Metody mohou být parametrické, kdy se data vyjádřı́ jejich modelem a uchovajı́ se jen jeho parametry (přı́padně i odlehlé hodnoty). Neparametrické metody jsou histogramy, shlukovánı́ a vzorkovánı́. Regresnı́ metoda - V lineárnı́ regresnı́ metodě jsou data modelována, aby odpovı́dala přı́mce. Podle rovnice y = ax + b je hodnota y předpovı́daná podle hodnoty x. Parametry a a b se určı́ metodou nejmenšı́ch čtverců, aby odchylka předpovı́dané hodnoty od skutečné byla minimálnı́. Histogramy - Histogram atributu A rozdělı́ data do disjunktnı́ch množin. Množiny jsou zobrazeny na vodorovné ose, výška odpovı́dá průměrné četnosti prvků v množině. Množiny mohou být i jednoprvkové. Způsob rozdělenı́ hodnot atributu do množin může proběhnout několika způsoby: 1. Konstantnı́ šı́řka: velikost množiny je volena konstantně. 2. Konstantnı́ výška: množiny jsou voleny tak, aby četnost prvků v každé množině byla přibližně stejná. 3. V-optimálnı́: pro daný počet množin je histogram volen tak, aby vážený součet původnı́ch dat byl nejmenšı́. Váha v množině je počet hodnot v nı́. 4. MaxDiff: uvažujı́ se rozdı́ly mezi každým párem sousednı́ch hodnot. Hranice množiny je vytvořena mezi každým párem, pro páry majı́cı́ β − 1 největšı́ch rozdı́lů, β je uživatelsky definovaná. Shlukovánı́ - Metody shlukovánı́ rozčleňujı́ seznam objektů do skupin tak, aby v rámci jedné skupiny byly objekty podobné a odlišné od objektů v jiné skupině. Podobnost odpovı́dá vzdálenosti objektů v prostoru. Vlastnostı́ skupiny je průměr, který odpovı́dá největšı́ vzdálenosti mezi dvěma objekty ve skupině, a vzdálenost od těžiště, která odpovı́dá průměrné vzdálenosti objektů od těžiště skupiny (průměrný objekt ve skupině). Vzorkovánı́ - Umožňuje redukovat data výběrem náhodného vzorku původnı́ch dat. Z velkého objemu dat D obsahujı́cı́ho N položek můžeme vybrat vzorek několika způsoby: 1. Náhodný výběr vzorku bez nahrazenı́: z množiny D se náhodně vybere n < N prvků, kdy pravděpodobnost výběru každého je 1/N . 2. Náhodný výběr vzorku s nahrazenı́m: podobné předchozı́mu s tı́m, že prvky mohou být vybrány několikrát. 3. Vzorek ze shluků: pokud jsou položky v D uspořádány do M disjunktnı́ch množin, pak aplikacı́ předchozı́ch metod vybereme m < M skupin. 4. Rozvrstvený vzorek: pokud je D rozděleno do několika disjunktnı́ch vrstev (vrstva může být např. věková skupina u zákaznı́ka), pak je rozvrstvený vzorek zı́skán aplikacı́ náhodného výběru pro každou vrstvu. Tı́mto máme zaručeno, že i málo početná vrstva bude zastoupena. Výhodou metody vzorkovánı́ je, že časová složitost závisı́ na n a nikoli na velikosti původnı́ch dat N. Ostatnı́ metody redukce dat potřebujı́ alespoň jeden průchod přes množinu D. Vzorkovánı́ je přirozenou metodou redukce dat. Chybu můžeme snadno korigovat volbou velikosti počtu vzorků n. KAPITOLA 3. PŘEDZPRACOVÁNÍ DAT - TEORETICKÁ ČÁST 3.4 21 Dalšı́ možné metody předzpracovánı́ Představme si stručně ještě některé dalšı́ metodu předzpracovánı́ dat. PCA Principal Component Analysis (česky analýza hlavnı́ch komponent) v sobě zahrnuje dva druhy předzpracovánı́. V prvnı́m kroku transformuje data do nového souřadného systému tak, že hodnoty na prvnı́ ose (hlavnı́ komponentě) majı́ největšı́ rozptyl, hodnoty na druhé ose majı́ druhý největšı́ rozptyl, a tak dále. Nové souřadnice jsou vždy nějakou lineárnı́ kombinacı́ souřadnic původnı́ch a nemajı́ žádný fyzikálnı́ význam. Druhý, volitelný krok spočı́vá v redukci počtu atributů. Ten můžeme napřı́klad zvolit pevně, tedy tak, že po prvnı́m kroku vybereme pouze prvnı́ch k komponent. Druhou variantu představuje volba proměnného počtu komponent na základě splněnı́ nějakého kritéria. FastICA Jedná se o implementaci metody ICA (Independent Component Analysis, analýza nezávislých komponent), jejı́ž myšlenka je následujı́cı́. Metoda předpokládá, že data, která máme, respektive jejich atributy, vznikly lineárnı́ kombinacı́ jiných, vzájemně nezávislých atributů (nezávislých komponent). Algoritmus se snažı́ najı́t zpětnou transformaci tak, aby dostal opět původnı́” nezávislé komponenty. Metoda, původně vyvinutá hlavně pro ” zpracovánı́ signálu, lze použı́t i pro jiná data než jen časové průběhy. Známa je napřı́klad ukázka odstraněnı́ šumu z obrázku, ale i jiné. Feature selection Takto jsou souhrnně označovány metody, které se ze souboru atributu snažı́ vybrat ty, které jsou z hlediska struktury dat nejvýznamnějšı́, a ty nepodstatné vynechat. Tı́m se ulehčı́ práce učı́cı́mu algoritmu, který se může soustředit” na podstatné atributy a ” nezatěžovat se méně podstatnými. Úvodnı́ náhled do této problematiky přinášı́ napřı́klad [Guyon, Elisseeff, 03], podle [Zelenka, 07] . 22 KAPITOLA 4. VÝSLEDKY EXPERIMENTŮ 4 Výsledky experimentů V této kapitole budou postupně popsány jednotlivé metody (které byly popsány výše) spolu s výsledky experimentů nad antropologickými daty. 4.1 4.1.1 Prediktivnı́ metody GMDH Výpočty pro odhad stářı́ kostry jsem prováděl v programu KnowledgeMiner 5 v rámci své bakalářské práce. Nebot’ je program určen pro platformu Mac, bylo zapotřebı́ mı́t program spuštěn pod emulátorem, což nebyl problém a výpočty probı́haly bez problémů. Všechny experimenty byly prováděny pro sı́t’ GMDH, která je v tomto software ještě vylepšena o to, že neurony nemusejı́ mı́t jenom 2 vstupy, ale i lichý počet, napřı́klad 1. Dále bylo použito vylepšenı́ nazvané layer-break-through, které znamená to, že jednotlivé neurony nemusejı́ být propojeny jenom v sousednı́ch vrstvách, ale i v mezilehlých. Což je znázorněno na obrázku 4.1 Obrázek 4.1: Výsledný GMDH model v KnowledgeMiner softwaru za použitı́ vylepšenı́ layerbreak-trough Experimenty byly prováděny na dvou množinách testovacı́ch a trénovacı́ch dat (train/test 1 a train/test2), za účelem vyloučenı́ nerovnoměrného rozloženı́ hodnot v trénovacı́ a testovacı́ množině. Jako výstupnı́ ukazatel pro úspěšnost odhadu stářı́ kostry byla zvolena modifikovaná hodnota RMS (Root mean squared error). Ta se počı́tá podle vzorce 4.1 v uN X 1u RM S = t (y − d)2i N (4.1) i=1 Kde: N – počet použitých vzorků, y – výstupnı́ vypočı́taná hodnota, d – skutečná hodnota Výsledky práce se sı́tı́ GMDH jsou vidět v tabulce 4.1. V této tabulce je vidět několik konfiguracı́, s nimiž byly vytvářeny modely. Bylo vybráno 8 nejlepšı́ch konfiguracı́. Jednotlivé konfigurace jsou popsány v mé bakalářské práci [Novák, 06]. Stěžejnı́ jsou hodnoty chyby RMS. Bohužel z výsledků je patrné, že chyba nenı́ zanedbatelná (průměrně kolem 0,68-0,69). Z toho plyne, že data jsou velmi zašumělá, čı́mž zanášı́ do predikce stářı́ chybu. Při procházenı́ jednotlivých výsledků predikce stářı́ jsem u některých měřenı́ našel odchylku i 30 let. Nicméně je metoda GMDH k určovánı́ stářı́ dobrým nástrojem. Bohužel z antropologických dat nejsme schopni dostat lepšı́ výsledky v důsledku zanesených nepřesnostı́. KAPITOLA 4. VÝSLEDKY EXPERIMENTŮ Configuration config 1 config 2 config 3 config 4 config 5 config 6 config 7 config 8 Train 1 0,45773 0,47688 0,47670 0,46646 0,53752 0,45780 0,45417 0,44980 23 Test 1 0,69570 0,71613 0,71094 0,70330 0,77992 0,69291 0,69027 0,70599 Train 2 0,46431 0,46795 0,46771 0,46917 0,55504 0,46367 0,46110 0,45575 Test 2 0,67458 0,66152 0,66193 0,66177 0,72760 0,67290 0,67421 0,66131 Test avg 0,68514 0,68883 0,68643 0,68253 0,75376 0,68290 0,68224 0,68365 Tabulka 4.1: Určovánı́ věku kostry - RMS chyba GMDH modelů 4.1.2 GAME Tato metoda neuronových sı́tı́ byla testována pomocı́ stejnojmenného softwaru GAME. Ten byl vyvinut na našı́ katedře Pavlem Kordı́kem. Nynı́ je program běžně použı́ván a na jeho vývoji se stále pracuje a podı́lı́ se na něm celá řada lidı́. Výsledky testovánı́ provedené Pavlem Kordı́kem jsou patrné z tabulky 4.2: Model GAME GAME GMDH GMDH Train 1 0,458 0,458 0,454 0,449 Test 1 0,660 0,659 0,690 0,705 Train 2 0,455 0,455 0,461 0,455 Test 2 0,679 0,679 0,674 0,661 Test avg 0,669 0,669 0,682 0,683 Tabulka 4.2: Srovnánı́ výsledků GMDH a GAME Zde jsou vybrány dva nejlepšı́ výsledky GMDH sı́tě, spolu s dvěma nejlepšı́mi z GAME sı́tě. Je patrné, že rozdı́ly nejsou přı́liš veliké. To je dáno také dı́ky tomu, že KnowledgeMiner má v sobě implementovány pokročilejšı́ funkce sı́tě GMDH, které se v určitých ohledech podobajı́ sı́tı́m GAME. Nicméně o něco lépe dopadla sı́t’ GAME. Výsledky jsou interpretovány opět pomocı́ RMS, jako je tomu v předchozı́ metodě. Je patrné, že i zde je chyba nezanedbatelná a odhadovaný věk nenı́ přı́liš přesný. Nicméně to neznamená, že by metoda GAME nebyla vhodná, ba naopak. Bohužel data nesou velkou nepřesnost. Projevilo se zde i to, že nástroj GAME je vı́ce vědeckým a má mnohem většı́ možnosti nastavenı́ oproti programu KnowledgeMiner. Čı́mž lze také velmi zjemnit nastavenı́ experimentů a tı́m je i zpřesnit. Proto jsou výsledky lepšı́. Nicméně to sebou také nese nutnost znát podrobněji danou problematiku, aby bylo dosaženo kvalitnı́ho nastavenı́. Obě metody GMDH a GAME se ukázaly jako velmi kvalitnı́ nástroje k zı́skávánı́ znalostı́ z dat. GAME prokázal kvalitnějšı́ výstupy a proto ho lze doporučit jako vhodného kandidáta při práci s lineárnı́ regresı́. 4.2 Klasifikačnı́ metody V této sekci je mým cı́lem shrnout a porovnat výsledky z jiných pracı́, které se také zabývaly experimenty s antropologickými daty, zhodnotit jednotlivé výsledky pro každou metodu a poté 24 KAPITOLA 4. VÝSLEDKY EXPERIMENTŮ Parametr initialisation learning function learning rate neurons training iterations use voting window size LVQ1 K-nearest neighbour even linear decay 0,25 250 7600 false - Tabulka 4.3: Parametry sı́tě LVQ1 všechny vzájemně porovnat a doporučit nejvhodnějšı́. Což je shrnuto a porovnáno v kapitole Zhodnocenı́ výsledků na straně 41. Výsledky jednotlivých metod se daly dobře porovnávat, protože jsou stejně hodnoceny a bylo použito rozdělenı́ ro stejných klasifikačnı́ch třı́d. 4.2.1 LVQ Při testech provedených pomocı́ LVQ1 na antropologických datech bylo použito rozdělenı́ do následujı́cı́ch věkových kategoriı́: 1. Původnı́ věkové kategorie, tj. věk úmrtı́ < 29, 30 − 39, 40 − 49, 50 − 59, 60 − 69 a > 70 (T1 ). 2. Věkové kategorie < 29, 30 − 49, > 50 (T2 ). 3. Věkové kategorie < 29, 30 − 59, > 60 (T3 ). Uvažovat populaci pocházejı́cı́ z Evropy: • Celá populace. • Pouze populace pocházejı́cı́ z Evropy, tedy třı́dy Port (Portugalci), Suis (Švýcaři), Spain (Španělé), USAE (přistěhovalci do USA), Africaner (afrikánci - potomci holandských přistěhovalců žijı́cı́ v Jižnı́ Africe). Zkoumat pouze jedno pohlavı́: • Obě pohlavı́. • Jen muži. • Jen ženy. Celkem bylo použito 3 · 2 · 3 = 18 souborů dat, které byly vygenerovány z původnı́ch dat obsahujı́cı́ch všechny atributy. Experimenty byly provedeny pomocı́ softwarového nástroje WEKA. Protože ten ale neobsahuje algoritmy pro neuronové sı́tě typu LVQ, bylo třeba je doplnit formou plug-inu. Parametry všech sı́tě byly vždy nastaveny tak, aby dávaly pro původnı́ sadu dat co nejlepšı́ výsledky (nastavenı́ je patrné z tabulky 4.3, tj. co největšı́ procento úspěšně ohodnocených testovacı́ch dat. Dále byla použita 10-ti foldová cross-validace. KAPITOLA 4. VÝSLEDKY EXPERIMENTŮ 25 Obrázek 4.2: LVQ - celkový přehled úspěšnosti ohodnocenı́ Kategorie T1 T2 T3 obě pohlavı́ 38,4% 68,6% 69,6% ženy 40,5% 68,6% 70,6% muži 35,8% 65,8% 65,3% Evropané obě pohlavı́ ženy 40,1% 46,6% 71,1% 71,5% 69,9% 73,3% muži 38,2% 72,0% 63,2% Tabulka 4.4: LVQ1 - procentuálnı́ úspěšnost klasifikace Výsledky experimentů jsou vidět z grafu správně ohodnocených instancı́ 4.2. Pı́smeno m v grafu znamená, že ve vstupnı́ch datech byli pouze muži, f jen ženy a e jen Evropané. Je zde pěkně vidět rozptyl správně zařazených jedinců v rámci měřené skupiny. Dále si lze všimnout skoku mezi určovánı́m hodnot do vı́ce menšı́ch skupin oproti menšı́mu počtu skupin. Rozdı́l mezi třı́dami T1 oproti T2 + T3. Dále v tabulce 4.4 jsou shrnuty výsledky výpočtů. Jsou brány jako průměr z 5 měřenı́. Je patrné, že při rozdělenı́ do vı́ce věkových skupin odhad věku do správně skupiny nenı́ přı́liš přesný (38,4%). Pokud, ale snı́žı́me počet skupin a tı́m velikost jednotlivých kategoriı́ rozšı́řı́me, odhad se zpřesnı́. To je patrné u výsledků skupin T2 a T3. Dále je vidět, že rozdělenı́ podle pohlavı́ na muže a ženy nepřinášı́ přı́lišné zlepšenı́, i když u žen je klasifikace o pár procent přesnějšı́. Klasifikace pouze Evropanů přinášı́ již o něco patrnějšı́ zlepšenı́ oproti použitým celým datům. Výsledky měřenı́ podle [Augustýn, 07]. 4.2.2 Perceptron Experimenty byly prováděny opět v programu WEKA, na dvou druzı́ch vı́cevrstvé sı́tě perceptron, automaticky generované a minimálnı́. Testy byly prováděny pomocı́ cross-validation, množina vzorku se náhodně rozdělila do deseti stejně velkých skupin (Fold) a následně se postupně vybı́rala jedna skupina a ta se použila jako učı́cı́ a ostatnı́ skupiny sloužily jako testovacı́. Tento postup se prováděl tak dlouho, dokud každá skupina nebyla v pozici učı́cı́ množiny. Každý test byl proveden 6 krát a pokaždé byly vzorky rozděleny do skupin různě. 26 KAPITOLA 4. VÝSLEDKY EXPERIMENTŮ Vstupnı́ data byly rozděleny stejně jako u sı́tı́ typu LVQ. Tedy na skupiny T1 - T3, rozdělenı́ podle pohlavı́ a Evropany. Parametry nastavenı́: 1. Automaticky generovaná sı́t’ Parametry sı́tě generoval automaticky pro každou vstupnı́ množinu software WEKA. Parametry sı́tě pro jednotlivé vstupnı́ množiny (vstupnı́ vrstva - skrytá vrstva - výstupnı́ vrstva) jsou vidět v tabulce 4.5 T1 T1e T1ef/T1em T1f/T1m T2 T2e T2ef/T2em T2f/T2m 21-13-6 16-11-6 15-10-6 20-13-6 21-12-3 16-9-3 15-9-3 20-11-3 T3 T3e T3ef/T3em T3f/T3m 21-12-3 16-9-3 15-9-3 20-11-3 Tabulka 4.5: Parametry automaticky generované sı́tě 2. Minimálnı́ sı́t’ Parametry sı́tě vycházejı́ z automaticky generované sı́tě, jen počet neuronů ve skryté vrstvě byl snı́žen na minimum. Tedy stejný jako počet neuronů ve výstupnı́ vrstvě. Parametry sı́tě jsou v tabulce 4.6. T1 T1e T1ef/T1em T1f/T1m T2 T2e T2ef/T2em T2f/T2m 21-6-6 16-6-6 15-6-6 20-6-6 21-3-3 16-3-3 15-3-3 20-3-3 T3 T3e T3ef/T3em T3f/T3m 21-3-3 16-3-3 15-3-3 20-3-3 Tabulka 4.6: Parametry minimálnı́ sı́tě Výsledky experimentu jsou vyhodnoceny pomocı́ průměru šesti experimentů nad jednı́m vstupnı́m souborem. Hodnoty jsou uvedeny v tabulce 4.7 a 4.11. Druhý způsob je pomocı́ grafů 4.3 a 4.4, které nejen znázorňujı́ průměrnou hodnotu, ale zároveň je možné vidět i rozptyl jednotlivých hodnot. Kategorie T1 T2 T3 obě pohlavı́ 36,6% 65,7% 67,0% ženy 36,2% 65,4% 64,8% muži 37,9% 64,5% 68,1% Evropané obě pohlavı́ ženy 38,5% 36,4% 69,5% 70,1% 67,7% 60,6% muži 42,3% 68,0% 71,7% Tabulka 4.7: Průměrná úspěšnost klasifikace na automaticky generované sı́ti Z experimentů je vidět, že pokud jsou data rozdělena do šesti věkových kategoriı́, tak se úspěšnost klasifikace pohybuje kolem 40%. Situace se znatelně zlepšı́, pokud data rozdělı́me KAPITOLA 4. VÝSLEDKY EXPERIMENTŮ 27 Obrázek 4.3: Rozptyl úspěšnosti klasifikace pomocı́ automaticky generované sı́tě Kategorie T1 T2 T3 obě pohlavı́ 37,4% 66,0% 67,6% ženy 35,0% 66,3% 65,3% muži 38,6% 66,4% 69,8% Evropané obě pohlavı́ ženy 40,2% 35,2% 71,6% 70,8% 69,6% 62,9% muži 41,3% 68,5% 75,0% Tabulka 4.8: Průměrná úspěšnost klasifikace na minimálnı́ sı́ti pouze do třı́ věkových kategoriı́. V tomto přı́padě už se úspěšnost klasifikace pohybuje mezi 60% a 70%. Také se ukázalo, že pokud použijeme jen populace pocházejı́cı́ pouze z Evropy, úspěšnost klasifikace se nepatrně zvýšı́ (kolem 1 az. 5%). Rozdělenı́ na mužské a ženské pohlavı́ přinášı́ nejednoznačné výsledky, v některých přı́padech se úspěšnost klasifikace zvýšila, a v některých dokonce poklesla. Poslednı́m experimentem se sı́tı́ perceptron byl vliv počtu neuronů ve skryté vrstvě na úspěšnost klasifikace a ukázalo se, že při snı́ženı́ počtu neuronů sice v průměru úspěšnost nepatrně vzrostla, ale zato znatelně vzrostl rozptyl jednotlivých hodnot, [Prchlı́k, 07] Z experimentů je vidět, že dopadly hodně podobně jako sı́t LVQ. A i závěr z tohoto vyhodnocenı́ je, že určovánı́ do většı́ho počtu menšı́ch věkových skupin je méně přesné než do méně s většı́m rozpětı́m. Což je vcelku logický výsledek. Na jednu stranu je dobře, že testy dopadly podobně jako u předchozı́ metody LVQ, protože si tak vzájemně potvrzujı́ výsledky. Na druhou stranu by bylo výhodnějšı́, kdyby některá si poradila s AD lépe a podala přesnějšı́ určovánı́ do dané skupiny. 4.2.3 RBF I zde byl použit program WEKA a stejné rozdělenı́ antropologických dat jako v předchozı́ch dvou metodách. Zastoupenı́ věkových třı́d pro skupinu T1 shrnuje tabulka 4.9. Použitý simulátor Weka 3.4.11 má implementovánu normalizovanou Gaussovskou RBF sı́t’ a 28 KAPITOLA 4. VÝSLEDKY EXPERIMENTŮ Obrázek 4.4: Rozptyl úspěšnosti klasifikace pomocı́ minimálnı́ sı́tě Třı́da Počet Zastoupenı́ <29 115 12,0% 30-39 168 18,6% 40-49 189 19,8% 50-59 176 18,4% 60-69 149 15,6% >70 156 16,4% Tabulka 4.9: Zastoupenı́ ve věkových třı́dách použı́vá standardnı́ algoritmus K-means. Uživatel má možnost pro RBF sı́t’ nastavit na následujı́cı́ parametry: • numClusters n - Počet shluků, které by měl vygenerovat algoritmus K-means. Počet shluků je třeba odhadnout. Přı́klad klasifikace pro 2D prostor vstupnı́ch vektorů, který obsahuje dva shluky je na obrázku 4.5 • minStdDev σ – minimálnı́ standardnı́ odchylka f (x) pro shluky. Parametr σ ovlivňuje určovánı́ shluků. Velikost parametru má vliv na to jakým způsobem se sı́t’ bude učit. Přı́liš malá hodnota může způsobit to, že sı́t’ bude přeučená, přı́liš velká naopak to, že bude docházet k chybné klasifikaci. • clusteringSeed x - Náhodná inicializace pro K-means algoritmus, pro každé měřenı́ byla zvolena jiná iniciačnı́ hodnota. • maxIts -1 - Maximálnı́ počet iteracı́ pro splněnı́ logistické regrese. Pouze pro problémy s diskrétnı́mi třı́dami. • ridge 1.0E-8 - hodnota vrcholu pro logistickou nebo lineárnı́ regresi. Byly testovány různé parametry sı́tě n (numClusters) a σ (minStdDev ). Pro vyčı́slenı́ chyby bylo využito metody cross-validation. Ve výsledcı́ch je ukázána průměrná hodnota výsledku. Nejprve se provedl odhad parametru σ (minStdDev ), nejlepšı́ch výsledků pro sı́tě s n = 2 a n = 3 bylo dosaženo pro σ = 0,775. S touto hodnotou se pak vyzkoušelo měnit počet shluků n. Výpočetnı́ složitost roste s počtem shluků přibližně O(2n ) a čas výpočtu pro hodnoty n > 4 byl řádově v hodinách až desı́tkách hodin (u souboru T1). KAPITOLA 4. VÝSLEDKY EXPERIMENTŮ 29 Obrázek 4.5: 2D prostor vstupnı́ch vektorů obsahujı́cı́ dva shluky Změna parametrů se projevovala spı́še nevýrazně a dosažené výsledky se měnily v řádech okolo jednotek procent. Nejlepšı́ch výsledků bylo dosaženo pro n = 4; σ = 0,775. A to jak pro vstup s počtem třı́d 4 (T2 a T3), tak i pro T1 s 6 třı́dami. S dále rostoucı́m počtem shluků se dosahovalo stejných nebo dokonce horšı́ch výsledků. Pro kostry žen Evropanek pro T1 byl naměřen nejlepšı́ výsledek dokonce pouze pro n = 2. Předpoklad, že většı́ počet shluků zlepšı́ výsledky klasifikace, se nepotvrdil. Ve výsledcı́ch je patrný výrazný rozdı́l klasifikace koster žen v souborech T2 a T3. Ženy jsou v celkovém souboru rovnoměrně zastoupeny. V souboru Evropanek je výraznějšı́ rozdı́l v zastoupenı́ třı́d, viz následujı́cı́ histogram; podle [Bruchanov, 07]. T3 < 29 30 - 59 > 60 Ženy Evropanky 32 111 103 T2 < 29 30 - 59 < 29 Ženy Evropanky 32 66 148 Tabulka 4.10: Zastoupenı́ žen Evropanek Kategorie T1 T2 T3 obě pohlavı́ 39,5% 67,6% 68,5% ženy 38,7% 68,0% 66,2% muži 43,4% 69,0% 70,8% Evropané obě pohlavı́ ženy 42,2% 36,1% 71,4% 73,5% 70,7% 64,3% muži 45,7% 72,2% 73,9% Tabulka 4.11: RBF - nejlepšı́ výsledky pro n=4 a σ = 0,775 Výsledky jsou podobné těm z metod Perceptron a LVQ. Opět zde došlo k podobné úspěšnosti klasifikace a ni tato metoda nevybočuje oproti dřı́ve testovaným. 30 KAPITOLA 4. VÝSLEDKY EXPERIMENTŮ Obrázek 4.6: RBF - správně zařazené vzorky pro n=4 a σ = 0,775 4.3 4.3.1 Metody shlukové analýzy SOM Pro práci se SOM mapami byl použit software SOM-PAK (Self-Organizing Map Packed). Jde o softwarový simulátor Kohonenovy samoorganizujı́cı́ neuronové sı́tě. Program pracuje pod operačnı́m systémem DOS, ale dá se zprovoznit i pod Win 2000/XP. Ovládánı́ tohoto programu je realizováno prostřednictvı́m dávkového souboru, kde si lze nastavit typ sı́tě, počet učı́cı́ch kroků a jiné. Vliv pohlavı́ na predikci věku Jako prvnı́ bylo zjišt’ováno, jestli má nějaký vliv, zda se jedná o kostru mužského nebo ženské pohlavı́. Zda by měla skutečnost, že se jedná o jedno nebo druhé vliv nějaký vliv na výsledky. Z experimentu na obrázku 4.7 je možno vidět, že se neobjevil žádný význačný shluk, který by naznačoval, že pohlavı́ ovlivňuje predikci stářı́. V čemž se tato metoda shoduje s metodami klasifikačnı́mi. Na základě tohoto zjištěnı́ by se dalo vyloučit pohlavı́ zesnulého ze vstupnı́m dat pro učenı́ sı́tı́, protože nemá velký vliv na odhad stářı́. Významnost původu zesnulého Dalšı́m experimentem bylo ověřenı́, zda má vliv národnost či kontinent, na kterém zesnulý žil, na odhad stářı́. Jako vstupnı́ data byly použity kosternı́ ohodnocenı́ a jako zobrazovaná veličina na obrázku 4.8 národnost a na obrázku 4.9 kontinent na kterém žil. Z výsledku je patrné, že se opět neobjevily výrazné shluku a tedy ani národnost ani kontinent nejsou důležité vstupnı́ informace pro určovánı́ věku. Určenı́ věku podle SOM map Hlavnı́ otázkou je zda dokážı́ SOM mapy najı́t v antropologických datech nějakou souvislost mezi vstupy a výsledným věkem. Zda se podařı́ najı́t nějaké shluky. Výsledná mapa je vidět na obrázku 4.10. Je vidět, že žádné výrazné shluky nevznikly. Dá se vypozorovat jakási bariéra ve tvaru pı́smene M, procházejı́cı́ z levého dolnı́ho rohu do středu, kde vytvořı́ střed pı́smene M a dále pokračuje do pravého dolnı́ho rohu. Tı́m rozdělı́ u-matici na tři oblasti. V nich lze nalézt podobné neurony, ale dı́ky šedým oblastem, které částečně přerušujı́ tyto shluky, nelze považovat tyto tři oblasti za spojité. Pokud se podı́váme blı́že na vzorky přı́slušı́cı́ do daných oblastı́, tak lze vypozorovat, že v levé části se nacházejı́ zesnulı́ s nižšı́m věkem a v pravé části s vyššı́m věkem. Dále pod pomyslným KAPITOLA 4. VÝSLEDKY EXPERIMENTŮ 31 Obrázek 4.7: SOM - U-matrix trénovaná podle kosternı́ch ohledánı́ a zobrazeno pohlavı́ (M-muž, F-žena) Obrázek 4.8: SOM - rozdělenı́ podle národnosti (POR - Portugalci, SPAIN - Španělé, SOTO Soto, SUISSE - Švýcaři, THAI -Thaici, USAB – občané USA a černoši, USAW – občané USA a běloši, ZULU - Zulu) 32 KAPITOLA 4. VÝSLEDKY EXPERIMENTŮ Obrázek 4.9: SOM - rozdělenı́ podle kontinentu (AFRIC- Afrika, ASIA -Asie, EUR – Evropa, NA – -Severnı́ Amerika) pı́smenem M, v levé části pod obloukem lze najı́t věk mezi třiceti a padesáti lety. Tı́m ovšem podobnosti končı́ a ve zbylých oblastech se nacházejı́ kostry různého věku. Tudı́ž pokud bychom dostaly kostry s podobným ohledánı́m jako vzorky z pod levé části oblouku pı́smene M, mohli bychom odhadnou věk kolem 40 let plus minus deset let. Ale co se týče jiných ohledánı́ koster, dostaneme nepřesný odhad. Kostry podobné vzorkům v levé části bychom mohli odhadnout na mladšı́ padesáti či šedesáti let a kostry podobné vzorkům pravé části staršı́ jako přibližně pětapadesáti let. Ale bohužel i v těchto oblastech se vyskytujı́ jedinci s odlišným věkem, proto odhad bude nepřesný. SOM mapy z [Macek, 06]. Takže i metoda SOM nám dala výsledky podobné předchozı́m metodám. Nejde o chybu metody, protože za použitı́ SOM map na jiných datech pracuje metoda v pořádku, ale o šum obsažený v antropologických datech. Odhad stářı́ z těchto dat je značně nepřesný. Na což ukazujı́ zatı́m všechny použité algoritmy. Proto se dále pokusı́m očistit data pomocı́ předzpracovacı́ch metod, zda nám toto pomůže k lepšı́mu výsledku. KAPITOLA 4. VÝSLEDKY EXPERIMENTŮ 33 Obrázek 4.10: SOM - výsledné ”shluky” koster podle stářı́ 4.4 Předzpracovacı́ metody Důvodem použitı́ předzpracovacı́ch metod je úsilı́ o zlepšenı́ výsledků na AD. Vyzkoušet jednotlivé předzpracovánı́ a posoudit podle výsledků, zda nám mohou pomoci zlepšit kvalitu dat. Výborně nám také posloužı́ k otestovánı́ modulu pro automatické předzpracovánı́. Protože výsledky z něj dosažených budeme moci porovnat s výsledky z jednotlivých PM a porovnat, zda modul zvolı́ správné sekvence PM a dosáhne tak většı́ úspěšnosti. Vstupnı́ antropologická data byla rozdělena na trénovacı́ a testovacı́ v poměru 70 : 30. Trénovacı́ data byla jednak ponechána beze změny a dále byly některé vstupnı́ hodnoty nahrazeny hodnotou NaN (výstupnı́ hodnota (věk) byla ponechána nezměněna). Bylo vyzkoušeno nahradit 10%, 20%, 30%, 40% a 50% hodnot. Na tyto nahrazená data byly poté aplikovány předzpracovacı́ metody, aby neznámou hodnotu NaN nahradily a tı́m se mohlo posoudit kvalitu předzpracovacı́ch metod a jejich pozitivnı́ či negativnı́ vliv na antropologická data. Testy s předzpracovacı́mi metodami byly provedeny na softwaru GAME a za použitı́ FAKE GAME, jenž jde ovládat z přı́kazové řádky a nastavit spoustu parametrů výpočtu. Jako hlavnı́ konfigurace se bere z programu GAME, kde se dopředu nastavı́ požadované parametry (napřı́klad jednotky které budou použity k tvorbě sı́tě, počet modelů, které se majı́ vytvořit, poměr trénovacı́ch/testovacı́ch dat a spousta dalšı́ho) a výsledný konfiguračnı́ soubor je uložen do souboru a načı́tá se při použı́vánı́ FAKE GAME. Jako předzpracovacı́ metody byly využity ty, které jsou implementovány v programu GAME. Program samotný spolu se zobrazenı́m předzpracovacı́ho dialogu je možno vidět na obrázku 4.11. Metody, které byly použity jsou následujı́cı́: • CMVI - Constant Missing Value Imputer • MMVI - Median Missing Value Imputer • NNMVI - Nearest Neighbor Missing Value Imputer • NA - Noise adder 34 KAPITOLA 4. VÝSLEDKY EXPERIMENTŮ Obrázek 4.11: Ukázka programu GAME spolu s předzpracovacı́m dialogem Jednotlivé metody ve zkratce udělajı́ s daty následujı́cı́. CMVI nahradı́ chybějı́cı́ hodnoty (v mém přı́padě hodnoty označené jako NaN) celočı́selnou konstantou. MMVI nahradı́ hodnoty NaN střednı́ hodnotou vypočı́tanou z ostanı́ch vstupnı́ch dat (většinou nejde o celočı́selnou konstantu). NNMVI nahradı́ chybějı́cı́ hodnotu za pomoci sousednı́ch hodnot, ze kterých chybějı́cı́ hodnotu vypočı́tá. NA nenahrazuje hodnoty NaN vůbec, ale zato nahradı́ všechny ostatnı́ vstupnı́ hodnoty. Tyto metody byly aplikovány na všechny sloupce se vstupnı́mi daty. Vı́ce se lze o předzpracovacı́ch metodách dočı́st v kapitole věnované teorii předzpracovacı́ch metod. Jiné metody nebyly použity, protože se při pokusech aplikovat na AD neosvědčily a nepřinášely požadované zlepšenı́ výsledků. 4.4.1 Výsledky jednotlivých metod Pro porovnánı́ výsledků z předchozı́ch popsaných metod GMDH a GAME, byly výsledky z tabulky 4.2 ze strany 23 přepočı́tány podle vzorce 4.2 a jsou zobrazeny v tabulce 4.12. Bude tak možno porovnat předchozı́ výsledky bez předzpracovacı́ch metod s výsledky za použitı́ různých předzpracovacı́ch metod. KAPITOLA 4. VÝSLEDKY EXPERIMENTŮ 35 v u N u1 X RM S = t ∗ (y − d)2i N (4.2) i=1 Kde: N – počet použitých vzorků, y – výstupnı́ vypočı́taná hodnota, d – skutečná hodnota Model GAME GAME GMDH GMDH Train 1 8,180 8,180 8,109 8,019 Test 1 11,788 11,770 12,324 12,592 Train 2 8,127 8,127 8,234 8,127 Test 2 12,127 12,127 12,038 11,806 Test avg 11,949 11,949 12,181 12,199 Tabulka 4.12: Přepočı́tány výsledky GMDH a GAME Při testovánı́ PM jsem postupoval tak, že jsem si vytvořil trénovacı́ data, ve kterých byly vstupnı́ hodnoty v různém procentuálnı́m zastoupenı́ nahrazeny neznámou hodnotou NaN. Úkolem PM bylo tuto hodnotu co nejlépe nahradit hodnotou čı́selnou, tak aby výsledná trénovacı́ data obsahovala co nejmenšı́ chybu a nebyla tolik zašumělá. Což se testovalo oproti testovacı́m datům, která byla kompletnı́ bez chybějı́cı́ch hodnot a dal se tak zvalidovat výsledek. Nejprve jsem zkoušel jednotlivé předzpracovacı́ metody zvlášt’, kdy byla každá použita na všechna vstupnı́ data. Bylo použito defaultnı́ho nastavenı́ GAME s těmi změnami, kdy bylo vyzkoušeno různé nastavenı́ použitých jednotek pro stavbu sı́tě. Defaultnı́ nastavenı́ se při testovánı́ ukázalo jako ideálnı́, protože při zvětšenı́ požadavků na kvalitu sı́tě se zvyšoval výpočetnı́ čas a výstup se zlepšoval jenom nepatrně. Jednak jsem vyzkoušel použitı́ jenom jednotek typu linear a oproti tomu využı́t všechny možné jednotky, které GAME nabı́zı́. Což jsou lineárnı́, polynomiálnı́ (CombiNeuron, PolyHornerNeuron, PlySimpleNeuron, PolySimpleNRNeuron), perceptrony (BPNetwork, NRBPNetwork) a ostatnı́ jednotky (ExpNeuron, SignumNeuron, SinusNeuron, PolyFractNeuron a různé typy Gaussova neuronu). Dále jsem zkoušel vytvářet jenom jeden samostatný model a na něm zjišt’ovat úspěšnost odhadu věku. A oproti tomu tzv. ensemble techniku, kdy se využije vı́ce modelů k zı́skánı́ většı́ přesnosti. V mém přı́padě jsem použı́val na tutu techniku modely tři. To z toho důvodu, že to byl kompromis mezi zı́skaným výsledkem a výpočetnı́m časem, protože za použitı́ této techniky jsou výpočty časově náročné. Jako software pro testovánı́ jsem zvolil FAKE GAME, který dobře splňuje požadavky na to, co jsem potřeboval. Navı́c je odzkoušen na různých datech a je ověřena jeho správná funkčnost a spolehlivost. Jako přı́klad jednoho z použitých přı́kazů k tvorbě modelu je zde: java -Xmx512M -Xms128M -jar fake_runtime.jar -c NewAllunits -n 3 -f -d ADTraining10a-CMVI -t ADtesting Z tohoto přı́kazu lze vidět, že program pracuje v prostředı́ Java. Využı́vá ke svému běhu balı́k fake runtime.jar (-jar fake runtime.jar). Zde je použito konfigurace, kdy je použito všech jednotek pro tvorbu sı́tě (-c NewAllunits). Je zapnut výstup html souboru, kde jsou uloženy výsledky experimentu (-f). Je vytvořen ensemble model ze třı́ samostatných modelů (-n 3) a je použita trénovacı́ a testovacı́ množina dat (-d ADTraining10a-CMVIa -t ADtesting1). Jednotlivá měřenı́ byla provedena vždy stejným způsobem a pětkrát opakována pro dosaženı́ 36 KAPITOLA 4. VÝSLEDKY EXPERIMENTŮ PM CMVI MMVI NA NNMVI bez PM 10% 12,805 13,161 17,432 12,948 17,311 20% 13,418 13,101 17,480 13,741 17,352 30% 13,452 13,192 16,838 13,170 16,518 40% 14,406 13,978 17,045 15,135 17,677 50% 15,487 14,875 17,176 15,392 17,271 0% 12,400 Tabulka 4.13: Výsledek předzpracovacı́ch metod - All units, 1N PM CMVI MMVI NA NNMVI bez PM 10% 12,517 12,406 17,394 12,520 16,947 20% 12,995 12,857 17,036 13,444 17,157 30% 13,185 12,785 16,742 13,188 17,155 40% 14,007 13,988 17,210 14,901 17,315 50% 15,120 14,195 17,245 15,341 16,907 0% 12,004 Tabulka 4.14: Výsledek předzpracovacı́ch metod - All units, ensemble (3N) přesnějšı́ hodnoty. Takže výsledné hodnoty v následujı́cı́ch tabulkách jsou průměrem z pěti měřenı́. V prvnı́ tabulce 4.13 jsou výsledky modelovánı́ za použitı́ všech jednotek (All units) a vytvářı́ se jeden model (-n 1), tedy bez ensemble techniky. Ve spodnı́m řádku je také zobrazena chyba měřenı́ bez použitı́ předzpracovacı́ch metod. Hodnoty v procentech v prvnı́m řádku představujı́ množstvı́ nahrazených hodnot. Všechny výsledné hodnoty v této a dalšı́ch tabulkách jsou spočteny podle vzorce 4.2. V druhé tabulce 4.14 je použito opět všech typů jednotek (All units) a je zde použita tvorba ensemble modelu ze třı́ modelů (-n 3). Ve třetı́ tabulce 4.15 jsou výpočty provedeny za použitı́m jednotek linear a tvorby jednoho modelu. Čtvrtou tabulkou 4.16, za použitı́ předzpracovacı́ch metod každé zvlášt’, je tabulka s použitı́m jednotek linear a tvorbě ensemble modelu. Z výsledků experimentů z tabulek 4.13 až 4.16 lze dojı́t k několika závěrům. Prvnı́m je, že at’ už za použitı́ pouze linear jednotek (LJ) či všech jednotek (all units PM CMVI MMVI NA NNMVI bez PM 10% 14,311 12,170 NaN 12,554 NaN 20% 14,811 12,427 NaN 13,512 NaN 30% 15,901 12,718 NaN 13,645 NaN 40% 16,510 13,667 NaN 15,453 NaN 50% 16,642 14,525 NaN 15,588 NaN 0% 12,773 Tabulka 4.15: Výsledek předzpracovacı́ch metod - linear, 1N KAPITOLA 4. VÝSLEDKY EXPERIMENTŮ PM CMVI MMVI NA NNMVI bez PM 10% 14,215 12,496 NaN 12,689 NaN 20% 14,398 12,338 NaN 13,566 NaN 30% 15,844 12,253 NaN 13,235 NaN 37 40% 15,584 14,516 NaN 14,813 NaN 50% 16,630 14,363 NaN 15,094 NaN 0% 11,864 Tabulka 4.16: Výsledek předzpracovacı́ch metod - linear, ensemble (3N) AU) vycházı́ převážná část výsledků lépe s využitı́m ensemble techniky (ET). Což nenı́ přı́liš překvapujı́cı́, protože se využı́vá třı́ modelů popisujı́cı́ stejnou věc, na mı́sto pouze jednoho. Tı́m se potvrdilo, že použitı́ této techniky se vyplatı́ pro dosaženı́ lepšı́ch výsledků. Musı́me mı́t ale na paměti, že časová náročnost se zvyšuje s množstvı́m modelů, které při ensemble použijeme. Když jsem zkoušel výpočty s jednı́m modelem a poté použil stejné výpočty na ensemble (za použitı́ třı́ modelů), tak čas na výpočet byl přibližně trojnásobný. To činı́ výpočty časově náročnými a je zapotřebı́ najı́t kompromis mezi kvalitou výsledku a časem stráveným výpočetnı́ jednotkou na tvorbě modelu. Druhým závěrem, který lze z výsledků vyvodit je, že u metod MMVI a NNMVI vycházı́ výsledky za použitı́ pouze LJ v některých hodnotách, ale přeci jenom o něco málo lépe než při použitı́ AU. To mě trochu překvapilo, protože jsem očekával, že při použitı́ stejných jednotek (LJ) doplněných ještě o jiné, bude výsledek lepšı́ AU znatelně lepšı́, což se zde neprojevilo. Ale na druhou stranu je rozdı́l téměř zanedbatelný a ještě ne ve všech hodnotách LJ vedou. Kde je však jasně vidět lepšı́ výsledky za použitı́ AU je u předzpracovacı́ metody CMVI. Zde je už rozdı́l mezi použitı́m LJ a AU markantnějšı́, oproti rozdı́lu u metod MMVI a NNMVI. Tam byl rozdı́l v řádu desetin až setin, kdežto zde je rozdı́l i v řádu jednotek. Tady se projevilo využitı́ vı́ce jednotek k naučenı́ modelu daleko výhodnějšı́. Dalšı́ oblast, kde použitı́ AU je každopádně výhodnějšı́, je v mém přı́padě u metody NA a také u dat bez použitı́ jakékoliv předzpracovacı́ metody. Zde LJ selhávajı́ a jako nejdůležitějšı́ hodnotu berou NaN, na kterou naučı́ sı́t’, což se samozřejmě špatně a výsledek je hodnota NaN mı́sto čı́sla predikovaného věku. U metody NA k tomu došlo z toho důvodu, jak tato metoda funguje, protože ta nenahrazuje hodnotu NaN. Ta pouze změnı́ čı́selné hodnoty, ale NaN v datech pořád zůstává. Proto by se mohla projevit lépe až po jiné předzpracovacı́ metodě, která NaN z dat odstranı́ na čı́selnou hodnotu. Dalšı́ závěr z těchto čtyř tabulek by šel vyvodit z toho, která předzpracovacı́ metoda si lépe vedla a po jejı́m použitı́ a vytvořenı́ modelu, byla spočı́tána nejmenšı́ chyba. Na prvnı́ pohled to nenı́ úplně zřejmé, a proto jsem si spočı́tal průměrné hodnoty chyb každé metody pro všechna procentuálnı́ zastoupenı́ chybějı́cı́ch hodnot. A metoda s nejmenšı́ chybou je MMVI za použitı́ lineárnı́ch jednotek. Ale rozdı́ly jsou opravdu nepatrné, ty jsou až v řádu desetin. Opomenu-li metodu NA, která nenahrazuje chybějı́cı́ hodnoty a tak aplikovaná sama nedává moc dobré výsledky. Druhé nejlepšı́ výsledky dává stejná metoda (MMVI ) a za použitı́ všech jednotek. A jako pomyslnou třetı́ nejlepšı́ metodou je CMVI za použitı́ AU. Tı́mto jsem odzkoušel použitelné předzpracovacı́ metody každou zvlášt’ aplikovat na antropologická data s chybějı́cı́mi hodnotami a zjistit jak dopadnou a jak si s nahrazenı́m dat poradı́. Z výsledku je vidět, že chyba je většı́ než chyba u stejných metod neuronových sı́tı́ použitých na data bez nahrazenı́ hodnot za hodnoty neznámé. Což je dáno tı́m, že po nahra- 38 KAPITOLA 4. VÝSLEDKY EXPERIMENTŮ zenı́ některých hodnot předzpracovacı́mi metodami, se je nepodařilo nahradit lepšı́mi. A tak zůstávajı́ nezměněná antropologická data po těchto experimentech sama o sobě lepšı́. I když i tak dávajı́ velkou chybu. Z tabulky 4.12, kde jsou vidět výsledky metod GMDH a GAME, které byly spočı́tány dřı́ve, je z hodnot vidět, že dopadly téměř totožně jako u testů předzpracovacı́ch metod, ale s daty s nezměněnými hodnotami. Tı́m jsem si ověřil, že použité postupy a metody při výpočtech kvality předzpracovacı́ch metod byly správné a správně použity. Dalšı́ co je možné vyzkoušet, je využitı́ automatického použitı́ předzpracovacı́ch metod aplikovaných na data. Tuto funkčnost přidal do programu GAME Miloslav Pavlı́ček, jako výsledek své diplomové práce [Pavlı́ček, 08]. 4.4.2 Výsledky experimentů za použitı́ modulu pro automatické předzpracovánı́ dat Tento modul nebyl zatı́m testován na antropologických datech. Tak bude zajı́mavé srovnat výsledky jednotlivých metod zvlášt’, jak bylo provedeno výše, oproti tomuto modulu. Modul funguje tak, že po načtenı́ trénovacı́ch a testovacı́ch dat a nastavenı́m požadované konfigurace, začne šlechtit chromozóm, který by měl na konci procesu obsahovat nejlepšı́ posloupnost předzpracovacı́ch metod vhodných pro předložená data. Výsledný nejlepšı́ chromozóm se pak aplikuje na trénovacı́ data, na nichž nahradı́ hodnoty podle posloupnosti PM. Tı́m by mělo být dosaženo nejlepšı́ho nahrazenı́ hodnot v daných datech. Modul obsahuje funkčnı́ tyto předzpracovacı́ metody: • EP - Example preprocessor • NA - Noise adder • CMVI - Constant Missing Value Imputer • MMVI - Median Missing Value Imputer • NNMVI - Nearest Neighbor Missing Value Imputer • MIR - Missing Instances Remover Z výpisu je vidět, že obsahuje metody použité v sekci 4.4.1 a dále navı́c metody Example preprocessor - EP a Missing Instances Remover - MIR. Ty se mě při testovánı́ přı́liš neosvědčili. Obzvláště při práci se samostatnou metodou MIR došlo k tomu, že jak metoda odstraňuje chybějı́cı́ hodnoty, tak z množiny, kde chybı́ 10% hodnot odebrala tolik dat, že zůstalo jenom 50 řádků hodnot. Při použitı́ na 20% chybějı́cı́ch hodnot zbylo 5 hodnot. A při použitı́ na 30% NaN hodnot nezbyly žádné data. Což je také způsobeno tı́m, že jsem vždy aplikoval PM na všechny sloupce se vstupnı́mi hodnotami. To z toho důvodu, že jsem vycházel z předpokladu, že pokud bude někdo pracovat s daty, které dobře nezná a nevı́ které sloupce hodnot jsou důležité, tak použije metody na všechny. Modul pro automatické předzpracovánı́ dat (MAPD) pracuje inteligentněji a pokud aplikoval metodu MIR, tak jenom na některé sloupce a nepřišlo se o tak značnou část dat. Ale pro adekvátnı́ porovnánı́ jsem prvně použil modul se stejnými metodami, jako jsem testoval samostatně (tedy NA, CMVI, MMVI a NNMVI). To aby bylo možno porovnat výsledky metod použitých samostatně oproti tomuto automatickému předzpracovánı́. Pro zajı́mavost jsem pak ještě provedl testy se zapnutými všemi metodami. KAPITOLA 4. VÝSLEDKY EXPERIMENTŮ Units, model All units, 1N All units, ensemble (3N) Linear, N1 Linear, ensemble (N3) 0% 12,900 12,284 12,764 12,165 10% 12,933 12,503 12,818 11,679 39 20% 13,253 13,120 13,104 13,106 30% 14,011 13,656 13,311 13,374 40% 14,519 14,479 14,378 14,379 50% 14,726 14,867 15,550 14,922 Tabulka 4.17: Výsledky PM za použitı́ automatického modulu - použity vybrané metody Jediné co jsem měnil v nastavenı́ MAPD, byly PM které se majı́ aplikovat. Zbytek nastavenı́ jsem nechal defaultně, protože je nastaveno dostatečně silně. Opět testy proběhly za použitı́ lineárnı́ch a všech jednotek. Tvorbou jednoho modelu a ensemble modelu. V tabulce 4.17 jsou výsledky modulu za použitı́ metod jako v sekci 4.4.1. Pro každé data s různým procentuálnı́m zastoupenı́ nahrazených hodnot byl vyšlechtěn samostatný chromozóm, aby bylo dosaženo co nejlepšı́ho výsledku a daná sekvence PM obsažená v chromozómu, byla pro daná data co nejoptimálnějšı́. Každý test byl za stejného nastavenı́ spuštěn pětkrát a z těchto hodnot brán průměr. Samotná tvorba chromozómu je výpočetně časově náročná. Takže k času potřebnému na tvorbu neuronové sı́tě přibude ještě doba na šlechtěnı́ chromozómu. Z tabulky 4.17 je z výsledných hodnot chyby vidět, že i zde dopadly lépe ensemble modely. U nich je výsledná chyba menšı́ než pouze u tvorby jediného modelu. Opět se ukázalo, že průměrně jsou v řádu desetin lepšı́ výsledky za použitı́ pouze lineárnı́ch jednotek, ale rozdı́l je nepatrný. Oproti předchozı́m výsledkům PM je zde vidět, že všechny metody vykazujı́ hodně vyrovnané a podobné výsledky. Nejsou zde tak velké rozdı́ly chyby RMS mezi použitými jednotkami na tvorbu neuronové sı́tě. Což přičı́tám dobré adaptaci chromozómu na předložené data a tı́m dobře zvolené kombinaci PM. Pro dobré porovnánı́ hodnot jsem výsledky z tabulek 4.13 až 4.16, ze strany 36 zprůměroval do tabulky 4.18. Průměr je vždy brán ze všech PM pro daný sloupec procenta nahrazených hodnot. Výjimkou jsou hodnoty pro lineárnı́ jednotky spolu s metodou NA, kde výsledkem je hodnota NaN. Ty jsem samozřejmě do průměru počı́tat nemohl. Proto je zapotřebı́ si uvědomit, že pokud by zde metoda NA fungovala, dala by jistě horšı́ výsledky než dalšı́ tři PM. K tomuto závěru docházı́m podle výsledků chyby metody NA v tabulkách 4.13 a 4.14 za použitı́ AU. Zde je jasně vidět, že tato metoda dopadla nejhůře a dává velkou chybu, která se negativně projevı́ v průměru hodnot. Proto je průměr chyby za použitı́ lineárnı́ch jednotek o to nižšı́. Ale pro jistou představu nám toto postačı́. Při pohledu na výsledky je patrné, že modul pro automatické předzpracovánı́ si vedl lépe než samostatné metody zvlášt’. Dokonce předvedl lepšı́ výsledky oproti průměrným hodnotám LJ z tabulky 4.18, ve kterých neni započı́tána chyba za metodu NA. Což je důkazem toho, že modul pracuje správně a je schopen podávat kvalitnı́ výstupy. Dı́ky kombinaci a aplikaci vı́ce předzpracovacı́ch metod, na sloupce a hodnoty, kde to bylo vhodné, byl schopen MAPD podat lepšı́ výsledky, čı́mž se prokázala jeho dobrá funkčnost na antropologických datech. Pro zajı́mavost jsem ještě provedl výpočet chyby opět s použitı́m MAPD, ale s tı́m rozdı́lem, že jsem nechal zapnuty všechny funkčnı́ PM metody. Výsledky jsou v tabulce 4.19. Velký rozdı́l oproti použitı́ jenom vybraných předzpracovacı́ch metod nenı́, ale přeci jenom k lehkému zhoršenı́ došlo. Nejde o nic razantnı́ho, ale každopádně to ke zlepšenı́ nepomohlo. Proto metody 40 KAPITOLA 4. VÝSLEDKY EXPERIMENTŮ Units, model All units, 1N All units, ensemble (3N) Linear, N1 Linear, ensemble (N3) 10% 14,087 13,709 13,012 13,133 20% 14,435 14,083 13,583 13,434 30% 14,163 13,975 14,088 13,777 40% 15,141 15,027 15,210 14,971 50% 15,733 15,475 15,585 15,362 Tabulka 4.18: Průměrné hodnoty z tabulek 4.13 až 4.16 Units, model All units, 1N All units, ensemble (3N) Linear, N1 Linear, ensemble (N3) 10% 13,070 13,303 13,078 12,698 20% 12,706 13,065 12,691 12,588 30% 13,336 14,115 13,990 13,190 40% 14,307 14,098 14,533 13,931 50% 15,212 15,144 15,490 14,522 Tabulka 4.19: Výsledky PM za použitı́ automatického modulu - použity všechny metody Example preprocessor a Missing Instances Remover nepřinášejı́ vylepšenı́ výsledku na antropologických datech. Což mě potvrdilo to, že tyto metody na tyto data nejsou přı́liš vhodné. KAPITOLA 5. ZHODNOCENÍ VÝSLEDKŮ 41 5 Zhodnocenı́ výsledků Rád bych shrnul výsledky, ke kterým jsem v průběhů práce s antropologickými daty (AD) přišel. Zhodnotil úspěšnost jednotlivých metod a programů a pokusil se doporučit nejvhodnějšı́. Jako jednou z oblastı́ výzkumu bylo zhodnocenı́ AD pomocı́ klasifikačnı́ch metod (KM). Experimenty se podařilo vyhodnocovat podle stejné metriky a tak výsledky mohou být dobře porovnávány. Bylo také zachováno stejné rozdělenı́ ve třech skupinách T1, T2 a T3. Pro přehlednost jsem výsledky všech těchto metod shrnul to tabulky 5.1. V nı́ jsem ještě tučně zvýraznil hodnoty, které představujı́ největšı́ procento dobře zařazených jedinců, v porovnánı́ s ostatnı́mi metodami. Z nich je dobře vidět, že nejlépe si vedli KM: Radial Basis Function - RBF a Learning Vector Quantization - LVQ. A z těchto dvou ještě o něco lépe dopadla RBF. Zajı́mavé je, že RBF ohodnotila lépe Evropany, kdežto LVQ všechny kostry dohromady. Což je výhodnějšı́ v tom, pokud neprovádı́me žádné dalšı́ úpravy dat a selekce. Navı́c rozdı́ly mezi těmito dvěmi metodami nejsou veliké. Proto bych obě hodnotil jako kvalitnı́. Oproti těmto dvěma metoda perceptron dopadla o něco hůře. Z tabulky je vidět, že pouze dvě hodnoty má jako nejlépe ohodnocené. Což z nı́ dělá ”nejhoršı́”, ale neznamená to, že by úplně propadla. Dále je z výsledků patrné, že přesnějšı́ určovánı́ věku v menšı́ch skupinách je dosti nepřesné a výsledky jsou neuspokojivé. Ve skupině T1 se pohybujeme úspěšnost jenom kolem 41% dobře zařazených jedinců. Rozčleněnı́ na muže a ženy také nepřinášı́ přı́lišné zlepšenı́, spı́še by se dalo řı́ci, že zanedbatelné. Což také potvrzujı́ SOM mapy tı́m, že nevznikly žádné shluky podle pohlavı́. RBF Perce. LVQ Vytřı́děnı́ a klasifikace pouze Evropanů zlepšilo o něco málo úspěšnost, ale jenom v řádu jednotek procent. Kategorie T1 T2 T3 T1 T2 T3 T1 T2 T3 obě pohlavı́ 38,4% 68,6% 69,6% 37,4% 66,0% 67,6% 39,5% 67,6% 68,5% ženy 40,5% 68,6% 70,6% 35,0% 66,3% 65,3% 38,7% 68,0% 66,2% muži 35,8% 65,8% 65,3% 38,6% 66,4% 69,8% 43,4% 69,0% 70,8% Evropané obě pohlavı́ ženy 40,1% 46,6% 71,1% 71,5% 69,9% 73,3% 40,2% 35,2% 71,6% 70,8% 69,6% 62,9% 42,2% 36,1% 71,4% 73,5% 70,7% 64,3% muži 38,2% 72,0% 63,2% 41,3% 68,5% 75,0% 45,7% 72,2% 73,9% Tabulka 5.1: Porovnánı́ výsledků klasifikačnı́ch metod - tučně nejlepšı́ výsledek Dalšı́ oblastı́ byly metody shlukové analýzy - kde byly vyzkoušeny SOM mapy. Na nich bylo také zkoumáno, zda má pohlavı́ vliv na predikci věku, ale dospělo se ke stejnému závěru jako v KM, že rozdı́ly v pohlavı́ jsou zanedbatelné. Na mapách nevznikly žádné shluky. Dále se testovalo, zda je důležitým vstupnı́m faktorem národnost či kontinent na kterém zesnulý žil. I zde nevznikly žádné shluky podobných jedinců, což znamená méně podstatná vstupnı́ informace. To potvrzujı́ i KM, kde vyčleněnı́ Evropanů z celého souboru dat nevedlo k signifikantnı́mu vylepšenı́ úspěšnosti klasifikace. 42 KAPITOLA 5. ZHODNOCENÍ VÝSLEDKŮ Model GAME GAME GMDH GMDH Train 1 8,180 8,180 8,109 8,019 Test 1 11,788 11,770 12,324 12,592 Train 2 8,127 8,127 8,234 8,127 Test 2 12,127 12,127 12,038 11,806 Test avg 11,949 11,949 12,181 12,199 LJ AU Tabulka 5.2: Vybrané výsledky algoritmů GAME a GMDH - chyba RMS PM CMVI MMVI NNMVI CMVI MMVI NNMVI 10% 12,517 12,406 12,52 14,215 12,496 12,689 20% 12,995 12,857 13,444 14,398 12,338 13,566 30% 13,185 12,785 13,188 15,844 12,253 13,235 40% 14,007 13,988 14,901 15,584 14,516 14,813 50% 15,12 14,195 15,341 16,63 14,363 15,094 Průměr 13,565 13,246 13,879 15,334 13,193 13,880 Tabulka 5.3: Vybrané nejlepšı́ PM za použitı́ ensemble techniky - tučně hodnoty s nejmenšı́ chybou; AU - všechny jednotky, LJ - lineárnı́ jednotky A jako poslednı́ se na SOM mapách pokoušelo odpovědět na otázku, zda jsou AD vhodná k predikci věku zesnulého. V některých mı́stech mapy se objevily tři nevýrazné shluky. Jeden reprezentoval jedince staré třicet až padesát let. Dalšı́ kostry mladšı́ padesáti let a třetı́ oblast staršı́ padesáti let. Ale i v těchto se objevovaly jedinci jiného věku. Což ukazuje na velkou zašuměnost a nepřesnost AD. Predikce stářı́ kostry z těchto dat je velmi nepřesná. Ke stejným výsledkům se došlo za použitı́ metod lineárnı́ regrese (GMDH a GAME). Zde se však netestovalo padnutı́ do určité věkové skupiny, ale pokoušelo se zde přesně určit věk kostry. Výsledky však prokázaly, že ani těmito metodami z AD nejde dostat lepšı́ výsledky. Nejlepšı́ hodnoty zobrazuje tabulka 5.2. Zde jsou výsledky v podobě chyby RMS podle vzorce 4.2. Tyto výsledné hodnoty ukazujı́ na nepřesnost určovánı́ výsledné veličiny, což je zde věk. Vykazujı́ vysoký šum, který do predikce stářı́ vnášı́ chyby. Proto je vhodné vyzkoušet různé předzpracovacı́ metody, zda ty by nevyčistily data od těchto ”špatných” hodnot a po jejich aplikovánı́ bychom nedosáhli lepšı́ch výsledků. Za tı́mto účelem jsem otestoval několik PM, spolu s modulem pro automatické předzpracovánı́ dat. Chtěl jsem také vyzkoušet kvalitu předzpracovacı́ch metod, a která z nich je nejvhodnějšı́. A nakonec samostatné metody porovnat s MAPD, zda ten dokáže dát lepšı́ výsledky. Do tabulky 5.3 jsem vybral ty metody, které dopadly nejlépe a to na algoritmech za použitı́ ensemble techniky, která dávala lepšı́ výsledky než jeden model samotný. Tučně jsou vždy zvýrazněny ty hodnoty, které měly menšı́ chybu, bud’ za použitı́ AU nebo LJ. Na konec jsem vložil průměr z hodnot v daném řádku. Z výsledků je vidět, že nejlépe dopadla metoda MMVI. Za jejı́ho použitı́ se podařilo dosáhnout nejmenšı́ chyby. Druhou nejlepšı́ byla metoda CMVI. Výsledky MAPD jsou shrnuty v tabulce 4.17 v předchozı́ kapitole. Ty když se porovnajı́ s výsledky průměrných hodnot PM, jako je tomu v tabulce 4.18, tak dojdeme k závěru, že automatické předzpracovánı́ dává menšı́ chybu. Když ale porovnáme MAPD s hodnotami chyb jenom u metody MMVI, která dopadla samostatně nejlépe, tak dojdeme ke zjištěnı́, že ta dává KAPITOLA 5. ZHODNOCENÍ VÝSLEDKŮ Obrázek 5.1: Ukázka grafu trénovacı́ch dat pomocı́ 2D regrese 43 44 KAPITOLA 5. ZHODNOCENÍ VÝSLEDKŮ Obrázek 5.2: Rozptyl výsledných hodnot MAPD - vybrané PM metody samo o sobě lepšı́ výsledky. Otázkou ale zůstává, jestli to bude platit obecně na jakýchkoliv datech, což si nemyslı́m. Proto výhoda MAPD spočı́vá v tom, že nemusı́me znát tak dobře daná data a modul za nás předpřipravı́ optimálnı́ posloupnost předzpracovacı́ch metod. Které by nám měly dát po aplikovánı́ na data kvalitnı́ výsledek. Zkoušel jsem i PM na data, do kterých nebyla záměrně zanesena neznámá hodnota, tedy neupravené trénovacı́ data. Chtěl jsem zjistit, jestli by nám předzpracovánı́ dat nedalo ještě lepšı́ hodnoty. To se ale bohužel nestalo. Když jsem se pokoušel aplikovat PM po jedné, tak ty na datech bez chybějı́cı́ch hodnot nic nenahradily a metoda NA vnesla ještě většı́ chybu. Kde se projevily PM bylo, ale u modulu pro automatické předzpracovánı́ dat. Tam byla vytvořena sekvence PM, které se aplikovaly. Ale bohužel z výsledku v tabulce 4.17 je ve sloupci pro 0% nahrazených hodnot vidět, že výsledky nejsou lepšı́ oproti výsledkům z tabulky 5.2. Což vede k závěru, že AD k odstraněnı́ šumu v datech předzpracovacı́ metody přı́liš nepomohly. Na obrázku 5.2 jsou zobrazeny rozptyly výsledných hodnot z pěti měřenı́ pro modul MAPD, kde jsou použity jenom některé PM. Rozptyl popisuje hodnoty z tabulky 4.17. Je vidět, že rozptyl nenı́ zrovna nejmenšı́. Rozdı́l rozptylu mezi použitı́m všech (AU) nebo lineárnı́ch jednotek (LJ) nenı́ nijak veliký. V obou přı́padech jsou si rozptyly podobné. Zobrazil jsem ještě rozptyl výsledných hodnot pro nejlepšı́ předzpracovacı́ metodu MMVI, za použitı́ ensemble techniky, na obrázku 5.3. Opět jde o rozptyl z pěti hodnot z měřenı́. Zde už lze pozorovat trochu většı́ rozptyl za použitı́ všech jednotek (AU). K dosaženı́ menšı́ho rozptylu a přesnějšı́ průměrné hodnoty by bylo zapotřebı́ měřenı́ opakovat daleko vı́cekrát. To je ale bohužel časově nadmı́ru náročné. Myslı́m si, že mé výsledky dávajı́ dostatečnou přesnost, pro porovnávánı́ jednotlivých metod a algoritmů mezi sebou a vyvozenı́ závěrů. KAPITOLA 6. ZÁVĚR 45 Obrázek 5.3: Rozptyl výsledných hodnot MMVI 6 Závěr Myslı́m si, že se mě touto pracı́ podařilo dobře zmapovat různé metody a algoritmy vhodné pro analýzu antropologických dat. Snažil jsem se je popsat nejprve teoreticky, ukázat jak fungujı́ a čeho jsme za jejich pomoci schopni dosáhnout. Poté jsem je testoval a experimentálně zkoušel dostat z nich co nejlepšı́ výsledky na antropologických datech. Snažil jsem se také shromáždit, utřı́dit a porovnat výsledky z jiných pracı́ a doporučit ty z nich, jež prokázaly nejlepšı́ výsledky. Podařilo se mi otestovat různé předzpracovacı́ metody a určit jejich úspěšnost. Z výsledků jsem také určil nejlepšı́ pro použitı́ na AD. Následně jsem otestoval modul pro automatické předzpracovánı́ dat a odzkoušel ho tak na reálných datech. Výsledky se pak daly pěkně porovnat s použitı́m jenom PM samostatných. Vyhodnocenı́ těchto měřenı́ jsou vidět v předchozı́ch kapitolách. Ukázalo se, že předzpracovacı́ metody jsou vhodné pro úpravu dat a i MAPD ukázal dobré výsledky. Bohužel antropologická data i po těchto vylepšenı́ch nám nedávajı́ lepšı́ výsledky. Což poukázalo na velké zašuměnı́ dat a velkou chybu, kterou v sobě nesou. To také potvrdily všechny metody obsažené v této práci. At’ už se jednalo o metody lineárnı́ regrese, klasifikačnı́ metody nebo metody shlukové analýzy. Všechny dospěly ke stejným závěrům a ukazujı́ na obtı́žnost spolehlivě predikovat věk koster z těchto dat. 46 KAPITOLA 6. ZÁVĚR KAPITOLA 7. LITERATURA 47 7 Literatura [Devlin, 97] Devlin, B.: Data Warehouse from Architecture to Implementation Addison-Wesley. Reading, Massachusetts 1997 [Fayyad, 96] Fayyad, U.M., G. Piatetsky-Shapiro, P. Smyth: From Data Mining to Knowledge Discovery: An Overview. In : Fayyad, U.M. et al: Advances in Knowledge Discovery and Data Mining. California 1996 [Novák, 06] Novák, J.: GMDH networks the KnowledgeMiner software Bakalářská práce, ČVUT, Praha 2006 [Macek, 06] Macek, O.: Self-organizing maps (SOM) Bakalářská práce, ČVUT, Praha 2006 [Kordı́k, 05] Kordı́k P.: Group of Adaptive Models Evolution Technical Report DCSE-DTP-2005-07, CTU Prague 2005. [Kordı́k, Šnorek, 05] Kordı́k P., Šnorek M.: Ensemble Techniques for Credibility Estimation of GAME Model, Artificial Neural Networks: Formal Models and Their Applications - ICANN 2005 Berlin: Springer, 2005 [Augustýn, 07] Augustýn, M.: Úloha 2 z předmětu 36NAN - Neuronové sı́tě a neuropočı́tače - Antropologická data Semestrálnı́ práce z předmětu 36NAN, ČVUT, Praha 2007 [Prchlı́k, 07] Prchlı́k, M.: Druhá semestrálnı́ práce z předmětu 36NAN Semestrálnı́ práce z předmětu 36NAN, ČVUT, Praha 2007 [Bruchanov, 07] Bruchanov, M.: Klasifikace antropologických dat Semestrálnı́ práce z předmětu 36NAN, ČVUT, Praha 2007 [Gálet, 07] Gálet, M.: Grafická nadstavba pro systém zı́skávánı́ znalostı́ Diplomová práce, VUT, Brno 2007 [Pavlı́ček, 08] Pavlı́ček, M.: Modul pro automatické předzpracovanı́ dat Diplomová práce, ČVUT, Praha 2008 [Guyon, Elisseeff, 03] Guyon I., Elisseeff A.: An introduction to variable and feature selection Journal of machine learning research, 3(1):1157–1182, 2003 [Han, Kamber, 06] Han J., Kamber M.: Data Mining: Concepts and Techniques. Second edition. Elsevier Inc., 2006 [Zelenka, 07] Zelenka, P.: Předzpracovánı́ dat v programu YALE Diplomová práce, ČVUT, Praha 2007 [GMDH web] Výukové pásmo na téma GMDH http://neuron.felk.cvut.cz/courseware/data/chapter/myska2000/ [MOON web] Learning Vector Quantization (LVQ) http://moon.felk.cvut.cz/~ pjv/Jak/ neur/n607/uvod.html 48 KAPITOLA 7. LITERATURA [gerstner web] Předzpracovánı́ dat pro data mining: metody a nástroje http://gerstner.felk.cvut.cz/biolab/33ZUI/tut-datamining.ppt [GMDH web2] Group method of data handling webpage htt://www.gmdh.net [CTU] Školnı́ stránka skupiny Neuronových sı́tı́ http://service.felk.cvut.cz/courses/36NAN/index.html [VSB web] RBF sı́tě (Radial Basis Function) http://homen.vsb.cz/~ min038/rbf/rbf1.html#dalsi fce [Perceptron] Jeden perceptron - klasifikace http://neuron.felk.cvut.cz/courseware/data/chapter/36nan028/s04.html [SOM] Samoučı́cı́ se neuronová sı́t’ - SOM, Kohonenovy mapy http://automatizace.hw.cz/mereni-a-regulace/ART244-samoucici-se-neuronova-sit--som-kohonenovy-mapy.html [SOM-PAK] Použitı́ programového balı́ku SOM PAK pro samoorganizujı́cı́ neuronové sı́tě (mapy) http://www.jakubholy.net/school/som pak.html DODATEK A. SEZNAM POUŽITÝCH ZKRATEK A Seznam použitých zkratek AD - Antropologická data AU - All units - všechny jednotky CMVI - Constant Missing Value Imputer EP - Example preprocessor ET - Ensemble technika GAME - Group of Adaptive Models Evolution GMDH - Group Method of Data Handling ICA - Independent Component Analysis KM - Klasifikačnı́ metody LJ - Linear jednotky LVQ - Learning Vector Quantization MAPD - Modul pro automatické předzpracovánı́ dat MIR - Missing Instances Remover MMVI - Median Missing Value Imputer NA - Noise adder NNMVI - Nearest Neighbor Missing Value Imputer PCA - Principal Component Analysis PM - Předzpracovacı́ metoda RBF - Radial Basis Function RMS - Root mean squared error SOM - Self-Organizing Maps SOM-PAK - Self-Organizing Map Program Package 49 50 DODATEK A. SEZNAM POUŽITÝCH ZKRATEK DODATEK B. OBSAH PŘILOŽENÉHO CD B Obsah přiloženého CD | | | | | | | - readme.txt - text/ - - DP Jakub Novak.pdf - data/ readme.txt - obsahuje popis jednotlivých adresářů a co se v nich nacházı́ text/ - Složka obsahujı́cı́ samotnou diplomovou práci data/ - data použitá pro výpočty 51
Podobné dokumenty
Vizualizace jako nástroj studia chování modelů přírodních systémů
mi svým optimismem vždy dokázala dodat energii pro další práci.
iii
popis SOMPak - Pavel Kubát
quantization). Tyto sítě víceméně pouze rozšiřují původní Kohenův algoritmus o „učitele“,
tedy pro testovací data se síť zpětně dozvídá i správný výsledek. Z tohoto důvodu je síť
rozšířena o inform...
Výroční zpráva Ústavu informatiky AV ČR za rok 2001
pracujících ve spojitém čase (B). Byl sestrojen pokročilý transakční model a aplikován
v obecné komponentové architektuře, a to v sémantice i syntaxi transakcí (C). Byl
prozkoumán vztah mezi metodo...
BAKAL´AˇRSK´A PR´ACE
z prostředků umožňujı́cı́ch náhled na zpracovánı́ a analýzu EEG záznamu, nebo libovolného biomedicı́nského signálu obecně, za použitı́ grafického uživatelského prostředı́.
Může b...
Pravděpodobnostní rozhodování
Střednı́ riziko r(δ) klasifikátoru δ odpovı́dá relativnı́ četnosti jeho nesprávných klasifikacı́.
Definujme empirické střednı́ riziko rE (δ) (též: “trénovacı́ chyba”) jako relativnı́ če...