Rozhodovací stromy 11.4.2012 (c) 2012 Tomáš Kliegr.

Slides:



Advertisements
Podobné prezentace
J. Pokorný 1 DOTAZOVACÍ JAZYKY slajdy přednášce DBI006 J. Pokorný MFF UK
Advertisements

TEORIE ROZHODOVÁNÍ A TEORIE HER
Dynamické systémy.
Dualita úloh lineárního programování a analýza citlivosti
SIMPLEXOVÝ ALGORITMUS Řešení v tabulkovém procesoru
Vlastní skript může být umístěn: v hlavičce stránky v těle stránky
Testování neparametrických hypotéz
Přednáška č. 3 Normalizace dat, Datová a funkční analýza
Aplikace teorie grafů Základní pojmy teorie grafů
Teorie zpracování dat Ukázková písemka. Kapitola 4 Je dána tabulka Zam (login, jmeno, plat, funkce), implementovaná je v SŘBD používajícím indexové soubory.
Architektury a techniky DS Tvorba efektivních příkazů I Přednáška č. 3 RNDr. David Žák, Ph.D. Fakulta elektrotechniky a informatiky
Cvičení října 2010.
Statistika schématicky Tomáš Mrkvička. Základy znáte Konfidenční intervaly Porovnání 2 či více výběrů Regresní modely Základy časových řad.
Strojové učení I (Mitchell93) učicí množina příkladů hledáme generalizaci učicí množiny ověřujeme na testovací množině pokrytí, přesnost, F-kriterium.
Memory-based Learning Učení založené na paměti (výtah z přednášky Waltera Daelemanse, GSLT, Göteborg 2003) + TiMBL -ukázka použití programu Jiří Mírovský,
ADT Strom.
Medians and Order Statistics Nechť A je množina obsahující n různých prvků: Definice: Statistika i-tého řádu je i-tý nejmenší prvek, tj., minimum = statistika.
Metody řazení s lineární časovou složitostí
FORMALIZACE PROJEKTU DO SÍŤOVÉHO GRAFU
Databáze Jiří Kalousek.
Decision Trees & Genetic Programming 1 Klasické DT V některých případech nepraktické.
1 Vyhledávání Principy vyhledávání Klasifikace klíče:  Interní klíč – je součástí prohlížených záznamů  Externí klíč – není jeho součástí, je jím např.
Získávání informací Získání informací o reálném systému
Hana Kotinová Struktura a cíl práce Metody předzpracování dat Systémy předzpracování dat Historie vývoje DPT Jak program pracuje Budoucnost.
Systémy pro podporu managementu 2
Teorie psychodiagnostiky a psychometrie
Analýza dat.
REDUKCE DAT Díváme-li se na soubory jako na text, pak je tento text redundantní. Redundance vyplývá z:  některé fráze nebo slova se opakují  existuje.
UČÍME V PROSTORU Název předmětu: Název a ID tématu: Zpracoval(a): Strojírenská technologie Elektronická měřidla (UvP_STROJ_ST34_001) Vladimír Pata STROJÍRENSTVÍ.
SWI072 Algoritmy komprese dat1 Algoritmy komprese dat Teorie informace.
DATOVÉ MODELY (c) Tralvex Yeap. All Rights Reserved.
Rozšíření dotazu a vývoj tématu v IR Jiří Dvorský Jan Martinovič Václav Snášel.
KOMBINAČNÍ LOGICKÉ FUNKCE
Podnikové informační systémy C7 – Data Mining a získávání znalostí České vysoké učení technické v Praze Fakulta strojní ústav Řízení a ekonomiky podniku.
Statistická analýza únavových zkoušek
Dokumentace informačního systému
Lineární regresní model Statistická inference Tomáš Cahlík 4. týden.
Korelace a elaborace aneb úvod do vztahů proměnných
Lineární regresní analýza
Filtrace web stránek s využitím profilu uživatele Petr Doskočil
Jedno-indexový model a určení podílů cenných papírů v portfoliu
Jak mravenč í kolonie dobývaj í znalosti Daniel Vodák a Luboš Popelínský Laboratoř dobývání znalostí Fakulta informatiky MU Brno
Rozhodovací stromy.
Jan Šaršon Milan Jaška 1Dobývání znalostí, MFF UK, 2008.
Tvorba simulačních modelů. Než vznikne model 1.Existence problému 2.Podrobnosti o problému a o systému 3.Jiné možnosti řešení ? 4.Existence podobného.
Experimentální fyzika I. 2
Základy zpracování geologických dat
Databázové systémy Informatika pro ekonomy, př. 18.
Využití ontologií při dobývání znalostí z databází Hana Češpivová.
Rozhodovací proces, podpory rozhodovacích procesů
2. Vybrané základní pojmy matematické statistiky
© Institut biostatistiky a analýz INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ ANALÝZA A KLASIFIKACE DAT prof. Ing. Jiří Holčík, CSc.
Optimalizace versus simulace 8.přednáška. Obecně o optimalizaci  Maximalizovat nebo minimalizovat omezujících podmínkách.  Maximalizovat nebo minimalizovat.
© Institut biostatistiky a analýz INVESTICE DO ROZVOJE VZDĚLÁVÁNÍ ANALÝZA A KLASIFIKACE DAT prof. Ing. Jiří Holčík, CSc.
Databázové systémy Normalizace dat.
Aplikovaná statistika 2.
České vysoké učení technické v Praze Fakulta dopravní Ústav dopravní telematiky Geografické informační systémy Doc. Ing. Pavel Hrubeš, Ph.D.
2. Hra v normálním tvaru, hra s konstantním součtem Martin Dlouhý VŠE v Praze.
Úvod do databázových systémů
Dobývání znalostí z databází dolování dat
Databázové systémy přednáška 13 – Analýza a reporting
Co se dá změřit v psychologii a pedagogice?
Popisná statistika: přehled
Regresní analýza výsledkem regresní analýzy je matematický model vztahu mezi dvěma nebo více proměnnými snažíme se z jedné proměnné nebo lineární kombinace.
Spojitá a kategoriální data Základní popisné statistiky
Z8119 Vyhledávání znalostí v prostorových datech
Geografické informační systémy
Lineární optimalizační model
Pokročilé neparametrické metody Validační techniky
Datové sklady (Data Warehouse)
Transkript prezentace:

