6 Vyhodnocení výsledků



Podobné dokumenty
ANALÝZA A KLASIFIKACE DAT

ZÍSKÁVÁNÍ ZNALOSTÍ Z DATABÁZÍ

Vytěžování znalostí z dat

ZÍSKÁVÁNÍ ZNALOSTÍ Z DATABÁZÍ

Analýza dat pomocí systému Weka, Rapid miner a Enterprise miner

Miroslav Čepek. Fakulta Elektrotechnická, ČVUT. Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti

Strojové učení Marta Vomlelová

Statistická teorie učení

Pravděpodobnost v závislosti na proměnné x je zde modelován pomocí logistického modelu. exp x. x x x. log 1

Úloha - rozpoznávání číslic

2 Zpracování naměřených dat. 2.1 Gaussův zákon chyb. 2.2 Náhodná veličina a její rozdělení

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze

Ing. Petr Hájek, Ph.D. Podpora přednášky kurzu Aplikace umělé inteligence

Katedra kybernetiky laboratoř Inteligentní Datové Analýzy (IDA) Katedra počítačů, Computational Intelligence Group

Neuronové časové řady (ANN-TS)

Rozhodovací pravidla

DATA MINING KLASIFIKACE DMINA LS 2009/2010

Analytické procedury v systému LISp-Miner

Testování modelů a jejich výsledků. Jak moc můžeme věřit tomu, co jsme se naučili?

Obsah přednášky Jaká asi bude chyba modelu na nových datech?

Metody analýzy modelů. Radek Pelánek

Analytické znaky laboratorní metody Interní kontrola kvality Externí kontrola kvality

Základy vytěžování dat

RNDr. Eva Janoušová doc. RNDr. Ladislav Dušek, Dr.

Dobývání znalostí. Doc. RNDr. Iveta Mrázová, CSc. Katedra teoretické informatiky Matematicko-fyzikální fakulta Univerzity Karlovy v Praze

Projekční algoritmus. Urychlení evolučních algoritmů pomocí regresních stromů a jejich zobecnění. Jan Klíma

Jana Vránová, 3. lékařská fakulta UK

Pokročilé neparametrické metody. Klára Kubošová

Lineární regrese. Komentované řešení pomocí MS Excel

Hodnocení klasifikátoru Test nezávislosti. 14. prosinec Rozvoj aplikačního potenciálu (RAPlus) CZ.1.07/2.4.00/

Kombinování klasifikátorů Ensamble based systems

5 Vícerozměrná data - kontingenční tabulky, testy nezávislosti, regresní analýza

Regresní a korelační analýza

Kybernetika a umělá inteligence, cvičení 10/11

Regresní analýza 1. Regresní analýza

Pojem a úkoly statistiky

RNDr. Eva Janoušová doc. RNDr. Ladislav Dušek, Dr.

Regresní a korelační analýza

Testování modelů a jejich výsledků. Jak moc můžeme věřit tomu, co jsme se naučili?

Rozdělování dat do trénovacích a testovacích množin

Porovnání dvou výběrů

Korelační a regresní analýza. 1. Pearsonův korelační koeficient 2. jednoduchá regresní analýza 3. vícenásobná regresní analýza

Pokročilé neparametrické metody. Klára Kubošová

Získávání znalostí z dat

Připomeň: Shluková analýza

ÚLOHY S POLYGONEM. Polygon řetězec úseček, poslední bod je totožný s prvním. 6 bodů: X1, Y1 až X6,Y6 Y1=X6, Y1=Y6 STANOVENÍ PLOCHY JEDNOHO POLYGONU

Testování modelů a jejich výsledků. tomu, co jsme se naučili?

Pravděpodobně skoro správné. PAC učení 1

1 Linearní prostory nad komplexními čísly

EKONOMETRIE 7. přednáška Fáze ekonometrické analýzy

Intervalový odhad. Interval spolehlivosti = intervalový odhad nějakého parametru s danou pravděpodobností = konfidenční interval pro daný parametr

DOBÝVÁNÍ ZNALOSTÍ Z DATABÁZÍ

Tabulka 1. Výběr z datové tabulky

4EK213 LINEÁRNÍ MODELY

Úvod do problematiky měření

Jana Vránová, 3.lékařská fakulta UK, Praha. Hypotézy o populacích

1 Tyto materiály byly vytvořeny za pomoci grantu FRVŠ číslo 1145/2004.

IBM SPSS Decision Trees

Algoritmy a struktury neuropočítačů ASN P9 SVM Support vector machines Support vector networks (Algoritmus podpůrných vektorů)

Statistické zpracování naměřených experimentálních dat za rok 2012

INDUKTIVNÍ STATISTIKA

Statistické metody v ekonomii. Ing. Michael Rost, Ph.D.

Přednáška 13 Redukce dimenzionality

Intervalové odhady. Interval spolehlivosti pro střední hodnotu v N(µ, σ 2 ) Interpretace intervalu spolehlivosti. Interval spolehlivosti ilustrace

Jana Vránová, 3. lékařská fakulta, UK Praha

Regresní a korelační analýza

= = 2368

Usuzování za neurčitosti

Intervalové odhady. Interval spolehlivosti pro střední hodnotu v N(µ, σ 2 ) Interpretace intervalu spolehlivosti. Interval spolehlivosti ilustrace

vzorek vzorek

TECHNICKÁ UNIVERZITA V LIBERCI

StatSoft Jaký je mezi nimi rozdíl?

Segmentace bankovních zákazníků algoritmem k- means

Získávání dat z databází 1 DMINA 2010

Vzdělávací oblast: Matematika a její aplikace Vzdělávací obor: Matematický kroužek pro nadané žáky ročník 9.

Cvičení 12: Binární logistická regrese

UNIVERZITA OBRANY Fakulta ekonomiky a managementu. Aplikace STAT1. Výsledek řešení projektu PRO HORR2011 a PRO GRAM

Regresní a korelační analýza

Regresní a korelační analýza

Regrese. používáme tehdy, jestliže je vysvětlující proměnná kontinuální pokud je kategoriální, jde o ANOVA

Plánování experimentu

7 Kardinální informace o kritériích (část 1)

Chybějící atributy a postupy pro jejich náhradu

Vytěžování znalostí z dat

POPISNÁ STATISTIKA Komentované řešení pomocí programu Statistica

Popisná statistika. Komentované řešení pomocí MS Excel

Obsah. Seznam obrázků. Seznam tabulek. Petr Berka, 2011

Dobývání a vizualizace znalostí. Olga Štěpánková et al.

Pravděpodobnost a matematická statistika Doc. RNDr. Gejza Dohnal, CSc. dohnal@nipax.cz

1.1 Příklad z ekonomického prostředí 1

