Přednáška 4: Rozhodovací stromy a jejich regresní varianty

Podobné dokumenty
Vytěžování znalostí z dat

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

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

IBM SPSS Decision Trees

Připomeň: Shluková analýza

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

5.1 Rozhodovací stromy

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

Odhad cen ojetých vozů pomocí rozhodovacích stromů

KLASIFIKAČNÍ A REGRESNÍ LESY

Strojové učení Marta Vomlelová

Kontingenční tabulky. (Analýza kategoriálních dat)

DATA MINING KLASIFIKACE DMINA LS 2009/2010

Velmi stručný úvod do použití systému WEKA pro Data Mining (Jan Žižka, ÚI PEF)

Vytěžování znalostí z dat

Vytěžování znalostí z dat

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

{ } ( 2) Příklad: Test nezávislosti kategoriálních znaků

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

Přednáška 13 Redukce dimenzionality

Rozhodovací stromy Marta Žambochová

Vytěžování znalostí z dat

Projekt LISp-Miner. M. Šimůnek

Analytické procedury v systému LISp-Miner

Předzpracování dat. Lenka Vysloužilová

Příklad: Test nezávislosti kategoriálních znaků

Rozhodovací stromy a lesy

Statistika. Regresní a korelační analýza Úvod do problému. Roman Biskup

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

Klasifikační metody pro genetická data: regularizace a robustnost

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

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

Klasická a robustní ortogonální regrese mezi složkami kompozice

AVDAT Mnohorozměrné metody, metody klasifikace

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

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

přetrénování = ztráta schopnosti generalizovat vlivem přílišného zaměření klasifikátorů na rozeznávání pouze konkrétních trénovacích dat

Stav Svobodný Rozvedený Vdovec. Svobodná Rozvedená Vdova 5 8 6

Rozhodovací stromy a jejich konstrukce z dat

Rekurzivní algoritmy

Strojové učení Marta Vomlelová

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

PROHLEDÁVÁNÍ GRAFŮ. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze

Rozhodovací stromy a jejich konstrukce z dat

Strukturální regresní modely. určitý nadhled nad rozličnými typy modelů

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

Vytěžování znalostí z dat

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

Moderní systémy pro získávání znalostí z informací a dat

4EK211 Základy ekonometrie

KGG/STG Statistika pro geografy

Uni- and multi-dimensional parametric tests for comparison of sample results

2019/03/31 17:38 1/2 Klasifikační a regresní stromy

12. Globální metody MI-PAA

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