Rozhodovací stromy 11.4.2012 (c) 2012 Tomáš Kliegr

Osnova Představení a kontext Algoritmus TDIDT Entropie, Informační zisk Použití stromu Převod na rozhodovací pravidla Přeučení Prořezávání Převod na rozhodovací tabulku

Dobývání znalostí z databází – příklady úloh rozpoznání problémových nebo vysoce bonitních klientů banky analýza klientů pojišťovny analýza nákupních košíků predikce spotřeby elektřiny (vody, plynu) analýza poruchovosti automobilů analýza dat o pacientech analýza příčin změny mobilních operátorů analýza chování zákazníků internetových obchodů (clickstreamy) text mining …

Metodika CRISP DM

Praktické zkušenosti nejdůležitější je fáze porozumění problému - 80% významu časově nejnáročnější příprava dat - 80% času vlastní analýzy 5% času

Klasifikační úloha Patří mezi úlohy Dobývání znalostí z databází (DZD) Klasifikace: po naučení na trénovacích datech se používá pro zařazení nových objektů. Obvykle je objekt zařazován do právě jedné z x možných (nominálních) tříd Také lze na klasifikaci pohlížet jako na úlohu odhadování hodnoty cílové proměnné Rozšíření Klasifikace do více tříd Cílová proměnná je numerická

Další úlohy DZD Shlukování: instance jsou rozděleny do skupin. Není fáze trénování. Asociační pravidla: slouží pro explorativní analýzu dat, nalezení zajímavých souvislostí v datech.

