KLASIFIKAČNÍ A REGRESNÍ LESY



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

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

IBM SPSS Decision Trees

Rozhodovací stromy a lesy

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

Zpracování a vyhodnocování analytických dat

Marta Vomlelová

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

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

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

Statistické metody v digitálním zpracování obrazu. Jindřich Soukup 3. února 2012

Strojové učení Marta Vomlelová

Unstructured data pre-processing using Snowball language

Kombinatorická optimalizace

Miroslav Čepek

ROBUST PROGRAM NEDĚLE ODPOLEDNE oběd oběd bude čekat i na ty, kteří přijedou později registrace G. DOHNAL J.

Vojtěch Franc Centrum strojového vnímání, Katedra kybernetiky, FEL ČVUT v Praze Eyedea Recognition s.r.o MLMU

Matematická statistika

Připomeň: Shluková analýza

Vytěžování znalostí z dat

Detekce obličeje v obraze s využitím prostředí MATLAB

Úvod do teorie her. David Bartl, Lenka Ploháková

Kombinování klasifikátorů Ensamble based systems

D E T E K C E P O H Y B U V E V I D E U A J E J I C H I D E N T I F I K A C E

zejména Dijkstrův algoritmus pro hledání minimální cesty a hladový algoritmus pro hledání minimální kostry.

5.1 Rozhodovací stromy

Umělá inteligence a rozpoznávání

LESK A BÍDA OPTIMÁLNÍCH STROMŮ

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

8. Geometrie vrací úder (sepsal Pavel Klavík)

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

ČESKÁ ZEMĚDĚLSKÁ UNIVERZITA V PRAZE. Teze diplomové práce

Informační systémy pro podporu rozhodování

Analýza rozptylu dvojného třídění

2. RBF neuronové sítě

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ FAKULTA INFORMAČNÍCH TECHNOLOGIÍ. Uživatelská příručka k programu FloodFilling Art

Klasifikace a rozpoznávání

Optimalizační algoritmy inspirované chováním mravenců

VYSOKÁ ŠKOLA EKONOMICKÁ V PRAZE. Optimalizace trasy při revizích elektrospotřebičů

Neuropočítače. podnět. vnímání (senzory)

Ten objekt (veličina), který se může svobodně měnit se nazývá nezávislý.

Implementace A* algoritmu na konkrétní problém orientace v prostoru budov

Skalární součin je nástroj, jak měřit velikost vektorů a úhly mezi vektory v reálných a komplexních vektorových prostorech.

Ant Colony Optimization

(n, m) (n, p) (p, m) (n, m)

13. Třídící algoritmy a násobení matic

NAIL072 ROZPOZNÁVÁNÍ VZORŮ

Využití webových kapacit v cestovním ruchu

8. Systémy pro dobývání znalostí z databází

Simulované žíhání jako nástroj k hledání optimálního řešení

Petr Chvosta. vlevo, bude pravděpodobnost toho, že se tyč na počátku intervalu τ B nachází nad vpravo

Řešení problému vážené splnitelnosti booleovské formule pokročilou iterativní metodou

Algoritmus Minimax. Tomáš Kühr. Projektový seminář 1

Databáze pacientů. Petr Novák (Ing, Ph.D.)

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

IB108 Sada 1, Příklad 1 Vypracovali: Tomáš Krajča (255676), Martin Milata (256615)

Dolování znalostí z rozsáhlých statistických souborů lékařských dat