(motto: An unsophisticated forecaster uses statistics as a drunken man uses lamp-posts - for support rather than for illumination.

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

UNIVERZITA PARDUBICE KLASIFIKAČNÍ ÚLOHY PRO DATA MINING. Fakulta ekonomicko-správní Ústav systémového inženýrství a informatiky.

Úvod do RapidMineru. Praha & EU: Investujeme do vaší budoucnosti. 1 / 23 Úvod do RapidMineru

Fisherův exaktní test

Dynamické programování

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

Evoluční algoritmy. Podmínka zastavení počet iterací kvalita nejlepšího jedince v populaci změna kvality nejlepšího jedince mezi iteracemi

Základní datové struktury III: Stromy, haldy

Lukáš Brodský Praha Osnova. Objektový přístup Verze 4, 5, 6 / 7 Developer7 -funkčnost, nové vlastnosti HW

Katedra kybernetiky, FEL, ČVUT v Praze.

NG C Implementace plně rekurentní

Vytěžování znalostí z dat

Statistická analýza dat

Tomáš Karel LS 2012/2013

NP-ÚPLNÉ PROBLÉMY. Doc. RNDr. Josef Kolář, CSc. Katedra teoretické informatiky, FIT České vysoké učení technické v Praze

Obsah Úvod Kapitola 1 Než začneme Kapitola 2 Práce s hromadnými daty před analýzou

Analýza dat z dotazníkových šetření

Tomáš Karel LS 2012/2013

Změkčování hranic v klasifikačních stromech

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

Aproximace funkcí. Numerické metody 6. května FJFI ČVUT v Praze

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

4ST201 STATISTIKA CVIČENÍ Č. 10

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

Teorie systémů TES 1. Úvod

SPOLEHLIVOST KONSTRUKCÍ & TEORIE SPOLEHLIVOSTI část 5: Aproximační techniky

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

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

STATISTIKA. Inovace předmětu. Obsah. 1. Inovace předmětu STATISTIKA Sylabus pro předmět STATISTIKA Pomůcky... 7

Vytěžování znalostí z dat

Prohledávání do šířky = algoritmus vlny

Stromy, haldy, prioritní fronty

Předzpracování dat. Pavel Kordík. Department of Computer Systems Faculty of Information Technology Czech Technical University in Prague

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

Rozhodovací stromy. Úloha klasifikace objektů do tříd. Top down induction of decision trees (TDIDT) - metoda divide and conquer (rozděl a panuj)

MODELOVÁNÍ SPOKOJENOSTI OBČANŮ VE VZTAHU K REGIONÁLNÍMU ROZVOJI A KVALITĚ ŽIVOTA

INDUKTIVNÍ STATISTIKA

A-PDF Split DEMO : Purchase from to remove the watermark

UČENÍ BEZ UČITELE. Václav Hlaváč

Aleh Masaila. Regresní stromy

Evolučníalgoritmy. Dále rozšiřována, zde uvedeme notaci a algoritmy vznikléna katedře mechaniky, Fakulty stavební ČVUT. Moderní metody optimalizace 1

Algoritmizace Dynamické programování. Jiří Vyskočil, Marko Genyg-Berezovskyj 2010

Metoda backward výběru proměnných v lineární regresi a její vlastnosti

Statgraphics v. 5.0 STATISTICKÁ INDUKCE PRO JEDNOROZMĚRNÁ DATA. Martina Litschmannová 1. Typ proměnné. Požadovaný typ analýzy

Transkript:

České vysoké učení technické v Praze Fakulta informačních technologií Katedra teoretické informatiky Evropský sociální fond Praha & EU: Investujeme do vaší budoucnosti MI-ADM Algoritmy data miningu (2010/2011) Přednáška 4: Rozhodovací stromy a jejich regresní varianty Pavel Kordík, FIT, Czech Technical University in Prague 1

10 Příklad rozhodovacího stromu Tid Refund Marital Status Taxable Income Cheat Attributy 1 Yes Single 125K No 2 No Married 100K No 3 No Single 70K No 4 Yes Married 120K No 5 No Divorced 95K Yes 6 No Married 60K No 7 Yes Divorced 220K No 8 No Single 85K Yes Refund Yes No NO MarSt Single, Divorced TaxInc < 80K > 80K Married NO 9 No Married 75K No 10 No Single 90K Yes NO YES Trénovací data Model: rozhodovací strom

10 Použití modelu Testovací Data Refund Marital Status Taxable Income Cheat Refund No Married 80K? Yes No NO Single, Divorced MarSt Married V tomto případě nepodvádí TaxInc NO < 80K > 80K NO YES

Jak strom vytvořit? Ručně nebo algoritmem pro indukci rozhodovacích stromů Existují desítky příbuzných algoritmů, často navzájem dost podobných Zde pouze naznačíme vlastnosti několika z nich (často používaných a/nebo zajímavých) CHAID CART ID3 a C5 QUEST GUIDE MARS TreeNet 4

Myšlenka rozhodovacích stromů Rozděl a panuj: vhodně rozdělím zkoumané objekty do skupin... a v každé skupině opět postupuji stejně (rekurze)... dokud nedojdu k malým skupinkám, na něž stačí zcela jednoduchý model. rozdělení na podskupiny má přinést informační zisk, snížit entropii (implementováno např. v dnes užívaných algoritmech ID3, C4.5 a C5). 5

Jak zkonstruovat strom nad databází? Přístup shora dolů Projdi trénovací databázi a najdi nejlepší atribut pro rozdělení kořenu Rozděl databázi podle hodnoty atributu Rekurzivně zpracuj každou část

Algoritmus BuildTree(Node t, Training database D, Split Selection Method S) (1) Apply S to D to find splitting criterion (2) if (t is not a leaf node) (3) Create children nodes of t (4) Partition D into children partitions (5) Recurse on each partition (6) endif

Upřesnění algorimu Tři problémy, které je třeba nějak vyřešit: Mechanizmus dělení (CART, C4.5, QUEST, CHAID, CRUISE, ) Regularizace (direct stopping rule, test dataset pruning, cost-complexity pruning, statistical tests, bootstrapping) Přístup k datům (CLOUDS, SLIQ, SPRINT, RainForest, BOAT, UnPivot operator) Ačkoli už rozhodovací stromy existují dlouho, ještě se v těchto oblastech aktivně bádá Ramakrishnan and Gehrke. Database Management Systems, 3 rd Edition.

Jak zvolit "nejlepší" atribut? Rozdělme množinu S na podmnožiny S 1,S 2,...,S n na základě hodnot diskrétního atributu at. Měření množství informace uvnitř S i def. pomocí entropie (Shanon) H(S i ) = -(p i+ )*log p i+ - (p i- )*log p i-, kde (p i+ ) je pravděpodobnost, že libovolný příklad v S i je pozitivní; hodnota (p i+ ) se odhaduje jako odpovídající frekvence. Celková entropie H(S,at) tohoto systému je E(S,at) = n i=1 P(S i ) * E(S i ), kde P(S i ) je pravděpodobnost události S i, tj. poměr S i / S. 9

Výpočet entropií 10

Základní algoritmus ID3 Realizuje prohledávání prostoru všech možných stromů: shora dolů s použitím hladové strategie Volba atributu pro větvení na zákl. charakterizace (ne)homogenity vzniklého pokrytí : informační zisk (gain) odhaduje předpokládané snížení entropie pro pokrytí vzniklé použitím hodnot odpovídajícího atributu 11

Algoritmus CHAID úvod CHi-squared Automatic Interaction Detector Jeden z nejrozšířenějších rozhodovacích stromů v komerční oblasti (vedle QUEST a C4.5 / C5) Kass, Gordon V. (1980). An exploratory technique for investigating large quantities of categorical data. Applied Statistics, Vol. 29, pp. 119-127. Založeno na autorově disertaci na University of Witwatersrand (Jihoafrická rep.) Předchůdci: AID Morgan a Sonquist, 1963; THAID Morgan a Messenger, 1973 12

Algoritmus CHAID: idea Začíná se u celého souboru Postupné větvení / štěpení souboru (přípustné je rozdělení na libovolný počet větví vycházejících z jednoho uzlu) Algoritmus je rekurzivní každý uzel se dělí podle stejného předpisu Zastaví se, pokud neexistuje statisticky signifikantní rozdělení => vzniká list Obvykle je navíc podmínka minimálního počtu případů v uzlu a/nebo v listu, příp. maximální hloubky stromu Používá kontingenční tabulky 13

Kontingenční tabulka - připomenutí Data (n) contingency table n ij = # of times( i,j)occurred ni + nij = n + n = = j nij = j = ij nij i # of times i # of times j = dataset size occurred occurred j\i 1 2 r 1 n 11 n 12 n 1r 2 n 21 n 22 n 2r s M M M O M n s1 n s2 n sr Kordik, CTU Prague, FIT, MI-PDD 14

CHAID: postup v uzlu Pro všechny atributy Vytvoř kontingenční tabulku výstup x atribut (rozměr k x l) Pro všechny dvojice hodnot atributu spočti chí-kvadrátový test podtabulky (k x 2) Podobné (=ne signifikantně odlišné) dvojice postupně spojuj (počínaje nejnižšími hodnotami chí-kvardrátu) a přepočítávej výchozí kontingenční tabulku. Zastav se, když signifikance všech zbylých podtabulek je vyšší než stanovená hodnota. Zapamatuj si spojené kategorie a signifikanci chí-kvadrátu výsledné tabulky s redukovanou dimenzionalitou Vyber atribut, kde je tato signifikance nejnižší Pokud jsou splněny podmínky štěpení, rozděl případy v uzlu podle již spojených kategorií 15

CHAID: závěr Chybějící hodnoty: lze je považovat za zvláštní kategorii mimo systém a CHAID je zvládá Vznikají-li však tím, že se nedozvíme hodnotu, která v realitě existuje a mohla by teoreticky být zjištěna, doporučuji zvážit jejich předchozí nahrazení odhadem (zjištěným např. opět pomocí rozhodovacího stromu); náhrada průměrem je méně vhodná Exhaustive CHAID provádí podrobnější prohledávání + adjustaci signifikancí při většinou stále únosné rychlosti počítání Zdroj: Biggs,D., de Ville,B, Suen,E.: A method of choosing multiway partitions for classification and decision trees. J. of Appl. Stat., 18/1, 1991 16

CART / C&RT Classification And Regression Tree Algoritmus je založen na počítání míry diverzity ( nečistoty ) uzlu Používa se Giniho míra diverzity (byla popsána) div Gini = 1 Σp i 2 kde p i jsou relativní četnosti v uzlech 17

CART / C&RT (pokrač.) Jen binární stromy Umožňuje zadání matice ztrát: 1 Σl ij p i p j Obvykle aplikujeme prořezávání (pruning) Strom necháme vyrůst do maximální šíře To však vede k přeučení Proto zpětně odstraníme listy a větve, které podle vhodně zvoleného statistického kriteria nelze považovat za významné (většinou se používá cross-validation) Surogáty náhradní dělení pro případ chybějící hodnoty v prediktoru Breiman, L., Friedman, J. H., Olshen, R. A., Stone, C. J.: Classication and Regression Trees. Wadsworth, 1984 CART je Salford Systems, proto AT a Statistica užívají C&RT; existují i další komerční klony s jinými jmény 18

ID3, C4.5, C5 (See5) Už jsme vysvětlovali Místo Giniho míry užívají entropii a informační zisk Binární stromy Zabudovaný algoritmus pro zjednodušení množiny odvozených pravidel lepší interpretovatelnost Ross Quinlan: Induction of decision trees (1986); týž: C4.5: Programs for Machine Learning, (1993); týž: C5.0 Decision Tree Software (1999) http://www.rulequest.com/see5-info.html 19

QUEST Quick, Unbiased and Efficient Statistical Tree Loh, W.-Y. and Shih, Y.-S. (1997), Split selection methods for classification trees, Statistica Sinica, vol. 7, pp. 815-840 Výběr štěpící proměnné na základě statistického testu nezávislosti atribut x výstup => mírně suboptimální, ale rychlé, navíc výběr štěpící proměnné je nevychýlený Jen nominální výstup (=závisle proměnná) Binární strom, pruning Používá se imputace chybějících hodnot Portrét: Wei-Yin Loh 20

GUIDE Generalized, Unbiased, Interaction Detection and Estimation Loh, W.-Y. (2002), Regression trees with unbiased variable selection and interaction detection, Statistica Sinica, vol. 12, 361-386. Kromě po částech konstantní aproximace nabízí i po částech polynomiální kříženec regresního stromu a mnohorozměrné regrese vhodné pro data, u kterých může být na místě jistá míra spojitosti aproximace, ale není to nutné všude ke stažení na www.stat.wisc.edu/~loh/guide.html 21

MARS Friedman, Jerome H. (1991): Multivariate Adaptive Regression Splines, Annals of Statistics, Vol 19, 1-141, Metoda blízce příbuzná rozhodovacím stromům; lze si ji představit jako jakýsi rozklad aproximační funkce do elementárních stromů s jedním štěpením a s lineární namísto konstantní aproximací v obou polopřímkách Spliny = spojité po částech polynomické funkce; zde se obvykle používají lineární spliny a jejich interakce (tenzorové součiny) Jednotlivé polynomy se na hranicích napojují tak, aby se dosáhlo spojitosti Vhodné vyžadujeme-li spojitost (např. časové řady) 22

TreeNet, rozhodovací lesy Friedman, J. H. (1999): Greedy Function Approximation: A Gradient Boosting Machine, Technical report, Dept. of Statistics, Stanford Univ. Namísto jednoho velkého stromu les malých Výsledná predikce vzniká váženým součtem predikcí jednotlivých složek Analogie Taylorova rozvoje: rozvoj do stromů Špatně interpretovatelné (černá skříňka), ale robustní a přesné; nižší nároky na kvalitu a přípravu dat než neuronová síť nebo boosting běžných stromů Komerční, www.salford-systems.com 23

Závěrečné porovnání Model C5.0 CHAID QUEST C&R Tree Dělení Vícenásobné Vícenásobné Binární Binární Zvládá spojitý výstup? Zvládá spojité vstupy? Kritérium výběru atributu Kritérium prořezávání Interaktivní tvorba stromu Ne Ano Ne Ano Ano Ne Ano Ano Informační zisk Limit chyby Chi-kvadrát F test pro spojité proměnné Hlídá přeučení statistické Regularizace složitosti Ne Ano Ano Ano Gini index (čistota rozdělení, variabilita) Regularizace složitosti 24

Binární nebo obecné stromy? Binární stromy Např. CART, C5, QUEST Z uzlu vždy 2 větve Rychlejší výpočet (méně možností) Je třeba mít více uzlů Zpravidla přesnější => Data Mining, klasifikace Obecné stromy Např. CHAID, Exhaustive CHAID Počet větví libovolný Interpretovatelnost člověkem je lepší Strom je menší Zpravidla logičtější => segmentace, mrktg. 25

Vizualizace rozhodovacího stromu Credit ranking (1=default) Node 0 Category % n Bad 52,01 168 Good 47,99 155 Total (100,00) 323 Paid Weekly/Monthly Adj. P-value=0,0000, Chi-square=179,6665, df=1 Weekly pay Node 1 Category % n Bad 86,67 143 Good 13,33 22 Total (51,08) 165 Social Class Adj. P-value=0,0004, Chi-square=20,3674, df=2 Monthly salary Node 2 Category % n Bad 15,82 25 Good 84,18 133 Total (48,92) 158 Age Categorical Adj. P-value=0,0000, Chi-square=58,7255, df=1 Management;Professional Clerical;Skilled Manual Unskilled Young (< 25) Middle (25-35);Old ( > 35) Node 3 Category % n Bad 71,11 32 Good 28,89 13 Total (13,93) 45 Node 4 Category % n Bad 97,56 80 Good 2,44 2 Total (25,39) 82 Node 5 Category % n Bad 81,58 31 Good 18,42 7 Total (11,76) 38 Node 6 Category % n Bad 48,98 24 Good 51,02 25 Total (15,17) 49 Node 7 Category % n Bad 0,92 1 Good 99,08 108 Total (33,75) 109 26

Klasifikační stromy: Vizualizace viz scrvizclasstree.m 27

Klasifikační stromy: Chyba vs. ohebnost modelu Parametr splitmin určuje ohebnost modelu. Je to minimální počet trénovacích případů v uzlu, aby jej algoritmus ještě mohl dále dělit Jaký další parametr stromu by mohl hrát podobnou roli? 28

Klasifikační stromy: Chyba vs. ohebnost modelu II Závislost chyby stromu na parametru splitmin viz scrclasstterrortree.m Jak to, že trénovací chyba pro splitmin = 2 je nulová? 29

Stromy: Prořezávání Snižuje složitost modelu, odstraňuje zbytečné větve, zlepšuje generalizaci scrvizclasstree.m model=prune(model) view(model) 30

Regresní stromy: Jak se liší od klasifikačních? KT=130 KT=120 KT=150 KT=140 Místo nominální veličiny (chřipka, nachl., hypoch.) modelují spojitou veličinu, např. krevní tlak (KT). Hodnota bývá průměr příslušných tr. případů. 31

Regresní stromy: Predikce scrvizregrtree.m 32

Regresní stromy Chyba vs. ohebnost modelu Závislost chyby stromu na parametru splitmin scrregrtterrortree.m 33