Představení Den Předpověď Teplota Vlhkost Vítr Hrát tenis D1 Jasno Horko Vysoká Slabý Ne D2 Silný D3 Zataženo Ano D4 Déšť Příjemně D5 Chladno Normální D6 D7 D8 D9 D10 D11 D12 D13 D14 Cílová proměnná

Představení Jeden z nejpoužívanějších klasifikačních algoritmů Předpověď Jasno Déšť Zataženo Vítr Vlhkost Ano Slabý Vysoká Silný Normální Ano Ne Ano Ne

Indukce rozhodovacích stromů Cílová proměnná* Kategoriální Spojitá Vstupní proměnné (atributy) - prediktory První fáze - Učení se z historických dat Výstupem je rozhodovací strom Rozhodovací strom je použit na data * (v závislosti na použitém algoritmu)

Top Down Induction Of Decision Trees (TDIDT) Princip „rozděl a panuj“ Pro každou proměnnou Rozděl všechny vstupní záznamy na dvě nebo více skupin dle hodnot Spočítej dobrotu (goodness) pro - kvalitu tohoto rozdělení do skupin – jak dobře vylepšuje odhad cílové proměnné Vyber proměnnou s nejlepším goodness a rozděl podle ní záznamy do skupin Opakuj pro každou vzniklou skupinu až do doby, než bude dosaženou zastavující podmínky

Příklad Den Předpověď Teplota Vlhkost Vítr Hrát tenis D1 Jasno Horko Vysoká Slabý Ne D2 Silný D3 Zataženo Ano D4 Déšť Příjemně D5 Chladno Normální D6 D7 D8 D9 D10 D11 D12 D13 D14

Zastavovací podmínky Základní Skupina je „čistá“ -všechny záznamy mají jen jednu hodnotu cílové proměnné Žádná vhodná proměnná pro rozdělení nebyla nalezena Další: Skupina je příliš malá – obsahuje jen malý počet záznamů …

Optimalita TDIDT TDIDT je postavena na žravém principu Proměnná pro větvení je vybrána podle hodnoty dobroty a není nikdy později měněna Algoritmus tak hledá lokální optimum, přičemž se doufá v nalezení globálně nejlepšího řešení Za optimální řešení bývá považován nejmenší strom, který reprezentuje data Může se stát, že optimální řešení nebude nalezeno nebo že růst stromu bude předčasně ukončen žádný „backtracking“

Poměrný informační zisk Algoritmy Informační zisk entropie ID3 (Quinlan 1986) C4.5 (Quinlan 1993) CART (Breiman et al 1984) CHAID Poměrný informační zisk entropie GINI Index Chi kvadrát test Klíčovým rozdílem je definice goodness – způsob výběru algoritmu pro větvení

Informační zisk Jak dobře atribut rozděluje trénovací instance podle hodnot cílového atributu Vychází z entropie (Informační teorie) Odpovídá na otázku, který atribut zvolit pro větvení Předpověď Jasno Déšť Zataženo Vítr Vlhkost Ano Slabý Vysoká Silný Normální Ano Ne Ano Ne

Entropie měří homogenitu příkladů V teorii informace je entropie definovaná jako funkce v teorii informace v kontextu rozhodovacích stromů pravděpodobnost výskytu třídy t je počet tříd Poměr počtu instancí s hodnotou cílového atributu t na počtu všech instancí Počet různých hodnot cílového atributu Minimální počet bitů, který je potřeba pro zakódování klasifikace libovolného prvku S Entropie měří homogenitu příkladů

Entropie - příklad id p 1 Ne 2 3 Ano 4 5 6 7 8 9 10 11 12 13 14 Klasifikace do dvou tříd množiny se 14 instancemi Množina S

Pro výpočet se předpokládá, že log2(0) = 0 Entropie - příklad Entropie Poměr pozitivních instancí vůči všem instancím Pro výpočet se předpokládá, že log2(0) = 0

Kvíz 1 Jaká je maximální hodnota entropie v obecném případě (třídy nejsou dvě, ale je jich c)?