fakulty MENDELU v Brně (LDF) s ohledem na disciplíny společného základu (reg. č. CZ.1.07/2.2.00/28.

Simulace. Simulace dat. Parametry

STATISTICKÉ ODHADY Odhady populačních charakteristik

veličin, deskriptivní statistika Ing. Michael Rost, Ph.D.

Strojové učení Marta Vomlelová

AVDAT Mnohorozměrné metody, metody klasifikace

Tvar dat a nástroj přeskupování

Úvodem Dříve les než stromy 3 Operace s maticemi

Transkript:

6 Vyhodnocení výsledků Důležitým krokem v celém procesu dobývání znalostí je interpretace a evaluace nalezených znalostí. V případě deskriptivních úloh je hlavním kritériem novost, zajímavost, užitečnost a srozumitelnost. Tyto charakteristiky úzce souvisejí s danou aplikační oblastí, s tím, co přinášejí expertům a koncovým uživatelům. Z tohoto pohledu můžeme hovořit o zřejmých znalostech, které jsou ve shodě se zdravým selským rozumem příkladem může být pravidlo, že pokud měl pacient problémy v těhotenství, tak se jednalo o ženu; takovéto znalosti mohou v expertovi vzbudit pochybnost o smysluplnosti dobývání znalostí odborníkovi na KDD ale potvrzují, že použitý algoritmus funguje tak jak má, zřejmých znalostech, které jsou ve shodě se znalostmi experta z dané oblasti příkladem může být pravidlo, že pokud se účet klienta banky pohybuje v záporném zůstatku, má tento klient problémy se splácením úvěru; takovéto znalosti byť nepřinášejí nic nového, ukazují expertovi, že použitá metoda je schopna nalézat v datech znalosti, nových, zajímavých znalostech, které přinášejí nový pohled toto jsou ideální znalosti, které expert hledá, znalostech, které musí expert podrobit bližší analýze, neboť není zcela jasné co znamenají i tyto znalosti mohou být pro experta přínosem znalosti, které jsou v rozporu se znalostmi experta takováto pravidla, zachycující nejspíše nějaké nahodilé koincidence, expert patrně vyloučí; ovšem pozor, kdoví, jestli se naopak nejedná o zásadní nový pohled na celou oblast. Hodnocení deskriptivních znalostí nezávisle na aplikační oblasti se opírá především o různé numerické parametry 1. Zde je ale třeba zdůraznit, že ne vše, co je v datech přesvědčivě prokázáno, má pro experta význam (viz výše uvedené členění). Pomocí pro hodnocení znalostí ve smyslu porozumění znalostem jsou pak různé vizualizační metody letmo zmíněné v příslušné podkapitole. V této části se tedy budeme věnovat především vyhodnocením znalostí pro úlohy typu klasifikace a predikce. 6.1 Testování modelů Při hledání znalostí pro potřeby klasifikace se obvykle postupuje metodou učení s učitelem. Vychází se tedy z toho, že jsou k dispozici příklady, o kterých víme, do které třídy patří. Metody evaluace jsou pak založeny na testování nalezených znalostí na datech, na možnosti porovnat, jak dobře se nalezené znalosti shodují s informací od učitele. Pro testování se nabízí celá řada variant podle toho, jaká data použijeme pro učení a jaká pro testování: 1 V případě asociačních pravidel nás zajímá např. spolehlivost a podpora. 1

testování v celých trénovacích datech křížová validace (cross-validation) leave-one-out bootstrap testování na testovacích datech. Testování v datech použitých pro učení (celá trénovací data) má nejmenší vypovídací schopnost o tom, jak budou nalezené znalosti použitelné pro klasifikování nových případů. Často totiž může dojít k přeučení (overfitting), kdy nalezené znalosti vystihují spíše náhodné charakteristiky trénovacích dat a neodhalí to podstatné, co lze použít pro generalizaci. Trénovací data tedy nejsou příliš vhodná pro testování nalezených znalostí 2 a proto se obvykle používají data jiná. Otázkou je, jak taková data získat. Jeden problém může být, že dat je k dispozici málo, jiný problém je, že je žádoucí, aby data použitá pro testování se podobala datům trénovacím 3. Oba problémy umožní řešit různé způsoby výběru trénovacích a testovacích dat. Při testování metodou křížová validace se data dopředu rozdělí např. na 10 částí tak, že vždy jedna desetina se vyjme pro testování a zbylých devět desetin se použije pro učení. Celý tento postup se zopakuje desetkrát a výsledek testování se zprůměruje. Proto se tomuto způsobu testování říká desetinásobná křížová validace (10 fold cross-validation). Variantou tohoto přístupu je metoda leave-one-out. Z dat, která jsou k dispozici se vyjme jeden příklad pro testování a zbylá data se použijí pro učení. Toto se opakuje tolikrát, kolik příkladů máme. Vznikne tedy n souborů znalostí, které se otestují na n příkladech 4. Výsledek testování dává odhad, jak by se znalosti získané ze všech dostupných n příkladů chovaly při klasifikování příkladů neznámých. V případě že počet příkladů n je veliký (tisíce, desetitisíce), vypadá představa n běhů algoritmu poněkud absurdně. Naštěstí lze leave-one-out test implementovat efektivněji. Tak např. v algoritmu ESOD [Ivánek, Stejskal, 1988] se využívá toho, že při výpočtu platnosti implikace Ant Class pro celá data můžeme spočítat i platnosti pro případ, že z dat vyjmeme jeden příklad. Je-li a a + b platnost implikace Ant Class pro celá data 5, je a a + b - 1 platnost implikace Ant Class pro případ, že vyjmutý příklad splňoval Ant a nesplňoval Class, a 2 Výjimku z tohoto pravidla představuje metoda pesimistického odhadu na základě trénovacích dat kterou používá Quinlan ve svém C4.5. Pro každý list stromu počítá počet všech pokrytých příkladů (analogie s hodnotou a+b ze čtyřponí tabulky) a počet chybně pokrytých příkladů (analogie s hodnotou b). Výskyt chybné klasifikace pak chápe jako náhodný jev (pozorovaný na vzorku příkladů pokrytých listem), který se řídí binomickým rozdělením. Pro zvolenou hladinu významnosti CF pak spočítá horní (pesimistický) odhad pravděpodobnosti výskytu chybné klasifikace U CF (a,b). Odhad počtu chybných klasifikací v uvažovaném listu je pak U CF (a,b) (a+b). Součet těchto počtů přes všechny listy je pak odhadem počtu chyb celého stromu. 3 V tom smyslu, že rozdělení příkladů do tříd v testovacích datech se řídí stejnými zákonitostmi jako rozdělení příkladů do tříd v datech trénovacích, jinými slovy, že je stejný podíl tříd v obou vzorcích. 4 Jde tedy vlastně o n-fold cross-validation. 5 Vycházíme z toho, že implikace Ant Class má v celých datech čtyřpolní tabulku Class Ant a r b Ant c r d Class

a - 1 a + b - 1 je platnost implikace Ant Class pro případ, že vyjmutý příklad splňoval Ant i Class. Obě uvedené varianty platnosti tedy pokrývají všech n podob trénovacích dat. Pokud je uvažujeme současně, získáme při jednom průchodu daty informace potřebné pro všech n variant. Pro vlastní algoritmus tvorby pravidel 6 to tedy znamená, že kromě implikací (a pravidel) pro plná data paralelně pracujeme s implikacemi (a pravidly) zohledňujícími všechny možnosti pří leave-one-out testu. Při metodě zvané bootstrap se příklady vybrané pro učení mohou opakovat. Na rozdíl od křížové validace, kdy jeden příklad se použije buď pro učení nebo pro testování, zde se tentýž příklad může pro učení vybrat několikrát. Máme-li opět k dispozici n příkladů, n-krát provedeme výběr s navracením, abychom získali n příkladů pro učení. Pravděpodobnost, že příklad bude vybrán je 1/n, pravděpodobnost že vybrán nebude je 1-1/n. Při n opakováních je pravděpodobnost, že příklad vybrán nebude n 1 lim n 1 = e 1 = 0. 368. n Pro rozumě velká data se tedy vybere zhruba 63,2% příkladů pro učení a 36.8% příkladů pro testování. V trénovací množině se budou příklady opakovat, to co zbude se použije při testování. Tomuto poměru zhruba odpovídá náhodný výběr 75% příkladů pro učení a 25% příkladů pro testování 7. Na rozdíl od bootstrapu se opět každý příklad použije jen jednou; pro učení nebo pro testování. Na rozdíl od křížové validace se učení i testování provede jen jednou. Ať tak či onak, cílem testování je určit, v kolika případech se klasifikátor shoduje s učitelem a v kolika případech se dopustil chyb. Tyto údaje bývá zvykem zachycovat v tzv. matici záměn (confusion matrix), viz Tab. 1. V matici jsou ve sloupcích uvedeny informace o tom, jak postupoval při klasifikaci systém využívající nalezené znalosti, v řádcích informace o tom, jak to má (alespoň jak učitel říká) být. Tab. 1 zachycuje situaci, kdy jde o klasifikaci do dvou tříd, + a - 8. TP (správně positivní, true positive) je počet příkladů, které systém správně zařadil do třídy +, FP (falešně positivní, false positive) je počet příkladů, které systém chybně zařadil do třídy + (patří do třídy - ) TN (správně negativní, true negative) je počet příkladů, které systém správně zařadil do třídy -, a FN (falešně negativní, false negative) je počet příkladů, které systém nesprávně zařadil do třídy - (patří do třídy + ). Klasifikace systémem Správné zařazení + - + TP FN - FP TN Tab. 1 Matice záměn 6 Jde o algoritmus ESOD popsaný na jiném místě knihy. 7 Jedná se o empiricky doporučený poměr trénovacích a testovacích dat. 8 V případě více tříd je vhodnější zvětšit počet sloupců i řádků tak, aby odpovídal počtu tříd. Často nás totiž nezajímá pouze prosté zjištění, že systém udělal chybu ale i to, kterou chybu udělal. 3

Matice záměn sleduje pouze počty správně a nesprávně zařazených příkladů. V řadě případů může být důležitý i typ chyby, kterého se systém dopustil (FP vs. FN). Jestliže se systém, který hodnotí bonitu klientů banky za účelem rozhodnutí o úvěru dopustí chyby, nastane buď situace, že doporučí půjčku klientovi, který nesplatí, nebo situace, že zamítne půjčku klientovi, který by ji splatil. V prvním případě tak banka prodělá, ve druhém případě banka nevydělá. První chyba je z hlediska banky jistě závažnější 9. Skutečnost, že různé chyby jsou různě závažné, lze do testování (i učení) zahrnout pomocí tzv. matice cen (cost matrix). Zde se uvede, jaká je cena za různé typy rozhodnutí; čím horší chyba, tím vyšší cena 10. Při hodnocení znalostí se tedy nemusí brát do úvahy prostý počet chybných rozhodnutí, ale i cena těchto chyb (ztráta, způsobená uživateli). 6.1.1 Celková správnost Celková správnost (overall accuracy) resp. úspěšnost (succesfulness), nebo komplementární celková chyba (overall error) jsou nejjednodušší charakteristiky toho, jak jsou získané znalosti kvalitní. Celková správnost se spočítá jako relativní počet správných rozhodnutí systému Acc = TP + TN TP + TN + FP + FN, celková chyba se spočítá jako relativní počet chybných rozhodnutí systému Err = FP + FN TP + TN + FP + FN. Celková správnost by měla být v intervalu [Acc def, Acc max ], kde Acc def je správnost systému, který všchny příklady přiřadí k majoritní třídě 11, a Acc max je maximální správnost dosažitelná pro daná data 12. V případě, že nás při testování zajímá jen počet správných resp. nesprávných rozhodnutí systému, je Err = 1 Acc. Pokud bereme do úvahy i matici cen, výše uvedená rovnost neplatí a je vhodnější použít jako kritérium celkovou chybu spočítanou tak, že se počty chybných rozhodnutí (FP, FN) vynásobí cenou za příslušný typ chyby: Err = FP * c(p,n) + FN * c(n,p), kde c(p,n) je cena zařazení negativního příkladu do třídy + a c(n,p) je cena zařazení pozitivního příkladu do třídy -. 9 Ve statistice se v podobných situacích používá pojem chyba prvního druhu a chyba druhého druhu. 10 Správné rozhodnutí (TP, TN) má obvykle cenu 0. 11 Znalosti tohoto systému jsou např. tvořeny pouze implicitním (default) pravidlem. 12 V případě, že v datech nejsou kontradikce (příklady se stejnými hodnotami vstupních atributů které se liší v přiřazení ke třídě), je tato správnost 1 (100%). V případě kontradikcí je tato správnost nižší neboť systém zařadí všechny stejně popsané případy to téže třídy.

6.1.2 Správnost pro jednotlivé třídy V případě, že třídy jsou v datech rozloženy výrazně nerovnoměrně (např. pouze 5% klientů banky je podezřelých, zbylých 95% je v pořádku), bude celková správnost dávat zkreslený obraz o nalezených znalostech. 95% celková správnost může znamenat, že jsme nerozpoznali žádného podezřelého klienta (95% je implicitní správnost), nebo že jsme rozpoznali všechny podezřelé klienty (a dopustili se chyb při rozpoznávání klientů spolehlivých). V takové situaci je vhodnější sledovat správnost (resp. chybu) pro jednotlivé třídy: Acc + = TP TP + FP Acc - = TN TN + FN 6.1.3 Přesnost a úplnost Přesnost a úplnost (precision and recall) jsou pojmy používané v oblasti vyhledávání informací. Hledáme-li např. na webu nějaké dokumenty týkající se určitého tématu (třeba pomocí vyhledávače jako je altavista), pak : 1. ne všechny nalezené dokumenty se týkají tématu, 2. určitě jsme nenalezli vše co je o tématu k dispozici. Přesnost nám říká, kolik nalezených dokumentů se skutečně týká daného tématu a úplnost nám říká, kolik dokumentů týkajících se tématu jsme nalezli. Tyto míry shody lze použít i pro hodnocení znalostí: TP Přesnost = TP + FP Úplnost = TP TP + FN Jak je vidět, je přesnost totéž jako správnost pro danou třídu. Někdy se používá souhrnná charakteristika F-míra 2 * přesnost * úplnost 2TP F = přesnost + úplnost = 2TP + FP + FN 6.1.4 Sensitivita a specificita Sensitivita a specificita (sensitivity a specificity) jsou charakteristiky převzaté z mediciny. V případě nasazení nějakého nového léku nás zajímá, u kolika nemocných pacientů lék zabere (sensitivita), a zda lék zabírá pouze na danou chorobu (specificita). Z matice záměn se tyto hodnoty spočítají jako: Sensitivita = TP TP + FN Specificita = TN TN + FP 5

A opět můžeme pozorovat shodu používaných kritérií; sensitivita je totéž co úplnost. Sensitivita a specificita se buď uvádějí samostatně nebo jako vzájemný součin obou čísel. 6.1.5 Spolehlivost klasifikace V [Berka, 1997] jsme uvedli jiný pohled na hodnocení klasifikátoru založený na meta učení. Meta učení (meta learning) je postup, při kterém se na výsledky klasifikátorů opětovně použije nějaký učící se algoritmus. Koncept meta učení nalezneme v této kapitole ještě několikrát. Zde konkrétně bylo meta učení použito pro určení spolehlivosti klasifikace. Celý postup je znázorněn na Obr. 1. Z původních trénovacích dat se vytvoří model, který se použije pro klasifikaci těchto trénovacích dat i pro testování na datech testovacích (krok klasifikace). V kroku verifikace se nejprve vytvoří nová trénovací a testovací data tak, že se k původním datům přidá nový binární atribut vyjadřující, zda při klasifikaci došlo nebo nedošlo ke shodě se skutečností. Pro nová trénovací data vytvoříme model, který bude tentokrát pro daný příklad predikovat zda dojde ke shodě (atribut shoda je cíl, původní vstupní atributy zůstávají stejné). Model pak otestujeme na nových testovacích datech. Při použití tohoho přístupu při klasifikaci nových příkladů klasifikačním modelem příklad zařadíme do třídy a verifikačním modelem určíme spolehlivost tohoto přiřazení. Obr. 1 Určení spolehlivosti klasifikace

Doposud jsme hodnotili znalosti na základě jednoho testování; pomocí jednoho čísla 13. Komplexnější popis chování modelu nám mohou dát následující analýzy. Při hodnocení na základě více testů může jít opět o hodnocení jednoho modelu (křivka učení, lift chart) nebo o hodnocení více modelů 14 (ROC, DEA). Všechny tyto metody používají grafické znázornění výsledků testování. 6.1.6 Křivka učení Křivka učení (learning curve) dává do souvislosti počet příkladů v trénovací množině a správnost klasifikace (Obr. 2). Vychází se z předpokladu, že čím více příkladů je k dispozici ve fázi učení, tím budou nalezené znalosti přesnější. Pro různé počty příkladů tak dostaneme různé hodnoty správnosti při testování (Tab. 2). Testování se často provádí opakovaně, takže kromě průměrné hodnoty správnosti Acc získáme ještě její chybu (třetí sloupec v Tab. 2). Tato chyba se obvykle počítá jako S Acc ( ) n, kde Acci - Acc 2 S i Acc = n - 1 Počet příkladů Prům.Správnost chyba 15 79.56% +- 5.69% 30 92.00% +- 2.07% 45 93.14% +- 0.70% 60 94.67% +- 0.42% 75 93.07% +- 1.54% 90 93.00% +- 1.62% 105 95.11% +- 1.30% 120 92.00% +- 2.26% 135 93.33% +- 2.98% Tab. 2 Data pro křivku učení 2 Obr. 2 Křivka učení 13 V případě např. desetinásobné křížové validace jednomu číslu odpovídá průměrná hodnota z výsledků na deseti maticích záměn. 14 Zvolený učící se algoritmus může mít celou řadu parametrů, které ovlivňují nalezeneé znalosti. Nejmarkantněji je to vidět u neuronových sítí, ale můžeme to pozorovat i u rozhodovacích stromů a pravidel. 7

Jistou analogií tohoto přístupu je křivka učení používaná při učení neuronových sítí jako indikace toho, kdy je možno učení ukončit. Zde se jedná o závislost správnosti na počtu iterací (průchodů týmiž trénovacími daty) viz Obr. 3. Obr. 3 Závislost správnosti na počtu iterací 6.1.7 Křivka navýšení Křivka navýšení (lift curve) se často používá v marketingu. Vezměme si situaci, kdy je třeba poslat klientům nabídku nějakého produktu. Ze zkušenosti víme, že na takovou nabídku odpoví velice málo (řekněme 1%) oslovených zákazníků. To znamená, že většina dopisů s nabídkou je odeslána zbytečně. Při tvorbě modelu bychom tuto skutečnost chtěli vzít v úvahu. To umožní křivka navýšení, která dává do souvislosti podíl respondentů, kteří odpověděli (TP) s podílem odeslaných dopisů (TP+TN+ FP+FN). Jak takovou křivku vytvořit? Lze to pouze u modelů, které neprovádějí pouze binární klasifikaci (ano/ne) ale klasifikace je doprovázena numerickou hodnotou, která vyjadřuje, jak moc si klasifikátor věří při svém rozhodnutí pro daný příklad (pravděpodobnost, váha). Lze tedy křivku navýšení vytvořit např. pro neuronové sítě, bayesovské klasifikátory nebo KEX. Nejprve seřadíme příklady použité při testování sestupně podle váhy klasifikace. U každého příkladu máme samozřejmě k dispozici informaci o tom, do které třídy patří (Tab. 3). Pak pro libovolný úsek setříděných příkladů počínaje příkladem klasifikovaným s nejvyšší vahou vytvoříme dílčí matici záměn s hodnotami TP, TN, FP a FN. Hodnoty TP /TP a (TP + TN + FP + FN )/(TP +TN + FP + FN) 15 pak vyneseme do grafu. Křivka navýšení vždy prochází bodem [0,0] (nepošleme-li žádný dopis, nebude žádná odpověď) a [1,1] (pošleme-li dopisy všem, zachytíme všechny respondenty). Model bude tím lepší, čím bude křivka navýšení ležet nad diagonálou reprezentující náhodný výběr. Z křivky navýšení uvedené na Obr. 4 lze vyčíst, že pošleme-li nabídku 40% nejperspektivnějším klientům, oslovíme 80% všech respondentů. Dosáhli jsme tedy dvojnásobného navýšení odezvy klientů ve srovnání s náhodným výběrem 40% adresátů. 15 Hodnoty TP, TN, FP a FN odpovídají celým testovacím datům.

Pořadí skutečná třída predikce pro + 1 + 0,95 2 + 0,93 3-0,93 4 + 0,91 5 + 0,88..... Tab. 3 Data pro křivku navýšení Obr. 4 Křivka navýšení V případě, že máme k dispozici informace o cenách za odeslání nabídky i o cenách nabízeného produktu, můžeme křivku navýšení převést na křivku návratnosti investic (ROI). Z této křivky je přímo vidět jak se mění náš zisk v závislosti na počtu oslovených klientů (Obr. 5) 16 Obr. 5 Křívka návratnosti investic 16 Celý přiklad je převzat z demo dat k systému Clementine. 9

6.1.8 Křivka ROC Křivka ROC (ROC curve) byla převzata pro evaluaci modelů z oblasti radiotechniky 17 nedávno [Provost, Fawcett, 1997]. Tato křivka dává do souvislosti podíl TP s podílem FP: poměrně TP % = FP % = TP TP + FN FP FP + TN Uvedené charakteristiky již známe; TP % = Sensitivita, FP % = 1 Specificita. Používá se tedy i kritérium TP % * (1 FP % ). ROC křivku lze použít u modelů, které klasifikaci doprovázejí váhou resp. pravděpodobností. Křivku vytvoříme tak, že budeme měnit práh při kterém bude výsledek klasifikace interpretován jako třída + 18. Bodu [0,0] (žádná predikce třídy +) odpovídá práh 1, bodu [1,1] (všechny příklady zařazeny do třídy + ) odpovídá práh 0. Změnou prahu lze simulovat chování modelu v případě změny poměru mezi počty příkladů obou tříd i změny cen za chybnou klasifikaci, ROC křivka tedy dává obraz o chování klasifikátoru bez ohledu na rozdělení tříd a na cenu chyb. Poznamenejme, že je žádoucí se v grafu pohybovat vlevo nahoře, tedy blízko bodu [0,1], který odpovídá bezchybné klasifikaci. Obr. 6 ROC křivka Variantu tohoto pohledu nalezneme v [Berka, Pelikán, 1997]. Zde s přímo sleduje, jak se mění celková správnost klasifikace v závislosti na prahu (Obr. 7 vlevo). Opět se tedy předpokládá klasifikace v celé škále [0,1]. Jistý rozdíl oproti ROC křivce zde ale přece jenom je; model (v tomto případě KEX) může odmítnout rozhodnutí. To se stane v případě, že predikovaná váha leží v intervalu [1-práh, práh]. S rostoucím prahem tedy klesá počet klasifikovaných příkladů (Obr. 7 vpravo). 17 ROC znamená receiver oerating characteristic, tedy pracovní charakteristika přijímače. 18 ROC křivku můžeme tedy vytvořit podobně jako křivku navýšení; na základě volby vzorku ze seznamu příkladů uspořádaného podle výsledků klasifikace (predikce + ).

Obr. 7 Závislost správnosti a počtu rozhodnutí na prahu 6.1.9 DEA analýza DEA analýza (DEA analysis, data envelope analysis) je metoda používaná v ekonometrii. Při testování modelů ji můžeme použít, podobně jako ROC křivky, pro volbu optimálního nastavení parametrů učícího se algoritmu. 6.1.10 Numerické predikce Zatím jsme se zabývali situací, kdy cílem modelu je klasifikovat příklady do tříd. V případě numerické predikce 19 se jako kritérium správnosti používají např. střední kvadratická chyba (mean-squared error, MSE), odmocnina ze střední kvadratické chyby (root mean-squared error, RMSE), střední absolutní chyba (mean absolute error, MAE), relativní kvadratická chyba (relative squared error, RSE), nebo korelační koeficient ρ. MSE = (p 1-s 1 ) 2 + + (p n -s n ) 2 n RMSE = (p 1 -s 1 ) 2 + + (p n -s n ) 2 n ρ = RSE MAE = p 1-s 1 + + p n -s n n 2 2 p1 s1 ) + + (pn sn ) = ( 1, kde s = 2 2 (s1 s) + + (s n s) i s i n, n - 1 S ps ( S 2 p S, kde p - p)( s - s) i i i S = 2 ps s 2 ( p - p), 2 i i Sp = n - 1 ( s - s) 2 i i Ss = n - 1 Ve výše uvedených vzorcích je p i predikovaná hodnota a s i skutečná hodnota pro i-tý přiklad ze souboru n příkladů tvořících trénovací data. 2 19 Při numerické predikci může být cílem např. určit budoucí cenu akcií. Nespokojíme se tedy pouze s klasifikací vzrůst ceny vs. pokles ceny. 11

6.2 Vizualizace Přestože vizualizace hraje důležitou roli především ve fázi porozumění datům resp. při interpretaci deskriptivních znalostí, můžeme se s ní setkat i při hodnocení modelů určených pro klasifikaci. Jako na jiných místech procesu dobývání znalostí, tak i zde jde o to umožnit expertovi lépe porozumět tomu, co se děje. 6.2.1 Vizualizace modelů Většina systémů pro dobývání znalostí z databází klade velký důraz na vizualizaci. Ta se projevuje i při vizualizaci modelů. Příkladem může být různý způsob znázornění rozhodovacího stromu od nejjednoduššího textového (systém Weka) až po trojrozměrné mrakodrapy okolo kterých je možno kroužit jako v letovém simulátoru (systém MineSet). Podoba rozhodovacích stromů je uvedena v kapitole věnované jednotlivým systémům; zde tuto věc zmiňujeme jen pro úplnost. Jiným příkladem je tzv. web uzel v systému Clementine, který zobrazuje asociace mezi hodnotami atributů. Síla čáry odpovídá síle vztahu (Obr. 8 převzatý z demo dat k systému). Obr. 8 Web uzel Vizualizovat můžeme i jednotlivá pravidla. Obr. 9 ukazuje koláčový graf odpovídající pravidlu IF nezamestnany(ne) THEN uver(ano) Hodnoty v grafu jsou převzaty z kontingenční tabulky, která má pro naše demonstrační data podobu

uver(ano) uver(ne) nezamestnany(ne) 5 1 6 nezamestnany (ano) 3 3 6 8 4 12 Uvedený graf názorněji ukazuje, že platnost pravidla 5/6 je větší než relativní četnost třídy úvěr(ano) v datech (ta je rovna 8/12) a že tedy toto pravidlo dobře charakterizuje bonitní klienty. Obr. 9 Vizualizace jednoho pravidla 6.2.2 Vizualizace klasifikací Michalski [Michalski, 1978] navrhl použití tzv. obecných logických diagramů (general logic diagrams) pro zobrazování výsledků klasifikace pro jednotlivé příklady. Tento způsob je použitelný (tj. srozumitelný) jen pro relativně malý počet atributů. V tabulce 20, která zachycuje všechny možné hodnoty jednotlivých atributů (a tedy i všechny možné příklady), se znázorní rozhodnutí systému (výsledek klasifikace do tříd barvou), resp. chyby při klasifikaci (shoda rozhodnutí systému s informací od učitele jako kolečko, neshoda jako křížek). Obr. 10 ukazuje způsob implementace v knihovně programů pro strojové učení MLC++ [Kohavi, 1994]. 20 Tato tabulka připomíná Karnaghovu mapu používanou při syntéze logických obvodů. 13

Obr. 10 Obecný logický diagram Propojí-li se systém pro dobývání znalostí s geografickým informačním systémem (GIS), získáme přírozenou možnost vizualizace např. tak, že v mapě zobrazíme objekty, které splňují nějakou vlastnost, nebo které splňují nějaký vztah. Obr. 11 ukazuje příklad vizualizace sídel na jižní Moravě, vzhledem k jednomu asociačnímu pravidlu (tedy k jedné čtyřpolní tabulce) nalezenému systémem KEX. 21 Obr. 11 Vizualizace asociací 21 O KEXu se píše na jiném místě. Tato ukázka je ze společného projektu s firmou TERPLAN [Berka a kol, 1991].

6.3 Porovnávání modelů Máme-li k dispozici více algoritmů pro dobývání znalostí, můžeme je použít na tatáž data. Naskýtá se pak otázka, který z modelů je nejlepší. Odpověď se opět hledá na základě provedeného testování jednotlivých modelů. Výsledky testování se pak navzájem porovnávají. 6.3.1 T-test Dvouvýběrový t-test je statistický test, který umožňuje porovnávat dvě sady čísel, tak, že zjišťuje, zda se od sebe statisticky významně liší jejich průměry. Základem t-testu je statistika t počítaná jako x - y 1 t( x, y) =, kde x = S( x, y) 1/m + 1/n i x i m, y= 1 n y a i i S2 (x,y) = (m-1) S x 2 + (n-1) S 2 y m+n-2, přičemž S x a S z se spočítají analogicky jako S p a S s uvedené v odstavci o numerických predikcích. V našem případě budou oněmi sadami čísel správnosti (resp. chyby) stanovené např. násobnou křížovou validací pro dva různé modely. Model A bude lepší než model B, pokud t-testem zjistíme, že jeho průměrná správnost je signifikantně vyšší, tedy že t(acc A, Acc B ) > t(1- α/2, m + n 2), kde t(1- α/2, m + n 2), je (1- α/2)-kvantil Studentova t rozložení s m + n 2 stupni volnosti [Havránek, 1993]. 6.3.2 ROC křivky ROC křivky umožňují zachytit chování modelu (klasifikátoru) bez ohledu na rozdělení tříd a cen. Očekávaná cena klasifikace modelu, který odpovídá bodu [TP, FP] křivky je Cost = p(p) * FP % * c(p,n) + p(n) * FN % * c(n,p), kde p(p) a p(n) jsou apriorní pravděpodobnosti (relativní četnosti) pozitivních a negativních příkladů, c(p,n) a c( N,p) jsou ceny za chybnou klasifikaci, a FP % a FN % jsou poměry správně positivních a správně negativních klasifikací. Dva body [TP 1, FP 1 ], [TP 2, FP 2 ] budou odpovídat stejně kvalitním modelům, pokud TP 2 - TP 1 FP 2 - FP = p(n)c(p,n) 1 p(p)c(n,p) Tato rovnice definuje směrnici linie stejného výkonu (iso-performance lines); všechny modely ležící na jedné linii mají stejné očekávané ceny klasifikace. Obr. 12 ukazuje ROC křivky pro tři modely. Je zřejmé, že model C je nejhorší, protože jeho křivka leží všude pod křivkami zbývajících modelů. Jiné je to pro modely A a B. Při některých strategiích rozhodování bude vhodnější model A (minimalizujeme poměr FP % i za cenu nižšího poměru TP % ), při jiných strategiích bude vhodnější model B (maximalizujeme poměr TP % i za cenu vyššího poměru FP % ). Pro hodnoty směrnic linií stejného výkonu v intervalu [0,1] (tedy např 0.1 pro p(n)/p(p)=1 a 15

c(p,n)/c(n,p)=0.1) bude lepši model B, pro hodnoty směrnic v intervalu [1, ] (např. 2 pro p(n)/p(p)=10 a c(p,n)/c(n,p)=0.2) bude lepší model A. Jak tedy nalézt metodu, která bude optimální pro danou strategii (pro danou matici cen resp. poměr tříd)? K tomu se použije tzv. konvexní obal (convex hull) ROC prostoru, který obepíná dané ROC křivky. Klasifikátor, který bude ležet na tomto obalu bude (pro danou strategii) optimální. Lze totiž ukázat, že neleží-li bod ROC křivky na konvexním obalu, lze pro libovolnou rodinu linií stejného výkonu (tedy pro linie se stejnou směrnicí) nalézt bod, který leží na linii se stejnou směrnici, ale s větším průsečíkem s osou TP %. Vidíme tedy, že pro určité strategie nabude ani model A ani model B optimální, protože příslušné ROC křivky leží pod konvexním obalem (tato část je v grafu vyznačena šedou barvou). Zlepšení klasifikace lze pak dosáhnout kombinací obou modelů. A B C Obr. 12 ROC křivky s konvexním obalem 6.3.3 Occamova břitva V případě shody správnosti (chyby) vstupují do hry další kritéria. Nejznámějším je tzv. Occamova břitva. Jedná se filosofický předpoklad, který říká, že nejlepší vědecká teorie je ta nejjednodušší, která popisuje všechna fakta. Převedeno na porovnávání modelů jde o kritérium, které říká, že lepší je menší model (méně pravidel, menší strom apod.). V teorii učících se systémů má tento předpoklad jednoduchosti podobu principu minimální délky popisu (minimum description length, MDL) o kterém byla již zmínka v souvislosti s bayesovským klasifikátorem.

6.4 Volba nejvhodnějšího algoritmu Vzhledem k tomu, že neexistuje algoritmus, který by předčil ostatní na libovolných datech 22, dostává se do popředí otázka jak dopředu poznat, který algoritmus zvolit pro danou úlohu. Odpověď můžeme hledat na základě znalosti silných a slabých stránek jednotlivých algoritmů, nebo experimentálně. Mezi známé charakteristiky algoritmů, které můžeme brát do úvahy patří např. Rozdíl mezi způsobem reprezentace příkladů (hodnoty atributů nebo relace), rozdíl mezi vyjadřovací silou jednotlivých algoritmů (rozhodovací stromy a pravidla rozdělují prostor atributů rovnoběžně s osami, neuronové sítě nebo diskriminační funkce naleznou i diagonální hranici mezi třídami), schopnost práce s numerickými atributy (některé algoritmy vyžadují pouze kategoriální atributy), schopnost práce se zašuměnými a chybějícími daty (vyhození vs. extrapolace), schopnost práce s maticí cen (ve fázi učení, ve fázi testování, vůbec ne), předpoklad nezávislosti mezi atributy (např. naivní Bayesovský klasifikátor), ostrá vs. neostrá klasifikace (jen indikátor třídy nebo i pravděpodobnost či váha klasifikace). K empirickým studiím vhodnosti jednotlivých algoritmů na různé typy dat patří dva rozsáhlé výzkumné projekty celoevropského rozsahu, STATLOG a METAL. 6.4.1 STATLOG V letech 1991-1994 se v rámci výzkumného programu Evropského společenství řešil projekt 23, jehož cílem bylo komparativní testování a vyhodnocení různých učících se algoritmů na rozsáhlých aplikacích v oblasti klasifikace a predikce [Michie a kol., 1994]. V rámci projektu bylo porovnáváno okolo 20 různých algoritmů na zhruba 20 různých datových souborech. Cílem bylo zjistit, na jaké typy dat se hodí ten který algoritmus. Jednotlivé datové soubory byly popsány souborem 24 jednoduchých charakteristik, statistických charakteristik a charakteristik z oblasti teorie informace. Vznikla tak jakási metadata (data o datech) která byla použita při následné analýze. Pro každý datový soubor se (běžnými metodami testování) zjistilo, jaké dávají jednotlivé algoritmy výsledky (správnost, chyba). Byla tedy k dispozici informace, které algoritmy jsou na daná data vhodné (dávají malou chybu) a které jsou nevhodné. Tato informace byla (jakožto cílový atribut) přidána k metadatům; vznikla tak trénovací množina, na kterou byl nasazen algoritmus C4.5 25. Výsledkem byla řada pravidel typu: If charakteristiky dat jsou CH then použij algoritmus A. Příkladem může být pravidlo IF počet příkladů < 6435 AND šikmost > 0.57 THEN použij CART K souhrnným výsledkům patří: 22 Tato skutečnost je známa pod názvem no free lunch teorem. 23 ESPRIT projekt č. 5170, známý pod akronymem STATLOG. 24 Mezi jednoduché charkteristiky patří počet příkladů, počet atributů, počet tříd, počet binárních atributů. Mezi statistické charakteristiky patří parametry rozdělení dat jako šikmost, špičatost nebo různé korelační charakterisitky (střední korelace atributů, první kanonická korelace). K charakteristikám z teorie informace patří entropie třídy, střední entropie atributů, střeení vzájemná informace třídy a atributů nebo poměr signál/šum. 25 Důvodem volby tohoto algoritmu byla snadná interpretovatelnost vytvořených rozhodovacích stromů i skutečnost, že C4.5 si v testech na vlastních datech vedl poměrně dobře. 17

pro rozsáhlá data se hodí diskriminační analýza (lineární, kvadratická), není velký rozdíl mezi obyčejnou a logistickou diskriminační analýzou, na rozsáhlých datech je nejpomalejší metoda k nejbližších sousedů, použité algoritmy na tvorbu rozhodovacích stromů se chovaly zhruba stejně; nezdá se tedy, že by nějak zvlášť záleželo na kritériu pro volbu větvení, neuronové sítě dávaly výborné výsledky u dat, kde se nepoužívala matice cen. Řešitelé projektu STATLOG správně upozorňují na různé možné příčiny odlišností v správnosti jednotlivých algoritmů na daných datech: různá vhodnost algoritmů jako takových, různě vhodná implicitní nastavení parametrů jednotlivých modelů, různá zkušenost uživatelů s laděním parametrů, vliv předzpracování dat (např. diskretizace do různých intervalů). 6.4.2 METAL Projekt METAL (Meta Learning) volně navazuje na projekt STATLOG. Tento projekt, řešený jako ESPRIT projekt č. 26357 v rámci 5. programu, byl zahájen v roce 2000. Cílem projektu je pomoci běžnému uživateli s volbou vhodné metody strojového učení i s volbou metod pro předzpracování dat. V současné době se práce zaměřily na otázku řazení klasifikátorů. Zatím je navrženo několik metod využívajících správnosti a doby výpočtu pro hodnocení klasifikátorů testovaných na různých datech [Brazdil, Soares, 2000]: Průměrné pořadí (na základě uspořádání všech klasifikátorů pro jednotlivé datové soubory) Poměr úspěšnosti (na základě vyhodnocení dvojic klasifikátorů) Významní vítězové (na základě vyhodnocení dvojic klasifikátorů) 6.5 Kombinování modelů Možností jak zlepšit výsledky dosažené jednotlivými modely je jejich vzájemná kombinace. Nejběžnějším způsobem je kombinovat rozhodnutí z více modelů do výsledného závěru některou z variant hlasování. Přehled různých metod lze nalézt v [Diettrich, 2000] nebo [Bauer, Kohavi, 1999]. Při metodě zvané bagging (bootstrap aggregating) mají všechny modely rovný hlas. Předpokládejme použití jednoho algoritmu (např. rozhodovacích stromů). Pro potřeby učení se z daných dat vytvoří několik stejně velkých trénovacích množin pomocí náhodného výběru s opakováním (viz dříve zmíněná metoda bootstrap). Učení probíhá na jednotlivých trénovacích množinách nezávisle. Výsledné modely (rozhodovací stromy) se pak v procesu testování nechají hlasovat o přiřazení testovaného příkladu ke třídě. Při metodě zvané boosting se postupně vytvářejí modely se stále větší váhou hlasu. Každý nový model je ovlivněn modely vytvořenými v předcházejících krocích. Ve fázi učení se nový model zaměřuje na ty příklady, které se nepodařilo zatím správně klasifikovat. Na počátku (při vytváření prvního modelu) mají všechny příklady stejnou váhu. Na základě výsledků klasifikace se váhy příkladů změní; u správně klasifikovaných se váha sníží, u chybně klasifikovaných se váha zvýší. To umožní od sebe odlišit jednoduché příklady (ty s nižší vahou) a složité příklady (ty s vyšší vahou). Celý postup se několikrát opakuje. Ve fázi klasifikace jednotlivé modely váženě hlasují o zařazení příkladu do třídy. Obr. 13 ukazuje podobu tohoto algoritmu známou jako AdaBoost ([Shapire, 1999]). Podobně jako u předcházející metody i zde se předpokládá použití stejného algoritmu u všech modelů.

AdaBoost algoritmus učení 1. Přiřaď stejnou váhu všem trénovacím příkladům, 2. Pro každou iteraci (vytvářený model) 2.1. Vytvoř model 2.2. Spočítej chybu err na vážených datech 2.3. If err=0 nebo err>0.5 konec 2.4. Pro každý příklad If klasifikace je správně then váha w=w*err/(1-err) 2.5. Normalizuj váhy příkladů (součet nových vah stejný jako součet původních) klasifikace jednoho příkladu 1. Přiřaď váhy 0 všem třídám 2. Pro každý model Přiřaď třídě určené modelem váhu w=w-log(err/1-err) 3. Vydej třídu s nejvyšší váhou Obr. 13 Algoritmus AdaBoost V případě kombinování modelů vzniklých na základě různých algoritmů vyvstává jeden základní problém. Kterému modelu více věřit. Hlasování klasifikátorů má totiž smysl jen tehdy, jestliže všechny klasifikátory dávají srovnatelné výsledky. Pokud jsou ale některé modely výrazně horší, jejich zahrnutím do hlasování získáme horší výsledky než při použití jednoho lepšího modelu. Otázkou jak rozpoznat spolehlivost jednotlivých modelů se zabývá metoda zvaná stacking (stacked generalization). Zavádí se zde koncept meta učení, což je použití metod učení pro zjištění, jak nejlépe kombinovat jednotlivé modely. Tedy při meta učení se provádí učení z výsledků jednotlivých klasifikátorů. Vstupem do uvedené metody jsou výsledky klasifikace jednotlivými systémy. Počet vstupních atributů pro meta učení (pro model na první úrovni) je tedy dán počtem modelů na nulté úrovni (základní klasifikátor, base classifier); v nejjednodušším případě může být pro každý základní klasifikátor jeden atribut (indikátor predikované třídy), složitější varianta může brát z každého základního klasifikátoru tolik atributů, kolik je tříd (např. pravděpodobnost zařazení objektu do těchto tříd). Cílovým atributem pro meta učení je skutečná třída. Výsledkem meta učení tedy jsou znalosti o tom, který základní klasifikátor se má použít (např. vždy věř modelu A a ignoruj model B). Klasifikace nových příkladů probíhá tak, že nejprve je příklad klasifikován základními klasifikátory a na základě těchto výsledků vydá model na první úrovni výsledné rozhodnutí. Schéma tohoto přístupu podle [Chan, Stolfo, 1993] je uvedena na Obr. 14. Obr. 14 Obecné schéma metaklasifikace 19

Literatura [Bauer, Kohavi, 1999] Bauer,E., and Kohavi,R.: An Empirical Comparison of Voting Classification Algorithms: Bagging, Boosting, and Variants. Machine Learning, 36(1/2):105-139, 1999. [Berka, 1993] Berka,P.: Vybrané znalostní systémy, SAK, SAZE, KEX. Skripta VŠE, Praha 1993, 245s. [Berka, 1997] Berka,P.: Recognizing Reliability of Discovered Knowledge. In: (Komorowski, Zytkow eds.) Proc. Principles of Data Mining and Knowledge Discovery PKDD'97, LNAI 1263, Springer, 1997, 307-314 [Berka a kol., 1991] Berka,P. Ivánek,J. - Jirků,P. - Stejskal,B.: Knowledge Acquisition from Data - a Tool for Regional Planning. In: UNIDO/CSFR Workshop of Interactive Decision Support Systems to Industrial and Territorial Planning, Bratislava, 1991 [Berka, Pelikán, 1997] Berka,P. Pelikán,E.: Data Computers in Finance and Economics. 1997, 115-128. Mining Methods in Prediction. In: PASE'97, [Brazdil, Soares, 2000] Brazdil,P. Soares,C.: A Comparison of Ranking Methods for Classification Algorithm Selection. In: (Mantaras, Plaza eds.) Proc. European Conf. On Machine Learning ECML2000, LNAI 1810, Springer 2000, 63-74. [Diettrich, 2000] Dietterich,T.G.: An Experimental Comparison of Three Methods for Constructing Ensembles of Decision Trees: Bagging, Boosting, and Randomization. Machine Learning, 40(2):139-158, 2000. [Havránek, 1993] Havránek,T.: Statistika pro biologické a lékařské vědy. Academia, 1993. ISBN 80-200-0080-1. [Chan, Stolfo, 1993] Chan,P.K. - Stolfo,S.J.: Experiments on Multistrategy Learning by Meta-Learning. In: Proc. 2 nd Int. Conf. on Information and Knowledge Management, 1993. [Ivánek, Stejskal, 1988] Ivánek,J. - Stejskal,B.: Automatic acquisition of knowledge base from data without expert: ESOD (Expert System from Observational Data). In: Proc. COMPSTAT'88 Copenhagen, Physica-Verlag, 1988, 175-180. [Kohavi, 1994] Kohavi,R.: MLC++. A Machine Learning Library in C++, Tech.Rep. CS229B, Stanford Univ. 1994. [Michalski, 1978] Michalski,R.S.: A Planar Geometric Model for Presenting Multidimensional Discrete Spaces and Multiple-valued Logic Functions. Tech. Rep. UIUCDCS-R-78-897, Univ. of Illinois, 1978. [Michie a kol., 1994] Michie,D. Spiegelhalter,D.J. Taylor.: Machine Learning, Neural and Statistical Classification. Ellis Horwood, 1994, ISBN 0-13-106360-X. [Provost, Fawcett, 1997] Provost,F. Fawcett,T.: Analysis and Visualization of Classifier Performance: Comparison under Imprecise Class and Cost Distributions. In: Proc. KDD-97, AAAI Press, 1997, 43-48. [Shapire, 1999] Shapire,R.: Theoretical Views of Boosting and Applications. In: Proc.10 th Algorithmic Learning Theory. Int. Conf. on [Witten, Frank, 1999] Witten,I.H. Frank,E.: Data Mining. Practical Machine Learning Tools and Techniques with Java Implementations. Morgan Kaufman, 1999, ISBN 1-55860-552-5.