Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

České vysoké učení technické v Praze Fakulta informačních technologií Katedra teoretické informatiky MI-ADM – Algoritmy data miningu (2010/2011) Přednáška.

Podobné prezentace


Prezentace na téma: "České vysoké učení technické v Praze Fakulta informačních technologií Katedra teoretické informatiky MI-ADM – Algoritmy data miningu (2010/2011) Přednáška."— Transkript prezentace:

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

2 Příklad rozhodovacího stromu categorical continuous class Refund MarSt TaxInc YES NO YesNo Married Single, Divorced < 80K> 80K Attributy Trénovací data Model: rozhodovací strom

3 Použití modelu Refund MarSt TaxInc YES NO YesNo Married Single, Divorced < 80K> 80K Testovací Data V tomto případě nepodvádí

4 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 MI-ADM, FIT CVUT 4

5 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). MI-ADM, FIT CVUT 5

6 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

7 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

8 Ramakrishnan and Gehrke. Database Management Systems, 3 rd Edition. 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á

9 MI-ADM, FIT CVUT 9 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|.

10 Výpočet entropií MI-ADM, FIT CVUT 10

11 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 MI-ADM, FIT CVUT 11

12 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 Založeno na autorově disertaci na University of Witwatersrand (Jihoafrická rep.) Předchůdci: AID – Morgan a Sonquist, 1963; THAID – Morgan a Messenger, 1973 MI-ADM, FIT CVUT 12

13 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 MI-ADM, FIT CVUT 13

14 Kordik, CTU Prague, FIT, MI-PDD 14 Kontingenční tabulka - připomenutí Data (n)  contingency table j\ij\i12…r 1n 11 n 12 …n 1r 2n 21 n 22 …n 2r sn s1 n s2 …n sr  

15 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í MI-ADM, FIT CVUT 15

16 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 MI-ADM, FIT CVUT 16

17 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 MI-ADM, FIT CVUT 17

18 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 MI-ADM, FIT CVUT 18

19 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) MI-ADM, FIT CVUT 19

20 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 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 MI-ADM, FIT CVUT 20 Portrét: Wei-Yin Loh

21 GUIDE Generalized, Unbiased, Interaction Detection and Estimation Loh, W.-Y. (2002), Regression trees with unbiased variable selection and interaction detection, Statistica Sinica, vol. 12, 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 MI-ADM, FIT CVUT 21

22 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) MI-ADM, FIT CVUT 22

23 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í, MI-ADM, FIT CVUT 23

24 Závěrečné porovnání MI-ADM, FIT CVUT 24 ModelC5.0CHAIDQUESTC&R Tree DěleníVícenásobné Binární Zvládá spojitý výstup? NeAnoNeAno Zvládá spojité vstupy? AnoNeAno Kritérium výběru atributu Informační zisk Chi-kvadrát F test pro spojité proměnné statistickéGini index (čistota rozdělení, variabilita) Kritérium prořezávání Limit chybyHlídá přeučení Regularizace složitosti Interaktivní tvorba stromu NeAno

25 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. MI-ADM, FIT CVUT 25

26 Vizualizace rozhodovacího stromu MI-ADM, FIT CVUT 26 Total(11,76)38 Node 5 Category%n Bad97,5680 Good2,442 Total(25,39)82 Node 4 Category%n Bad71,1132 Good28,8913 Total(13,93)45 Node 3 Credit ranking (1=default) Paid Weekly/Monthly Adj. P-value=0,0000, Chi-square=179,6665, df=1 Monthly salary Age Categorical Adj. P-value=0,0000, Chi-square=58,7255, df=1 Middle (25-35);Old ( > 35)Young (< 25) Weekly pay Social Class Adj. P-value=0,0004, Chi-square=20,3674, df=2 UnskilledClerical;Skilled ManualManagement;Professional

27 MI-ADM, FIT CVUT 27 Klasifikační stromy: Vizualizace viz scrVizClassTree.m

28 28 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?

29 MI-ADM, FIT CVUT 29 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á?

30 MI-ADM, FIT CVUT 30 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)

31 MI-ADM, FIT CVUT 31 Regresní stromy: Jak se liší od klasifikačních? 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ů. KT=150KT=140 KT=130KT=120

32 MI-ADM, FIT CVUT 32 Regresní stromy: Predikce scrVizRegrTree.m

33 MI-ADM, FIT CVUT 33 Regresní stromy Chyba vs. „ohebnost“ modelu Závislost chyby stromu na parametru splitmin scrRegrTTErrorTree.m


Stáhnout ppt "České vysoké učení technické v Praze Fakulta informačních technologií Katedra teoretické informatiky MI-ADM – Algoritmy data miningu (2010/2011) Přednáška."

Podobné prezentace


Reklamy Google