Informační zisk Informační zisk (information gain) atributu je očekávané snížení entropie na základě rozdělení příkladů do skupin dle hodnot tohoto atributu. množina všech hodnot atributu A podmnožina S pro kterou má atribut A hodnotu v Očekávané snížení entropie na základě znalosti hodnot atributu A

Informační zisk - příklad

Den … Vítr Hrát tenis D1 Slabý Ne D2 Silný D3 Ano D4 D5 D6 D7 D8 D9 D10 D11 D12 D13 D14

Den … Vítr Hrát tenis D1 Slabý Ne D2 Silný D3 Ano D4 D5 D6 D7 D8 D9 D10 D11 D12 D13 D14

Dosazení entropie do vzorce pro informační zisk Získali jsme informační zisk pro atribut Vítr. Jaký bude informační zisk pro další atributy?

Výběr atributu pro větvení Vybíráme Předpověď. Předpověď Jasno Zataženo Déšť Ano ? ?

Den Předpověď Teplota Vlhkost Vítr Hrát tenis D1 Jasno Horko Vysoká Slabý Ne D2 Silný D8 Příjemně D9 Chladno Normální Ano D11

Den Předpověď Teplota Vlhkost Vítr Hrát tenis D1 Jasno Horko Vysoká Slabý Ne D2 Silný D8 Příjemně D9 Chladno Normální Ano D11

Výběr atributu pro větvení Předpověď Jasno Zataženo Déšť Ano Vlhkost ? Vysoká Normální Ne Ano

Den Předpověď Teplota Vlhkost Vítr Hrát tenis D4 Déšť Příjemně Vysoká Slabý Ano D5 Chladno Normální D6 Silný Ne D10 D14

Výsledný strom Předpověď Jasno Zataženo Déšť Entropie 0 Ano Vlhkost Vítr Silný Vysoká Slabý Normální Entropie 0 Entropie 0 Entropie 0 Ne Ano Ne Ano

Použití stromu Proběhla indukce stromu z trénovacích dat Strom je možné použít na klasifikaci nových případů U nové (tzv. testovací) instance postupně zjišťujeme hodnoty atributů ve stromě, počínaje kořenem stromu Postupujeme po větvi, která odpovídá hodnotě atributu u nové instance Jakmile se dostaneme k listovému uzlu klasifikace končí, výsledkem je třída tam uvedená.

Příklad Den Předpověď Teplota Vlhkost Vítr Hrát tenis Test1 Jasno Horko Vysoká Slabý Ne D2 Silný D3 Zataženo Ano D4 Déšť Příjemně D5 Chladno Normální D6 D7 D8 D9 D10 D11 D12 D13 D14 Den Předpověď Teplota Vlhkost Vítr Hrát tenis Test1 Jasno Horko Normální Silný ?

Den Předpověď Teplota Vlhkost Vítr Hrát tenis Test1 Jasno Horko Normální Silný ? Předpověď Jasno Déšť Zataženo Vítr Vlhkost Ano Slabý Vysoká Silný Normální Ano Ne Ano Ne Den Předpověď Teplota Vlhkost Vítr Hrát tenis Test1 Jasno Horko Normální Silný Ano

Kvíz 2 Ve kterých případech se může stát, aby testovací instanci nebylo možné pomocí naučeného stromu klasifikovat: A) Pouze tehdy, když má instance chybějící hodnoty pro některé atributy (např. chybí hodnota Vlhkosti) B) Pouze tehdy, když má instance jiné hodnoty v některých atributech, než byly v trénovacích datech např. Déšť – střední C) Pouze tehdy, když má instance další atributy oproti trénovacím datům, např. rosný bod. D) Instanci lze klasifikovat vždy. E) V případech A,B F) V případech A,B,C G) V případě A,C

Převod stromu na pravidla Každé cestě stromem od kořenu k listu odpovídá jedno pravidlo Nelistové uzly tvoří předpoklad pravidla Listové uzly – hodnoty cílové proměnné – závěr pravidla Převedení stromu na pravidla zvyšuje srozumitelnost nalezených znalostí Seznam pravidel je možné automaticky použít ve znalostním systému Např. pomocí systému JBOSS Drools