Klasifikační stromy. Metriku, pro níž je E( C, použijeme jako kořen.

Využití metod strojového učení v bioinformatice David Hoksza

Rozhodovací stromy a jejich konstrukce z dat

Pravděpodobnost a statistika

Distribuční funkce je funkcí neklesající, tj. pro všechna

Tento text je stručným shrnutím těch tvrzení Ramseyovy teorie, která zazněla

IS SEM - informační systém pro správu a evidenci nemovitého majetku hlavního města Prahy

ADAPTIVNÍ ALGORITMUS PRO ODHAD PARAMETRŮ NELINEÁRNÍCH REGRESNÍCH MODELŮ

Elegantní algoritmus pro konstrukci sufixových polí

Úvod do mobilní robotiky AIL028

2.4.8 Další příklady s grafy funkcí s absolutní hodnotou

Regulární matice. Věnujeme dále pozornost zejména čtvercovým maticím.

Členění podle 505 o metrologii

OPTIMÁLNÍ SEGMENTACE DAT

Hráč, který je na tahu musí vyložit předem daný počet karet z ruky. Počet karet je určen počtem symbolů

REGRESNÍ ANALÝZA V PROSTŘEDÍ MATLAB

Rozpoznávání captcha obrázků

Pořízení licencí statistického SW

SPECIFICKÝCH MIKROPROGRAMOVÝCH ARCHITEKTUR

PRAKTICKÉ KALKULACE 1: PŘÍKLAD (NEJEN O) SUPERMARKETU

Ukážeme si lineární algoritmus, který pro pevné k rozhodne, zda vstupní. stromový rozklad. Poznamenejme, že je-li k součástí vstupu, pak rozhodnout

Lineární diskriminační funkce. Perceptronový algoritmus.

Jarníkův algoritmus. Obsah. Popis

GEOGRAFICKÉ INFORMAČNÍ SYSTÉMY 6

VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ FAKULTA STAVEBNÍ VÝZKUMNÁ ZPRÁVA STABILITA VYBRANÝCH KONFIGURACÍ KOLEJOVÉHO SVRŠKU

VLIV NEURČITOSTI, NEJASNOSTI, NEJISTOTY A SLOŽITOSTI NA ROZHODOVÁNÍ ORGANIZACÍ

MQL4 COURSE. By Coders guru -5 Smyčky & Rozhodnutí Část 2

SIMULACE ŠÍŘENÍ NAPĚŤOVÝCH VLN V KRYSTALECH MĚDI A NIKLU

Smíšené regresní modely a možnosti jejich využití. Karel Drápela

ACTA UNIVERSITATIS AGRICULTURAE ET SILVICULTURAE MENDELIANAE BRUNENSIS SBORNÍK MENDELOVY ZEMĚDĚLSKÉ A LESNICKÉ UNIVERZITY V BRNĚ

Václav Matoušek KIV. Umělá inteligence a rozpoznávání. Václav Matoušek / KIV

Mgr. Karel Pazourek. online prostředí, Operační program Praha Adaptabilita, registrační číslo CZ.2.17/3.1.00/31165.

Regulační funkce. v aplikaci pro řízení vzduchotechniky. WILKOP, spol. s r.o., Zubří, Hlavní 823, tel. / fax :

Návrh a implementace algoritmů pro adaptivní řízení průmyslových robotů

Žáci a ICT. Sekundární analýza výsledků mezinárodních šetření ICILS 2013 a PISA 2012

INFORMACE NRL č. 12/2002 Magnetická pole v okolí vodičů protékaných elektrickým proudem s frekvencí 50 Hz. I. Úvod

Využití modální analýzy pro návrh, posouzení, opravy, kontrolu a monitorování mostů pozemních komunikací

Reference 10. Předpokládejme stavový popis spojitého, respektive diskrétního systému

ROZHODNUTÍ. Č.j.: S264/ /2007/550-VŠ V Praze dne

PRAKTIKUM II. Oddělení fyzikálních praktik při Kabinetu výuky obecné fyziky MFF UK. Název: Charakteristiky termistoru. stud. skup.

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

Řízení pohybu stanice v simulačním prostředí OPNET Modeler podle mapového podkladu

Rozhodování. s více účastníky. Miroslav. school@utia

Transkript:

ROBUST 2004 c JČMF 2004 KLASIFIKAČNÍ A REGRESNÍ LESY Jan Klaschka, Emil Kotrč Klíčová slova: Klasifikační stromy, klasifikační lesy, bagging, boosting, arcing, Random Forests. Abstrakt: Klasifikační les je klasifikační model vytvořený kombinací určitého počtu klasifikačních stromů. Každý strom přiřazuje hodnotě vektoru prediktorů nějakou třídu a výsledná klasifikační funkce je dána hlasováním. Obdobně regresní les sestává z několika regresních stromů a výsledná regresní funkce je obvykle definována jako vážený průměr regresních funkcí jednotlivých stromů. V práci jsou stručně vysvětleny některé metody vytváření lesů, jmenovitě tzv. bagging, boosting, arcing a Random Forests. 1 Úvod Klasifikační a regresní stromy se pěstují od 60. let. Silným metodologickým impulsem byla v 80. letech kniha[3], popisující tehdy novou metodu CART (Classification And Regression Trees). Věrozvěstem metody CART a stromů obecněnarobustusevr.1988staljaromírantochpříspěvkem[1]. Mezitím, co od druhé poloviny 90. let přibývaly na ROBUSTu další práce ostromech[8],[11],[12],odstartovalavesvětě nejvícealeasivpracovněleo Breimana,jednohoz otců CARTu nováetaparozvojemetodanalýzydat založenýchnastromech.zdáse,žejenačaseprobratjitakénarobustu. Tématem tohoto článku jsou klasifikační a regresní lesy. Klasifikační les je klasifikační model, jehož klasifikační funkce je dána kombinací(podle vhodně zvoleného pravidla) klasifikačních funkcí určitého počtu(typicky několika desítek) klasifikačních stromů. Obdobně lze charakterizovat regresní les stačí vpředcházejícívětěvšudenahraditslovo klasifikační slovem regresní. Dlužno poznamenat, že článek nebude v rámci české literatury takovým pionýrským počinem jako již citovaná práce[1]: Přinejmenším se o některých technikách konstrukce lesů zmiňuje(byť v obecnější poloze) Berka v knize[2]. 2 Klasifikační a regresní stromy Les, jak každé malé dítě ví, se skládá ze stromů. Zopakujme některá základní fakta o stromech(podrobněji viz[3],[1]): Klasifikační strom představuje model pro data, kde každé pozorování patřídoněkteréztříd C 1,..., C k, k 2.Současnějepozorovánícharakterizovánovektoremx = (x 1,..., x m )hodnotvysvětlujícíchproměnných(prediktorů) X 1,..., X m.vjednéatéžeúlozesemohouvyskytovat prediktory kvantitativní i kvalitativní. Model lze popsat stromovým grafem sestávajícím z uzlů a orientovaných hran(orientace se nevyznačuje, hrana vede shora dolů).

178 Jan Klaschka, Emil Kotrč Vkaždémneterminálnímuzlusestromvětví zuzluvedouhranydo dvou nebo(v některých metodách) více dceřinných uzlů. Větvení je založeno na hodnotě jediného prediktoru. Nejběžnější je binární větvení podleodpovědinaotázkutvaru x i < c? prokvantitativníprediktory X i a x i B? (kde Bjeneprázdnávlastnípodmnožinamnožiny všechhodnotveličiny X i )proprediktory X i kvalitativní.jednahrana je pak přiřazena kladné a druhá záporné odpovědi.(některé metody umožňují i větvení založená na lineární kombinaci kvantitativních prediktorů.) Pozorovánípodlehodnotprediktorů postupuje odkořenovéhouzlu přes větvení v neterminálních uzlech k některému terminálnímu uzlu (listu). Množina všech listů určuje disjunktní rozklad prostoru hodnot prediktorů X. Terminálnímu uzlu a zároveň pozorováním, která do něj patří,jepřiřazenaněkteráztříd C 1,..., C k.strom Ttakurčujeklasifikačnífunkci d T definovanouna Xshodnotamivmnožině {C 1,...,C k }. Regresní strom se od klasifikačního stromu liší tím, že každému terminálnímu uzlu je přiřazena reálná konstanta odhad kvantitativní závisle proměnné Y.Regresnístrom T definujereálnouregresnífunkci d T,která je uvnitř množin odpovídajících terminálním uzlům konstantní. K vytváření(pěstování) stromů prakticky všechny běžné metody využívají tzv. rekurzivní dělení(recursive partitioning). Konstrukce začíná stromem o jediném uzlu, do kterého patří všechna trénovací data(kořen je zároveň listem). Probere se množina všech možných větvení a pro každé z nich se vypočte kriteriální statistika(splitting criterion), která budiž řečeno bez podrobností hodnotí, nakolik jsou potenciální dceřinné uzly co do hodnot závisle proměnné vnitřně homogenní a navzájem odlišné. Větvení s maximální hodnotoukritériasevyberejakonejlepšíapoužijesevmodelu,kněmužtak přibude dvojice(popř. v některých metodách větší počet) uzlů, jež jsou prozatím terminální. Data, která patří do kořenového uzlu, se rozdělí podle hodnot prediktorů mezi nové dceřinné uzly. Pro každý z těchto provizorních listů se procedura opakuje, jako by se jednalo o kořen hledá se nejlepší větvení, atd. Při konstrukci klasifikačního stromu je žádoucí dosáhnout co nejmenší skutečné(generalizační)klasifikačníchyby R P (T)=P ( d T (X) Y ),kde P jesdruženérozdělenívektoruprediktorůxazávisleproměnné Y shodnotamiv{c 1,..., C k }.Vregresníchúloháchobdobnourolinejčastějihraje (skutečná)středníkvadratickáchyba R P (T)=E P ( Y dt (X) ) 2.Srostoucí velikostí stromu sice stále klesá(nebo alespoň neroste) chyba na trénovacích datech, ale skutečná chyba v mnoha typických situacích klesá jen do určité velikosti, pak s dalším zvětšováním stromu opět roste. Podlepřístupukproblémustanovení správnévelikosti semetodypěstování stromů dělí do dvou skupin. Metody z prvé skupiny přidávají nová větvení, jen dokud to přináší dostatečně velký okamžitý efekt. Když se takové větvení nenajde, proces končí a strom je hotov. Metody druhého typu(např. CART[3])nejdřívevypěstujítzv.velkýstrom T max,kterýsenásledněproře-

Klasifikační a regresní lesy 179 zává některéuzlyseopětodstraňují.přikostrukci T max seuzelstaneterminálním, až když obsahuje méně pozorování než zvolená mez nebo všechna pozorování v uzlu patří do téže třídy, popř. mají stejné hodnoty všech prediktorů.otom,jakvelkáčáststromu T max semáodstranit,rozhodujíempirické odhady skutečné chyby. Ty se získávají různými způsoby, například pomocí testovacích(validačních) dat, která byla k tomu účelu při konstrukci stromu ponechánastranou,nebosložitějším trikem,křížovouvalidací (cross-validation), při níž se v opakovaných analýzách všechna pozorování střídají v rolích prvků trénovací a testovací množiny.(detaily viz[3],[1]). Mezi metodami pěstování stromů požívají asi největší prestiže Breimanův, Friedmanův, Olshenův a Stoneův CART(Classification And Regression Trees)([3]) a Quinlanova metoda C4.5([9]). Jediná současná implementace CARTu posvěcená autorymetodyješířenakomerčněfirmousalfordsystems 1 (SanDiego,CA,USA).VolnéprogramytreearpartvrámciprojektuR 2 však představují také dosti věrné implementace metodologie CART. ProgramC4.5jekdispozicibezplatně 3.VylepšenouverzipodnázvyC5.0(Unix) asee5(windows)komerčněšíříquinlanovafirmarulequestresearch 4. Informace o řadě dalších programů konstruujících stromy lze nalézt např. nawebovýchstránkáchyu-shanshihaztchai-wanu 5 (spoluautorametod QUESTaCRUISE). Výhodou klasifikačních a regresních stromů je, že pružně postihují vztahy mezi různými typy veličin, nelineární závislosti, interakce proměnných a závislosti, které mají rozdílnou podobu v různých částech prostoru X. Ve srovnání s klasickými parametrickými metodami dosahují často srovnatelné přesnosti, ale poskytují přitom daleko přehlednější a názornější modely. Nevýhodou stromů je, že jsou obvykle značně nestabilní: Zhusta pro jedna a tatáž data existuje mnoho různých stromů s přibližně stejnou chybou a při malé změně dat nebo vstupních parametrů se může výsledný strom(a příslušná klasifikační nebo regresní funkce) výrazně změnit. 3 Lesy Myšlenka klasifikačních a regresních lesů je vcelku prostá: Co místo jednoho stromu Tvypěstovat Lstromů T 1,..., T L avytvořitznich komisi,kteráse bude o zařazení pozorování do tříd,(popř., půjde-li o regresní úlohu, o predikovanéhodnotězávisleproměnné) usnášet 6?Jinýmislovy, agregovaná 1 http://www.salford-systems.com 2 http://cran.r-project.org 3 http://www.rulequest.com/personal 4 http://www.rulequest.com 5 Užšívýběrhttp://www.math.ccu.edu.tw/~yshih/trees.html,širší,alenezcelaaktuální přehled http://www.math.ccu.edu.tw/~yshih/tree.html. 6 Jižjednoujsmeseodvolávalinaznalostimalýchdětí,aitotosidneskdekterédítě dokáže představit, pokud vidělo ve filmu Dvě věže, druhém dílu trilogie Pán prstenů, jak sněm Entů(chodících stromů) rozhoduje o tom, zda jít do války, tj. jak řeší klasifikační úlohu,zdavstupníinformace,kteréjsoukdispozici,patřídotřídy válka,nebo mír.

180 Jan Klaschka, Emil Kotrč klasifikační(popř.regresní)funkce d A (x)vzniknevhodnýmzkombinováním klasifikačních(popř.regresních)funkcí d 1 (x),..., d L (x)jednotlivýchstromů. Přirozeným a jednoduchým způsobem kombinace je u regrese aritmetický průměr a u klasifikace většinové hlasování, tj. d A (x)=c i,pokud#{j; d j (x)=c i }= max i=1,...,k #{j; d j(x)=c i }, kde symbol# značí počet prvků.(nejednoznačnost vyplývající ze shody počtu hlasů se řeší např. znáhodněním.) Kombinování klasifikačních funkcí(v regresi to je analogické, rozdíly si lze domyslet) může být také o něco složitější. Při hlasování může váha hlasu každé z L klasifikačních funkcí záviset na chybě stromu na trénovacích datech (pochopitelně přesnější strom má vyšší váhu). Váha hlasu jednotlivého stromu případně nemusí být stejná pro všechny hodnoty vektoru prediktorů x může závisetnapř.takénatom,jakjelistpříslušnéhostromu,dokteréhoxpatří, velký(kolikpozorováníztrénovacíhosouborudonějpatří)a čistý (jak výrazná je převaha nejfrekventovanější třídy). Složitější vážení hlasů je dílem už standardní součástí některých metod konstrukce lesů, ale dílem také ještě předmětem výzkumu(viz např.[15],[13]). 3.1 Čtverozpůsobů,jaknato Dobrá, vypěstovat více stromů, ale kde je vzít? Použijeme-li na jedna a tatáž data opakovaně např. program CART se stejnými vstupními parametry, dostaneme pokaždé tentýž strom. Kombinováním totožných stromů pak nic nového nezískáme. Rozdělit data na L disjunktních částí a každou použít ke konstrukci jednoho stromu se také nezdá být dobrý nápad. Problém přesto má řešení, resp. více řešení. Podívejme se na některá z nich. 3.1.1 Bagging jeakronym,zkratka bootstrapaggregating.základní citace je Breimanův článek[4]. Ztrénovacíhodatovéhosouboru L={(x 1, y 1 ),...,(x n, y n )}sevytvoří náhodnýmvýběremsvracením Lsouborů L 1,..., L L velikosti n(bootstrapových výběrů), každý z nich se použije k sestrojení jednoho klasifikačního (popř. regresního) stromu a výsledný klasifikační(nebo regresní) les je pak dán většinovým hlasováním se stejnými vahami(resp. aritmetickým průměrem dílčích regresních funkcí). Do bootstrapového výběru jsou některá pozorování z L vybrána opakovaně a některá naopak vůbec. Počet opakování má pro jednotlivé pozorování z Lasymptoticky(pro n )Poissonovorozdělenísestředníhodnotou1. Pravděpodobnost, že pozorování nebude vůbec vybráno, je tedy přibližně e 1 0.37.Bootstrapovývýběrjetudížtvořenasi63%pozorovánízL, 37% zůstává mimo. Breimanv[4]uvádíulesůvelikosti L=50(tvořenýchstromyvypěstovanými metodou CART) v několika reálných i umělých klasifikačních úlohách snížení generalizační chyby oproti jednomu stromu o 20-47% a velmi podobná čísla 22-46% udávátaképroúlohyregresní.

Klasifikační a regresní lesy 181 3.1.2 Boosting a arcing. Boosting(to boost zesilovat) je původně pojemzteoriestrojovéhoučení([14],[5])avanalýzedatsetakobvykleoznačuje algoritmus AdaBoost(adaptive boosting), navržený v článku[7]. Mějme klasifikační metodu(nemusí se jednat jen o stromy), která vytváří klasifikačnímodel T nazákladětrénovacíchdat(x 1, y 1 ),...,(x n, y n )avektoruw=(w 1,...,w n )vahpřiřazenýchjednotlivýmpozorováním.algoritmus AdaBoostkonstruujeposloupnostrozdílnýchmodelů T 1,..., T L sklasifikačnímifunkcemi d 1 (x),..., d L (x)tak,žesepodlepředcházejícíchvýsledkůpostupněupravujíváhypřípadů.vprvnímkrokusepoužijeváhovývektorw 1 zadanýuživatelem(např.rovnoměrnéváhy)avytvořísemodel T 1.Vdalších krocíchsepakvždykekonstrukcimodelu T i (i=2,..., L)použijeváhový vektorw i získanýtakovouúpravouvektoruw i 1, žeseváhypozorování chybněklasifikovanýchmodelem T i 1 zvýšíasprávněklasifikovanýchsníží. Klasifikačnímetodatakstálevíce soustředípozornost na obtížná pozorování, která vzdorují zařazení do správné třídy. Váha modelu při hlasování závisí na chybě modelu na trénovacích datech.(konkrétněji viz[7],[5],[2].) Algoritmus nazvaný v článku[7] AdaBoost je vlastně určen jen pro klasifikační úlohu se dvěma třídami, ale v článku jsou popsány také modifikace AdaBoost.M1 a AdaBoost.M2 pro úlohy s více třídami a AdaBoost.R pro regresní úlohy s hodnotami závisle proměnné v intervalu[0, 1]. Arcing je další Breimanův akronym(adaptive resampling and combining). Základní prací je článek[5]. Arcing představuje spojení myšlenky baggingu a boostingu. Váhy případů se postupně upravují stejným způsobem jako v AdaBoostu, ale používají se jinak: Místo toho, aby s těmito vahami vstupovala všechna pozorování do analýzy, jsou jako v baggingu vytvářeny výběry s vracením, přičemž váhy(náležitě normované) slouží jako pravděpodobnosti vytažení. Ukazuje se(viz např.[10],[5]), že boosting i arcing u klasifikačních stromů většinou snižují generalizační chybu ještě více než bagging. V některých případech však mohou výsledky být naopak katastrofální zejména tehdy, kdyždatajsou zašuměná aučástitrénovacíchdatjehodnotazávisleproměnné y i jiná,než bysprávněmělabýt.boostingneboarcingpakvede ktomu,žeseučímeopakovatchybyvdatech. 3.1.3 Metoda RandomForests jeopět dítkem LeoBreimana,jehož článek[6]představujezákladnícitaci.jezaloženananěkolika tricích : Trénovací soubory pro jednotlivé stromy jsou(jako v baggingu) bootstrapové výběry z datového souboru L. Přivolběvětveníprodanýuzelsezmprediktorů X 1,...,X m,které jsoukdispozici,nejdřívenáhodněvybereněkterých m 0,načežsenejlepší větvení hledá již klasicky, ale jen mezi těmi větveními, která jsou založenanavybraných m 0 veličinách. Pěstují se velké stromy(viz sekci 2), které se neprořezávají.

182 Jan Klaschka, Emil Kotrč Nejen že náhodný výběr prediktorů výrazně urychluje výpočty, ale experimenty v[6] také dávají zejména v klasifikačních úlohách velmi dobré výsledky mj. srovnání s metodou AdaBoost vyznívá pro Random Forests příznivě.(vregresijeefektméněvýraznýazdáse,žejsouoněcovýhodnější některé modifikace uvedeného postupu.) Zvláště přínosná se metoda ukazuje u problémů, kde existuje velký počet prediktorů, z nichž každý sám o sobě obsahuje jen málo informace o závisle proměnné. Jakvolitparametr m 0?Nejvhodnějšíhodnotazávisínaúlozeauživatel můžeexperimentovat.jednoduchérozumnédoporučeníjepoužít m 0 blízké log 2 m. Uněkterýchproblémůsejakodobré,nebodokoncenejlepšíukazuje m 0 =1. Toznamená,žeseprediktor,kterýsemávuzlupoužítprovětvení,vybírá zcela náhodně! Jinými slovy, na tom, jaké větvení se vybere, v podstatě nezáleží, hlavně že se prostor hodnot prediktorů vůbec nějak rozparceluje hlasování(nebo v případě regrese průměrování) to dá do pořádku. To je mimochodem zcela protichůdné optimalizaci stromů, o níž byly v minulých letech na ROBUSTu dva příspěvky([11],[12]) připomeňme, že větvení se optimalizuje za cenu drastických výpočetních nákladů a s výsledky(co do generalizační chyby) mnohdy ne právě uspokojivými. Vidíme zde jeden podstatný rozdíl mezi baggingem, boostingem a arcingem na jedné straně a metodou Random Forests na straně druhé. Bagging, boosting a arcing jsou nadstavbou nad klasickými metodami(jako CART nebo C4.5) zaměřenými na pěstování co nejpřesnějších stromů. U metody Random Forests na kvalitě jednotlivých stromů tolik nezáleží; cílem není minimalizovat chybu stromů, ale jen celého lesa. 3.2 Proč to funguje Zatím jsme se omezili na popisný přístup říkáme, jak která metoda postupuje, ale ne proč. Stejně tak informujeme, jaké jsou empirické výsledky, ale nevysvětlujeme,jakjemožné,žetotakje.můžesetakzdát,ženovézpůsoby konstrukce lesů se navrhují podle vzoru Myslím, myslím, nevím dál, co bych ještěudělal. Ve skutečnosti se při studiu vlastností lesů neuplatňují jen numerické experimenty, ale také teoretické úvahy, byť částečně heuristického charakteru. Čtenáře v tomto ohledu odkazujeme na dříve citovanou literaturu, ale alespoň něco málo naznačíme. Z metod uvedených v paragrafu 3.1 se jen Random Forests týká specificky stromů a lesů. Bagging, boosting a arcing lze aplikovat nejen na stromy, ale na vcelku libovolnou klasifikační či regresní metodu.(všimněme si, že v názvech článků[4] a[5] se mluví obecně o prediktorech a klasifikátorech, nikoli o stromech.) Platí, vágně řečeno, že agregovaný klasifikační model, jehož klasifikační funkce d A jedánakombinacídílčíchklasifikačníchfunkcí d 1,...,d L pomocí hlasování, je tím přesnější(tj. má tím menší skutečnou chybu), čím přes-

Klasifikační a regresní lesy 183 nějšíjsoudílčíklasifikátoryačímjsousifunkce d 1,...,d L vzájemněméně podobné. U regrese s agregací průměrováním je to obdobné. Alchymie přidávánínáhodydokonstrukcemodelusledujecílnajítco nejlepšíkompromis:comožnázvýšitvzájemnounepodobnostfunkcí d i,ale tak, aby přesnost dílčích modelů neutrpěla přespříliš. Skrze lesy se ve výhodu obrací nevýhoda stromů jejich nestabilita, tj. fakt,žemalázměnadatzpravidlavedekvelkézměněstromu Tajehoklasifikační(neboregresní)funkce d T.Kdalšímnestabilnímmetodámpatřítřeba neuronové sítě nebo kroková lineární regrese. Příklady stabilních metod jsou lineární diskriminační analýza nebo metoda k nejbližších sousedů. Nestabilní metody lze pomocí baggingu a obdobných technik výrazně zpřesnit, zatímco u stabilních metod je efekt minimální, popřípadě dokonce záporný. 3.3 Software Repertoár softwaru pro pěstování lesů je zatím skromnější než nabídka programů pro konstrukci stromů. Uveďme několik současných možností. Komerční verze programu CART zahrnuje bagging a arcing. Quinlanovy programy C5.0 a See5(viz sekci 2) obsahují boosting. SoftwarovýsystémWeka 7 zaměřenýnastrojovéučení,vyvinutýnauniversity of Waikato na Novém Zélandu, obsahuje pod názvem j48 implementaci metody C4.5, a dále procedury Bagging a AdaBoostM1, které sedajívkombinacisj48použítkpěstovánílesů.wekajefreeware. BreimanůvvlastnísoftwareRandomForestsjevolněkdispozici 8 azároveň existuje komerční verze šířená firmou Salford Systems. Implementace randomforest v projektu R je freeware. Pokud nějaký program pro konstrukci stromů umožňuje snadné zadávání vstupníchúdajůadávávýstupyvevhodnémtvaru, dotvořit jejnasoftware pro pěstování lesů je programátorsky nenáročné. Do původního programu není třeba zasahovat, takže nevadí, není-li dostupný ve zdrojovém tvaru. 4 Závěr Klasifikační a regresní lesy představují významné zdokonalení metodologií založených na stromech. Za cenu únosného zvýšení výpočetní náročnosti se dosahuje výrazného zpřesnění modelů. Patrně jedinou nevýhodou lesů oproti stromům je to, že se ztrácí pro stromy tak charakteristická přehlednost. Na les tvořený desítkami nebo stovkami stromů nejsme schopni, stejně jako je tomu např. u neuronových sítí, se dívatjinaknežjakona černouskříňku.jinýmislovy,dolesanenívidět. 7 http://www.cs.waikato.ac.nz/~ml/index.html 8 http://www.stat.berkeley.edu/users/breiman/randomforests

184 Jan Klaschka, Emil Kotrč Reference [1] Antoch J. (1988). Klasifikace a regresní stromy. In: ROBUST 1988. Sborníkprací5.letníškolyJČSMF,J.Antoch,T.Havránek&J.Jurečková(eds.),Praha,JČSMF,0 6. [2] Berka P.(2003). Dobývání znalostí z databází. Praha: Academia. [3] Breiman L., Friedman J.H., Olshen R.A., Stone C.J.(1984). Classification and regression trees. Belmont CA: Wadsworth. [4] Breiman L.(1996). Bagging predictors. Machine Learning 24, 123 140. [5] Breiman L.(1998). Arcing classifiers. Annals of Statistics 26, 801 849. [6] Breiman L.(2001). Random forests. Machine Learning 45, 5 32. [7] Freund Y., Schapire R.E.(1997). A decision-theoretic generalization of on-line learning and an application to boosting. Journal of Computer andsystemsciences55,119 139. [8] Klaschka J., Antoch J. (1997). Jak rychle pěstovat stromy. In: RO- BUST 1996.Sborníkprací9.letníškolyJČMF,J.Antoch&G.Dohnal(eds.),Praha,JČMF,91 106. [9] Quinlan J.R.(1992). C4.5: Programs for machine learning. New York: Morgan Kaufmann. [10] Quinlan J.R.(1996). Bagging, boosting, and C4.5. In: Proceedings of the Thirteenth National Conference on Artificial Intelligence, 725 730. [11] Savický P., Klaschka J., Antoch J.(2000). Optimální klasifikační stromy. In: ROBUST 2000. Sborník prací 11. letní školy JČMF, J. Antoch& G.Dohnal(eds.),Praha,JČMF,267 283. [12] Savický P., Klaschka J.(2002). Lesk a bída optimálních stromů. In: RO- BUST 2002. Sborník prací 12. zimní školy JČMF, J. Antoch, G. Dohnal &J.Klaschka(eds.),Praha,JČMF,256 267. [13] Savický P., Kotrč E.(2004). Experimental study of leaf confidences for random forest. In: COMPSTAT 2004. Proceedings in Computational Statistics, J. Antoch(ed.), Heidelberg, Physica Verlag, 1767 1774. [14] Schapire R.E.(1990). The strength of weak learnability. Machine Learning5,197 227. [15] Schapire R.E., Singer Y. (1999). Improved boosting algorithms using confidence-rated predictions. Machine Learning 37, 297 336. Poděkování:PrácebylapodporovánagrantyME701MŠMTČRaGAČR 201/02/1456. Adresa: J. Klaschka, E. Kotrč, Ústav informatiky AV ČR, Pod Vodárenskou věží2,18207praha8 E-mail: {klaschka,kotrc}@cs.cas.cz