Předpověď Jasno Déšť Zataženo Vítr Vlhkost Ano Slabý Vysoká Silný Normální Ano Ne Ano Ne Strom převedený na pravidla IF Předpověď(Jasno) AND Vlhkost(Vysoká) THEN Hrát_Tenis(Ne) IF Předpověď(Jasno) AND Vlhkost(Normální)THEN Hrát_Tenis(Ano) IF Předpověď(Zataženo) THEN Hrát_Tenis(Ano) IF Předpověď(Déšť) AND Vítr(Silný) THEN Hrát_Tenis(Ne) IF Předpověď(Déšť) AND Vítr(Slabý) THEN Hrát_Tenis(Ano)

Problémy - Šum Vytvoření rozhodovacího strom, který bezchybně klasifikuje data z tréningové množiny není vždy možné Předpověď Teplota Vlhkost Vítr Hrát tenis Jasno Horko Vysoká Slabý Ne .. … .., Déšť Příjemně Silný Ano

Extrémní případ přeučeného klasifikačního modelu Problémy - přeučení Požadavek na tvorbu stromů s maximálně bezchybnou klasifikací na trénovací množině vede často přeučení (overfitting) Den ID Den v týdnu Předpověď Teplota Vlhkost Vítr Hrát tenis D1 pondělí Jasno Horko Vysoká Slabý Ne … .. .., D14 Déšť Příjemně Silný D15 úterý Ano Extrémní případ přeučeného klasifikačního modelu Den v týdnu pondělí … úterý Ne Ne Ano

Kvíz 3 Jaký atribut si vybere rozhodovací strom vytvářený pomocí algoritmu ID3 jako kořenový? Neuvažujte cílový atribut jako možný prediktor Den ID Den v týdnu Předpověď Teplota Vlhkost Vítr Hrát tenis D1 pondělí Jasno Horko Vysoká Slabý Ne … .. .., D14 Déšť Příjemně Silný D15 úterý Ano

Přeučení Pokud má rozhodovací strom Na trénovacích instancích chybu Na celém rozdělení instancí (na všech instancích i mimo trénovací množinu) D chybu Pak strom m je přeučený vzhledem k trénovacím datům, pokud existuje alternativní strom m’, pro který platí

Důsledek přeučení Zdroj: Mitchell 97

Příčiny přeučení - příklad Kvalita stromu je dána přesností stromu na trénovacích datech To vytváří tlak na to, aby se strom „namemoroval“ kombinace atributů spíše než prováděl jejich zobecňování. Den Předpověď Teplota Vlhkost Vítr Hrát tenis D1 Jasno Horko Vysoká Slabý Ne …. D9 Chladno Normální Ano D11 Příjemně Silný D15 Předpověď Jasno Vlhkost Vysoká Normální Tato instance by byla stromem špatně zaklasifikována Ne Ano Instance 15 představuje šum, protože správná třída je +

Příčiny přeučení - příklad Předpověď Den Předpověď Teplota Vlhkost Vítr Hrát tenis D1 Jasno Horko Vysoká Slabý Ne …. D9 Chladno Normální Ano D11 Příjemně Silný D15 Jasno Vlhkost Vysoká Normální Ne Teplota Horko Příjemně Chladno Ne Ano Ano Perfektní klasifikace na trénovacích datech, ale na testovacích datech lze očekávat horší výsledky Nově upravený strom na základě inkrementálního učení

Kvíz 4 Jaká může být maximálně hloubka stromu naučeného z dat popsaných čtyřmi atributy (prediktory) a jedním cílovým atributem? Hloubkou stromu rozumíme počet atributů použitých pro větvení včetně kořene.

Přeučení - řešení Dva přístupy Zastavit růst stromu před tím, než přeučení nastane Nechat vyrůst plný strom a následně ho prořezat

Prořezávání pravidel Používá se například v algoritmu C4.5 Řada algoritmů Rule post pruning Proveď indukci rozhodovacího stromu (bez ošetření overfittingu – s cílem bezchybné klasifikace trénovacích dat) Převeď strom na ekvivalentní sadu pravidel Prořež (zobecni) každé pravidlo – odstraň všechny podmínky, jejichž odstranění nesníží přesnost predikce Seřaď prořezaná pravidla dle odhadované přesnosti a použij je při klasifikaci testovacích dat v tomto pořadí Využívá validační množinu instancí.

Rule Post Pruning - příklad Strom převedený na pravidla IF Předpověď(Jasno) AND Vlhkost(Vysoká) THEN Hrát_Tenis(Ne) IF Předpověď(Jasno) AND Vlhkost(Normální)THEN Hrát_Tenis(Ano) IF Předpověď(Zataženo) THEN Hrát_Tenis(Ano) IF Předpověď(Déšť) AND Vítr(Silný) THEN Hrát_Tenis(Ne) IF Předpověď(Déšť) AND Vítr(Slabý) THEN Hrát_Tenis(Ano) Pro první pravidlo srovnej: Strom převedený na pravidla Přesnost na validační množině IF Předpověď(Jasno) AND Vlhkost(Vysoká) THEN Hrát_Tenis(Ne) … IF Předpověď(Jasno) THEN Hrát_Tenis(Ne) IF Vlhkost(Vysoká) THEN Hrát_Tenis(Ne) Vyber pravidlo s nejvyšší přesností

Rozhodovací tabulky Rozhodovací strom je možné vyjádřit též jako rozhodovací tabulku Rozhodovací tabulka je tabulková reprezentace skládající se ze čtyř kvadrantů oddělených horizontálními a vertikálními zdvojenými čarami Strom převedený na pravidla IF Předpověď(Jasno) AND Vlhkost(Vysoká) THEN Hrát_Tenis(Ne) IF Předpověď(Jasno) AND Vlhkost(Normální)THEN Hrát_Tenis(Ano) IF Předpověď(Zataženo) THEN Hrát_Tenis(Ano) IF Předpověď(Déšť) AND Vítr(Silný) THEN Hrát_Tenis(Ne) IF Předpověď(Déšť) AND Vítr(Slabý) THEN Hrát_Tenis(Ano) Předpověď Jasno Zataženo Déšť Vlhkost Vysoká Normální - Vítr Silný Slabý Hrát ANO x   Hrát NE Horizontální čára rozděluje tabulku na podmínkovou část (nahoře) a akční část (dole) Vertikální čára rozděluje atributy od jejich hodnot Pomlčka značí, že hodnota sloupce je irelevantní X v akční části značí závěr při splnění podmínek Každý sloupec odpovídá jednomu pravidlu

Rozhodovací tabulky Úplnost – pokrývá všechny možné kombinace podmínek Exkluzivita – žádná kombinace není pokryta více jak jedním sloupcem

Všechny tři reprezentace jsou na sebe vzájemně převoditelné Srovnání Rozhodovací stromy – přímo implementovány v statistických a dataminingových programech, dobře probádané algoritmy Rozhodovací pravidla – lépe srozumitelná interpretace, možnost vykonávat v business rules systémech Rozhodovací tabulky – podle experimentů jsou nejlépe srozumitelné. Všechny tři reprezentace jsou na sebe vzájemně převoditelné

Rozšiřující témata Numerické vysvětlující proměnné Velký počet možných hodnot Rozdělení na intervaly a tyto intervaly se pak považují za diskrétní hodnoty atributu-ve fázi předzpracování Příklad-například teplota Numerická cílová proměnná Místo hrát_tenis(Ano/Ne) např. délka_hry(integer) Regresní stromy

Literatura Petr Berka. Dobývání znalostí z databází. Academia. 2003 Tom Mitchell, Machine Learning. McGraw-Hill, 1997. Johan Huysmans, Karel Dejaeger, Christophe Mues, Jan Vanthienen, Bart Baesens: An empirical evaluation of the comprehensibility of decision table, tree and rule based predictive models. Decision Support Systems 51(1): 141-154 (2011)