Drzewa klasykacyjne Konspekt do zaj : Statystyczne metody analizy danych



Podobne dokumenty
Konspekt do zajęć: Statystyczne metody analizy danych. Agnieszka Nowak-Brzezińska 14 maja 2012

Dane dotyczą parametrów wydolnościowych mężczyzn zmierzonych podczas biegu na 1,5 mili. Zmienną objaśnianą jest Oxygen (pobór tlenu podczas biegu).

Listy i operacje pytania

Metody numeryczne i statystyka dla in»ynierów

WST P DO TEORII INFORMACJI I KODOWANIA. Grzegorz Szkibiel. Wiosna 2013/14

ANALIZA NUMERYCZNA. Grzegorz Szkibiel. Wiosna 2014/15

Systemy decyzyjne Wykªad 5: Drzewa decyzyjne

WYKŁAD: DRZEWA KLASYFIKACYJNE I REGRESYJNE. Metoda CART. MiNI PW

Drzewa decyzyjne, metody budowania, zastosowania

Metodydowodzenia twierdzeń

Wykªad 6: Model logitowy

Zadania z kolokwiów ze Wst pu do Informatyki. Semestr II.

A = n. 2. Ka»dy podzbiór zbioru sko«czonego jest zbiorem sko«czonym. Dowody tych twierdze«(elementarne, lecz nieco nu» ce) pominiemy.

Granular Computing 9999 pages 15 METODY SZTUCZNEJ INTELIGENCJI - PROJEKTY

Lab. 02: Algorytm Schrage

Laboratorium z przedmiotu MED. Lab1 - wprowadzenie

1 Bª dy i arytmetyka zmiennopozycyjna

Ekonometria. wiczenia 8 Modele zmiennej jako±ciowej. Andrzej Torój. Instytut Ekonometrii Zakªad Ekonometrii Stosowanej

Lekcja 9 - LICZBY LOSOWE, ZMIENNE

WYKŁAD: DRZEWA KLASYFIKACYJNE I REGRESYJNE. METODA CART. Zaawansowane Metody Uczenia Maszynowego

STATYSTYCZNE MODELOWANIE DANYCH BIOLOGICZNYCH

Podstawowe pojęcia: Populacja. Populacja skończona zawiera skończoną liczbę jednostek statystycznych

Ekonometria. wiczenia 1 Regresja liniowa i MNK. Andrzej Torój. Instytut Ekonometrii Zakªad Ekonometrii Stosowanej

Ekonometria - wykªad 8

Podstawy modelowania w j zyku UML

Ekonometria Bayesowska

Metody dowodzenia twierdze«

Relacj binarn okre±lon w zbiorze X nazywamy podzbiór ϱ X X.

KLASYCZNE ZDANIA KATEGORYCZNE. ogólne - orzekaj co± o wszystkich desygnatach podmiotu szczegóªowe - orzekaj co± o niektórych desygnatach podmiotu

Projektowanie bazy danych

Podstawy modelowania w j zyku UML

WYKŁAD: DRZEWA KLASYFIKACYJNE I REGRESYJNE. METODA CART. Zaawansowane Metody Uczenia Maszynowego

Edycja geometrii w Solid Edge ST

1 Metody iteracyjne rozwi zywania równania f(x)=0

Wzorce projektowe kreacyjne

EDUKARIS - O±rodek Ksztaªcenia

Wnioskowanie Boolowskie i teoria zbiorów przybli»onych

ALGORYTM RANDOM FOREST

1. Wprowadzenie do C/C++

JAO - J zyki, Automaty i Obliczenia - Wykªad 1. JAO - J zyki, Automaty i Obliczenia - Wykªad 1

2 Liczby rzeczywiste - cz. 2

Bash i algorytmy. Elwira Wachowicz. 20 lutego

Baza danych - Access. 2 Budowa bazy danych

Statystyka matematyczna

Rekurencyjne struktury danych

Modele wielorównaniowe. Problem identykacji

Konspekt lekcji otwartej

Uczenie Wielowarstwowych Sieci Neuronów o

Ekonometria - wykªad 1

Listy Inne przykªady Rozwi zywanie problemów. Listy w Mathematice. Marcin Karcz. Wydziaª Matematyki, Fizyki i Informatyki.

ROZWIĄZANIA PRZYKŁADOWYCH ZADAŃ. KORELACJA zmiennych jakościowych (niemierzalnych)

Uczenie maszyn. Projekt: Porównanie algorytmów tworzenia drzew decyzyjnych. Politechnika Wrocławska. Michał Płodowski Michał Suszko

Granular Computing 9999 pages 15 METODY SZTUCZNEJ INTELIGENCJI - PROJEKTY

Wdrożenie modułu płatności eservice dla systemu Virtuemart 2.0.x

Wstawianie gotowych rysunków w texu - informacje podstawowe.

Uczenie Maszynowe: reprezentacja wiedzy, wybór i ocena modelu, drzewa decyzjne

Metody statystyczne w biologii - Wykªad 8. Uniwersytet Przyrodniczy we Wrocªawiu Katedra Genetyki i Ogólnej Hodowli Zwierz t

WST P DO TEORII INFORMACJI I KODOWANIA. Grzegorz Szkibiel. Wiosna 2013/14

SVN - wprowadzenie. 1 Wprowadzenie do SVN. 2 U»ywanie SVN. Adam Krechowicz. 16 lutego Podstawowe funkcje. 2.1 Windows

Przykªady problemów optymalizacji kombinatorycznej

Zbiory i odwzorowania

Matematyka wykªad 1. Macierze (1) Andrzej Torój. 17 wrze±nia Wy»sza Szkoªa Zarz dzania i Prawa im. H. Chodkowskiej

In»ynierskie zastosowania statystyki wiczenia

Jak usprawnić procesy controllingowe w Firmie? Jak nadać im szerszy kontekst? Nowe zastosowania naszych rozwiązań na przykładach.

Bazy danych. Andrzej Łachwa, UJ, /15

wiczenie nr 3 z przedmiotu Metody prognozowania kwiecie«2015 r. Metodyka bada«do±wiadczalnych dr hab. in». Sebastian Skoczypiec Cel wiczenia Zaªo»enia

Subversion - jak dziaªa

Numeryczne zadanie wªasne

Eksploracja Danych. Wprowadzenie. (c) Marcin Sydow

Wykªad 4. Funkcje wielu zmiennych.

Wykªad 7. Ekstrema lokalne funkcji dwóch zmiennych.

Ekonometria Bayesowska

1. Wprowadzenie do C/C++

Charakterystyka systemów plików

Algorytmy klasyfikacji

Inteligentna analiza danych

POLITECHNIKA WROCŠAWSKA WYDZIAŠ ELEKTRONIKI PRACA DYPLOMOWA MAGISTERSKA

Statystyka. Šukasz Dawidowski. Instytut Matematyki, Uniwersytet l ski

Jednowarstwowe Sieci Neuronowe jako. klasykatory do wielu klas. (c) Marcin Sydow

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

Elementarna statystyka Dwie próby: porównanie dwóch proporcji (Two-sample problem: comparing two proportions)

Eksploracja danych. Wykªad 8 Drzewa decyzyjne 1 / 260

Propozycja integracji elementów ±wiata gry przy u»yciu drzew zachowa«

Wst p do informatyki. Systemy liczbowe. Piotr Fulma«ski. 21 pa¹dziernika Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska

Hotel Hilberta. Zdumiewaj cy ±wiat niesko«czono±ci. Marcin Kysiak. Festiwal Nauki, Instytut Matematyki Uniwersytetu Warszawskiego

Lekcja 8 - ANIMACJA. 1 Polecenia. 2 Typy animacji. 3 Pierwsza animacja - Mrugaj ca twarz

Elementarna statystyka Wnioskowanie o regresji (Inference 2 czerwca for regression) / 13

przewidywania zapotrzebowania na moc elektryczn

CAŠKOWANIE METODAMI MONTE CARLO Janusz Adamowski

Model obiektu w JavaScript

Przekroje Dedekinda 1

Aplikacje bazodanowe. Laboratorium 1. Dawid Poªap Aplikacje bazodanowe - laboratorium 1 Luty, 22, / 37

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

Podstawy statystycznego modelowania danych Analiza prze»ycia

Regulamin rekrutacji do Gimnazjum w Chwaliszewie na rok szkolny 2016/2017

KONCEPCJA NAUCZANIA PRZEDMIOTU RACHUNKOWOŚĆ SKOMPUTERYZOWANA" NA WYDZIALE ZARZĄDZANIA UNIWERSYTETU GDAŃSKIEGO

Zaawansowana adresacja IPv4

Zarządzanie projektami. wykład 1 dr inż. Agata Klaus-Rosińska

AUTOR MAGDALENA LACH

Transkrypt:

Drzewa klasykacyjne Konspekt do zaj : Statystyczne metody analizy danych Agnieszka Nowak-Brzezi«ska 11 stycznia 2010 1 Wprowadzenie Drzewa klasykacyjne 1 jako reprezentacja wiedzy o klasykacji s do± atrakcyjne i popularno±, jak ciesz si wykorzystuj ce je algorytmy uczenia si poj, jest uzasadniona ich istotnymi zaletami. Po pierwsze, mog one reprezentowa dowolnie zªo»one poj cia pojedyncze i wielokrotne, je±li tylko ich de- nicje mo»na wyrazi w zale»no±ci od atrybutów u»ywanych do opisu przykªadów. Mówi c bardziej precyzyjnie, za pomoc drzewa, mo»e by reprezentowana dowolna funkcja odwzorowuj ca warto±ci wszystkich okre±lonych na dziedzinie atrybutów na zbiór kategorii, czyli dowolna dopuszczalna hipoteza. Reprezentacja wykorzystuj ca drzewa, jest przy tym, dla typowych poj, do± efektywna pami ciowo, a tak»e, co na pewno zasªuguje na uwag, drzewa takie umo»liwiaj niezwykle efektywn implementacj procesu klasykowania przykªadów. Ponadto istnieje ªatwe przej±cie od drzewa do reprezentacji reguªowej uwa»anej przez wielu, za najbardziej czyteln. Cel zaj Celem zaj jest poznanie metod budowy i analizy drzew klasykacyjnych przy u»yciu ±rodowiska R. 2 Drzewa klasykacyjne Drzewem decyzyjnym (klasykacyjnym) okre±limy drzewo reprezentuj ce proces podziaªu zbioru obiektów na jednorodne klasy. W takim drzewie wewn trzne w zªy b d opisywa sposób dokonania podziaªu na jednorodne klasy (dokonywany w oparciu o warto±ci cech obiektów), a li±cie klasom, do których obiekty nale». Z kolei kraw dzie drzewa reprezentuj warto±ci cech, na podstawie których dokonano podziaªu. Przykªad drzewa decyzyjnego przedstawia rysunek 1. 2.1 Proces tworzenia drzewa Celem jest oczywi±cie zbudowanie drzewa jak najmniejszego (o minimalnej liczbie w zªów), po to by by otrzymane reguªy klasykacji byªy jak najprostsze. Bardzo ogólna posta algorytmu skªada si z nast puj cych kroków: 1W literaturze cz ±ciej mo»emy spotka okre±lenia: drzewo decyzyjne. W statystyce cz sto tak»e: drzewa regresyjne, drzewa dyskryminacyjne 1

stopa procentowa wzrost zysk przedsi biorstwa spadek Ceny akcji spadaj poziom cen akcji spadek Ceny akcji spadaj wzrost spadek stopa procentowa Ceny akcji rosn Rysunek 1: Drzewo decyzyjne - klasykacyjne wzrost wzrost zysk przedsi biorstwa 1. Maj c zbiór obiektów S, sprawd¹, czy nale» one do tej samej klasy. Je±li tak, to zako«cz prac. 2. W przeciwnym przypadku rozwa» wszystkie mo»liwe podziaªy zbioru S na podzbiory S 1, S 2,...S n tak, aby byªy one jak najbardziej jednorodne. 3. Dokonaj oceny jako±ci ka»dego z tych podziaªów zgodnie z przyj tym kryterium i wybierz najlepszy z nich. 4. Podziel zbiór S w wybrany sposób. 5. Wykonaj kroki 1-4 rekurencyjnie dla ka»dego z podzbiorów. Na podstawie drzewa klasykacyjnego mo»na ªatwo sformuªowa reguªy przynale»no±ci obiektów do klas w odniesieniu do drzewa przedstawionego na rysunku 1: ˆ W przypadku spadku cen akcji: "je»eli stopa procentowa ro±nie i zyski przedsi biorstw spadaj to ceny akcji spadaj " ˆ w przypadku wzrostu cen akcji: "je»eli stopa procentowa spada, lub je±li stopa procentowa ro±nie ale jednocze±nie rosn zyski przedsi biorstw rosn to ceny akcji rosn." 2.2 Rodzaje drzew klasykacyjnych Ró»nice dotycz postaci funkcji oceniaj cej jako±ci podziaªu, sposobu klasykacji obiektów o brakuj cych warto±ciach cech, itd. Najbardziej elementarny podziaª drzew decyzyjnych to podziaª na: ˆ drzewa binarne, w których z ka»dego wewn trznego w zªa wychodz jedynie dwie kraw dzie, 2

ˆ drzewa niebinarne - gdzie z w zªa mog wychodzic wi cej ni» dwie kraw dzie. Tabela 1 2 prezentuje znane algorytmy budowy drzew klasykacyjnych z podziaªem na binarne i dowolne. Najpopularniejsze stosowane algorytmy to: Tablica 1: Rodzaje algorytmów tworzenia drzew decyzyjnych NAZWA ROK AUTORZY RODZAJ DRZEWA CLS 1996 Hunt,Marin, Stone binarne ACLS 1982 Paterson, Niblett binarne ID3 1983 Quinlan dowolne CART 1984 Brieman, Friedman Olshen, Stone binarne ASSISTANT 1985 Kononenko binarne ID4 1986 Schlimmer, Fisdher dowolne PLS 1986 Rendell dowolne C4 1987 Quinlan dowolne GID 3 1988 Chengf, Fayyad,Irani dowolne ID5 1989 Utgo dowolne LMDT 1991 Brodley, Utgo binarne, wielowymiarowe CHAID 1993 SPSSInc. dowolne IND 1993 Bruntine, Caruana dowolne SADT 1993 Heat,Kasif,Salzberg binarne, wielowymiarowe SE-LEARN 1993 Rymonn dowolne OC1 1994 Murthy binarne, wielowymiarowe 1. ID3 - cechuj cy si prostot, ale wymagaj cy kompletnych danych i nie pozwalaj cy na szum w danych. Ponadto zakªada,»e dane s danymi dyskretnymi, nie za± ci gªymi. 2. C 4.5 - b d cy rozszerzeniem algorytmu ID3 i rozwi zuj cy wi kszo± problemów algorytmu ID3 (braki w danych, dane ci gªe, mo»liwo± przycinania drzew gdy si zbytnio rozrastaj (ang. pruning)). 3. CART (Classication and Regression Trees) - stosuje w budowie drzewa indeks Giniego, miar entropii i reguª podziaªu na dwie cz ±ci (twoing rule). Cech charakterystyczn metody jest nadmierny rozrost drzewa i przycinanie (pruning) poszczególnych gaª zi w celu redukcji opisu li±ci (przy nieznacznym wzro±cie bª du klasykacji). Pozwala to na porównanie modelu rozbudowanego i modelu ze zredukowan liczb w zªów, czasami bowiem o jako±ci drzewa nie decyduje trafno± predykcji, ale przydatno± wygenerowanych reguª. 4. CHAID to algorytm AID (Automatic Interaction Detection) wykorzystuj cy test niezale»no±ci chi-kwadrat. Na ka»dym etapie podziaªu drzewa tworzy si tabel kontyngencji, w której zestawia si zmienn obja±nian (zale»n ) i obja±niaj c. Je±li zmienna obja±niana ma d > 2 kategorii, a obja±niaj ca c > 2 kategorii, to d»y si do redukcji tabeli kontyngencji o wymiarach d c do bardziej istotnej (z punktu widzenia testu 2 ródªo: Gatnar E.: Symboliczne metody klasykacji danych, PWN, 1998, Polska 3

niezale»no±ci chi-kwadrat) o wymiarach d j, przez ª czenie w dozwolony sposób kategorii zmiennej obja±niaj cej. Oryginalny CHAID pozwala budowa modele dyskryminacyjne, czyli takie, których zmienna obja±niana jest zmienn nominaln. 2.3 Cel budowy drzew Drzewo budujemy po to by potem móc klasykowa nowe przypadki (przyszªe obserwacje), o których nie mamy informacji o przynale»no±ci klasowej. Budowane drzewo powinno by jak najmniejsze, wi kszo± algorytmów dodatkowo dokonuje porz dkowania drzewa (prunning), polegaj cego na usuwaniu tych jego fragmentów, które maj niewielkie znaczenie dla jako±ci rezultatów klasy- kacji. 2.4 Problemy? Ka»dy algorytm tworz cy drzewa klasykacyjne musi zatem rozwi za 3 problemy: ˆ jak wybra jedn lub kilka cech, w oparciu o które nast pi podziaª zbioru obiektów? ˆ kiedy zako«czy podziaª pozostaªego podzbioru obiektów? ˆ w jaki sposób przydzieli obiekty znajduj ce si w li±ciu drzewa do pewnej klasy? 3 Wa»ne aspekty budowy drzewa Zasadniczym problemem jest wybór wªa±ciwego atrybutu do zbudowania ca- ªego testu. Najlepszy wybór to wybór takiego atrybutu, dla którego skrócimy ±cie»k w drzewie prowadz c przez ten w zeª do li±ci wskazuj cych klas decyzyjn.w tym celu, niezb dny jest wybór pewniej miary oceniaj cej, np. miar przyrostu informacji (ang. information gain). Wykorzystywane jest przy tym zjawisko entropii. Je±li S b dzie zbiorem ucz cym zawieraj cym n przykªadów nale» cych do jednej z k klas decyzyjnych oznaczonych przez K 1,..., K k, a n i oznacza liczebno± klasy K i, wówczas entropia zwi zana z klasykacj zbioru S jest zdeniowana jako: Ent(S) = k p i lg 2 p i, gdzie p i jest prawdopodobie«stwem,»e losowo wybrany przykªad z S nale»y do klasy K i, estymowanym jako n i n. Entropia podziaªu zbioru przykªadów S ze wzgl du na atrybut a jest zdeniowana jako: Ent(S a) = p j=1 i=1 n Sj n Ent(S j). Mo»na stwierdzi,»e entropia Ent(S a) jest ±redni wa»on dla entropii poszczególnych podzbiorów S j. Im mniejsza warto± Ent(S a), tym wi ksza jednorodno± klasykacji dla przykªadów podzielonych na podzbiory. Przyrost 4

informacji wynikaj cy z zastosowania atrybutu a do zbudowania testu dziel - cego zbiór przykªadów ucz cych S jest zdeniowany jako ró»nica: Gain(S, a) = Ent(S) Ent(S a). 3.1 Przykªad tworzenia drzewa Zaªó»my,»e chcemy klasykowa klientów sklepu elektronicznego pod wzgl dem tego czy kupi komputer czy nie. Elementy tego zbioru zestawiono w tabeli 2. Tablica 2: Zbiór przykªadów ucz cych opisuj cych grup klientów sklepu elektronicznego lp Dochody Student Pªe Kupuje komputer 1 ±rednie tak m»czyzna tak 2 ±rednie nie kobieta nie 3 wysokie tak kobieta tak 4 niskie tak m»czyzna nie 5 niskie tak kobieta nie 6 ±rednie tak kobieta tak 7 niskie nie kobieta nie 8 ±rednie nie m»czyzna nie W±ród przykªadów wyst puje binarna klasykacja. W zwi zku z tym miara entropii dla zbioru S wyra»a si wzorem: Ent(S) = p T ak lg 2 p T ak p Nie lg 2 p Nie Zbiór 8 przykªadów skªada si z 3 przykªadów decyzji T ak i 5 na decyzj Nie. Odpowiednie prawdopodobie«stwa s równe p tak = 3/8 oraz p nie = 5/8. Warto± entropii zwi zanej z binarn klasykacj rozwa»anego zbioru przykªadów jest nast puj ca: Ent(S) = (3/8) lg 2 (3/8) (5/8) lg 2 (5/8) = 0.531 + 0.424 = 0.955. Je±li wybierzemy atrybut dochody do zbudowania korzenia drzewa, a ma on 3 warto±ci: {niskie, rednie, wysokie}. Pierwszy podzbiór Sniskie = {4, 5, 7} zawiera 3 przykªady, które nale» do klasy decyzyjnej N ie. Drugi podzbiór S±rednie {1, 2, 6, 8} zawiera po 2 przykªady z obu klas, podczas, gdy podzbiór Swysokie = {3} zªo»ony jest z jednego przykªady z klasy T ak. Warto± entropii warunkowej ze wzgl du na ten atrybut jest nast puj ca: Ent(S dochody) = 3 8 Ent(S niskie ) + 4 8 Ent(S ±rednie ) + 1 8 Ent(S wysokie ) = (3 8 ( 0 log 2 0 1 log 2 1)+ 4 8 ( 1 2 log 2 1 2 1 2 log 2 1 2 )+ 1 8 ( 0 log 2 0 1 log 2 1) = 0 + 0.5 + 0 = 0.5 Przyrost informacji: GainInf ormation(s, dochody) = Ent(S) Ent(S dochody) = 0.955 0.5 = 0.455. Warto±ci miar przyrostu informacji wynikaj cych z zastosowania pozostaªych 5

dochody niskie wysokie ±rednie nie tak student tak tak nie nie Rysunek 2: Drzewo decyzyjne dla poj cia "kupuj komputer". atrybutów do budowy korzenia drzewa s nast puj ce: Gain(S, student) = 0.348 oraz Gain(S, pªe ) = 0.004. Podzbiory przykªadów przypisane gaª ziom odpowiadaj cym warto±ciom niskie oraz wysokie maj jednoznaczne przydziaªy do klas decyzyjnych, dlatego te ga- ª zie mo»na zako«czy li± mi etykietowanymi odpowiednio klasami tak i nie. W przypadku podzbiorów przykªadów S rednie = {1, 2, 6, 8} nale»y rekurencyjnie wywoªa algorytm. Z dwóch rozwa»anych atrybutów korzystniejszy przyrost informacji pozwala osi gn atrybut student, którego warto±ci jednoznacznie rozdzielaj podzbiór przykªadów na klas tak(przykªady 1,6) oraz klas nie (odpowiednio pozostaªe przykªady 2,8). 3.1.1 Problem z miar Information Gain Niestety miara przyrostu informacji (ang. gain) maj c dwa atrybuty do wyboru, wybierze ten o wi kszej liczbie warto±ci. Nie jest to po» dana wªa±ciwo±, zwªaszcza w sytuacjach mocnego zró»nicowania liczno±ci dziedzin atrybutów opisuj cych analizowane przykªady. Je±li rozwa»ymy skrajny przypadek, w którym pewien atrybut b, oznaczaj cy np. dat urodzin, ma tyle ró»nych warto±ci, ile jest przykªadów ucz cych, atrybut ten zostanie wybrany do zbudowania testu w w ¹le drzewa, gdy» maksymalizuje on warto± miary Gain(S, b). W rezultacie ka»dy z podzbiorów S i zawiera b dzie pojedynczy przykªad, co doprowadzi do stworzenia pªaskiego i równocze±nie bardzo szerokiego drzewa. Takie drzewo odwzorowuje dane ucz ce, lecz niestety jest maªo czytelne dla u»ytkownika i równocze±nie nie jest u»yteczne do predykcji klasykacji tych przykªadów, które nie s reprezentowane w zbiorze ucz cym. Je±li rozwa»ymy test z wykorzystaniem atrybutu b, który oznaczaª pytanie o dat urodzin, to zauwa»my, ze takie pytanie pozostanie bez odpowiedzi dla nowych przykªadów z inn warto±ci daty ni» te, które wyst piªy w zbiorze ucz cym. 3.1.2 Inne miary wyboru atrybutów do podziaªu drzewa W±ród innych mo»liwych do zastosowania miar wyboru atrybutu do podziaªu drzewa s : ˆ Split information zwana podziaªem informacji zaproponowana przez Quinlana, oceniaj ca podziaª zbioru przykªadów ze wzgl du na warto±ci z 6

dziedziny atrybutu a. Jest zdeniowana w nast puj cy sposób: Split(S a) = r j=1 S j S lg S j 2 S, gdzie S j jest podzbiorem przykªadów opisanych j-t warto±ci atrybutu a, r jest liczb ró»nych warto±ci w dziedzinie tego atrybutu. ˆ ilorazem przyrostu informacji(ang.gain ratio) zaproponowana równie» przez Quinlana jako miara do normalizacji przyrostu informacji i oceny jako±ci testu w w ¹le: Gainratio(S a) = Gain(S a) Split(S a). Zasada wyboru atrybutu do stworzenia w zªa w algorytmie indukcji drzew jest niezmieniona, tzn. zawsze wybiera b dziemy ten atrybut, który pozwala maksymalizowa warto± miary Gain ratio. 4 Binaryzacja drzew decyzyjnych W przypadku, gdy mamy do czynienia z bardziej zró»nicowanymi danymi, (nie tylko jako±ciowymi) o maªym zbiorze warto±ci, cz sto modykuje si podstawowy schemat algorytmu, tak, aby generowa binarne drzewa decyzyjne. Binarne drzewo decyzyjne charakteryzuje si tym,»e z ka»dego jego wewn trznego w zªa wychodz jedynie dwie kraw dzie, czyli ka»dy zbiór przykªadów zwi zany z w zªem dzieli si na dwa rozª czne podzbiory. Taki rodzaj drzew ogranicza wyst pienie zjawiska fragmentacji danych, tj. stopniowego podziaªu zbioru przykªadów na coraz mniejsze podzbiory, które mog zawiera zbyt maª liczb przykªadów. Konstruowanie binarnych drzew decyzyjnych wi»e si z innymi sposobami tworzenia testów do umieszczenia w w ¹le drzew, tak, aby odpowiedzi na test byªy zawsze dwuwarto±ciowe, np. prawda lub faªsz. 5 Post powanie w przypadku brakuj cych warto±ci atrybutów Rzeczywiste dane mog zawiera nieznane (niezdeniowane) warto±ci cz ±ci atrybutów (ang. unknown values of attributes) dla niektórych obiektów. Sytuacje takie mog wynika z bª dów podczas rejestracji danych, zagubienia zapisów b d¹ niedost pno±ci pewnych informacji. Wyst powanie niezdeniowanych warto±ci atrybutów wpªywa zarówno na sam proces budowy drzewa, jak i na pó¹niejsze u»ycie go do klasykowania nowych lub testowych obiektów. Cz ± metod stosowana jest we wst pnym przetwarzaniu danych przed u»yciem wªa±ciwego algorytmu indukcji. Wiele z nich jest ukierunkowanych na zast powanie nieznanej warto±ci atrybutu dla okre±lonego przykªadu warto±ci z dziedziny tego atrybutu. U»ywa si najcz ±ciej wyst puj cej warto±ci atrybutu, okre±lonej na podstawie przykªadów z peªnym opisem lub podzbioru tych przykªadów nale» cych do tej samej klasy decyzyjnej co analizowany przykªad. 7

6 Budowa i analiza drzew klasykacyjnych w ±rodowisku R W pakiecie R metoda wyznaczania drzew decyzyjnych dost pna jest w wielu ró»- nych funkcjach. Popularnie wykorzystywane s funkcje tree(tree), rpart(rpart) oraz cpart(party). Szczegóªowe opisy pakietów s dost pne w lokalizacjach: ˆ tree http://cran.r-project.org/web/packages/tree/tree.pdf, ˆ rpart zaktualizowany 3 stycznia 2010 roku: http://cran.r-project. org/web/packages/rpart/rpart.pdf. Gdyby±my chcieli zbudowa drzewo klasykacyjne dla dobrze znanego nam ju» zbioru iris, przy czym jako zbiór ucz cy wybra chcielibysmy pierwsze 75 obserwacji formuªa ±rodowiska R do wykonania tego zadania b dzie miaªa posta nast puj c : > sub <-c(sample(1:150,75)) > library(rpart) > fit<-rpart(species~.,data=iris,subset=sub) Efektem b dzie tekstowo rozpisane drzewo z zagnie»d»eniami odpowiadaj cymi zagnie»d»eniom w drzewie (podw zªy). > fit n= 75 node), split, n, loss, yval, (yprob) * denotes terminal node 1) root 75 49 setosa (0.34666667 0.32000000 0.33333333) 2) Petal.Length< 2.45 26 0 setosa (1.00000000 0.00000000 0.00000000) * 3) Petal.Length>=2.45 49 24 virginica (0.00000000 0.48979592 0.51020408) 6) Petal.Width< 1.55 22 0 versicolor (0.00000000 1.00000000 0.00000000) * 7) Petal.Width>=1.55 27 2 virginica (0.00000000 0.07407407 0.92592593) * Opis drzewa ma odpowiedni format: node), split, n, loss, yval, (yprob) * denotes terminal node gdzie: node) oznacza numer w zªa, split - nazw cechy, która dokonaªa podziaªu, n - liczb elementów danego w zªa, loss - liczb bª dnie klasykowanych elementów stosuj c reguª wi kszo±ciow. yval b dzie odpowiada warto±ci predykcji przynale»no±ci klasowej na podstawie reguªy wi kszo±ciowej, (yprob) z kolei b dzie przedstawia wektor estymatorów prawdopodobie«stw przynale»no- ±ci do danej klasy. Nazwy klas b d uporz dkowane leksykogracznie. W opisie takim * oznacza element b d cy li±ciem w drzewie. Widzimy zatem,»e drzewo tak utworzone ma 7 w zªów licz c z korzeniem drzewa. Widzimy tak»e,»e pierwszym atrybutem wybranym do budowy drzewa jest cecha Petal.Length, która w przypadku, gdy warto± Petal.Length jest mniejsza od 2.45 od razu prowadzi do klasykacji obiektu speªniaj cego ten warunek do klasy setosa. Takich elementów znaleziono 26. Je±li za± warto± Petal.Length jest wi ksza 8

b d¹ równa warto±ci 2.45 wówczas b dziemy musieli sprawdzi dodatkowy warunek dla cechy Petal.Width. Gdy teraz warto± tej cechy b dzie mniejsza ni» 1.55 obiekt zostanie przypisany do klasy versicolor, w przeciwnym przypadku do klasy virginica. Nale»y zwróci uwag na fakt,»e takie drzewo zbudowano do 75 elementów ze zbioru iris. Dla innego drzewa, chocia»by o wi kszym rozmiarze powstaªe drzewo mo»e wygl da zupeªnie inaczej. Jednak, je±li takie przedstawienie drzewa decyzyjnego utworzonego dla zbioru iris jest dla nas nieczytelne mo»emy wykorzysta zasoby dodatkowych pakietów ±rodowiska R, np rattle, który po zainstalowaniu musi by oczywi±cie zaªadowany do ±rodowiska R. Dokonujemy tego wywoªuj c jedn komend R: > library(rattle) Teraz wywoªuj c ju» komend pakietu rattle o nazwie drawtreenodes a konkretnie: drawtreenodes(fit, col = NULL, nodeinfo = FALSE,decimals = 2, print.levels = TRUE, new = TRUE) otrzymujemy w efekcie drzewo takie jak przedstawia to rysunek 3. Petal.Length < > 2.45 2 Petal.Width < > 1.55 setosa 26 obs 100% 6 versicolor 22 obs 100% 7 virginica 27 obs 92.6% Rysunek 3: Drzewo decyzyjne Mo»emy tak»e posili si standardowymi funkcjami ±rodowiska R, które dostarczaj bardzo szczegóªowych wyników. Co ciekawe wyrysowanie wynikowego drzewa jest mo»liwe przez wywoªanie kolejno po sobie dwóch komend R: plot(fit) oraz text(fit). Efektem tego b dzie otrzymane drzewo decyzyjne w tzw. formacie tekstowym. Szczegóªowych wyników za± dostarcza funkcja summary, której wywoªanie i wyniki tego wywoªania mo»emy zauwa»y poni»ej. > summary(fit) Call: rpart(formula = Species ~., data = iris, subset = sub) 9

n= 75 CP nsplit rel error xerror xstd 1 0.5102041 0 1.00000000 1.18367347 0.07399660 2 0.4489796 1 0.48979592 0.57142857 0.08548723 3 0.0100000 2 0.04081633 0.06122449 0.03463380 Node number 1: 75 observations, complexity param=0.5102041 predicted class=setosa expected loss=0.6533333 class counts: 26 24 25 probabilities: 0.347 0.320 0.333 left son=2 (26 obs) right son=3 (49 obs) Primary splits: Petal.Length < 2.45 to the left, improve=25.48354, (0 missing) Petal.Width < 0.8 to the left, improve=25.48354, (0 missing) Sepal.Length < 5.55 to the left, improve=15.29298, (0 missing) Sepal.Width < 3.25 to the right, improve=12.71602, (0 missing) Surrogate splits: Petal.Width < 0.8 to the left, agree=1.000, adj=1.000, (0 split) Sepal.Length < 5.45 to the left, agree=0.880, adj=0.654, (0 split) Sepal.Width < 3.25 to the right, agree=0.867, adj=0.615, (0 split) Node number 2: 26 observations predicted class=setosa expected loss=0 class counts: 26 0 0 probabilities: 1.000 0.000 0.000 Node number 3: 49 observations, complexity param=0.4489796 predicted class=virginica expected loss=0.4897959 class counts: 0 24 25 probabilities: 0.000 0.490 0.510 left son=6 (22 obs) right son=7 (27 obs) Primary splits: Petal.Width < 1.55 to the left, improve=20.786090, (0 missing) Petal.Length < 4.85 to the left, improve=17.143130, (0 missing) Sepal.Length < 6.25 to the left, improve= 6.369796, (0 missing) Sepal.Width < 2.95 to the left, improve= 1.320830, (0 missing) Surrogate splits: Petal.Length < 4.75 to the left, agree=0.939, adj=0.864, (0 split) Sepal.Length < 5.75 to the left, agree=0.755, adj=0.455, (0 split) Sepal.Width < 2.45 to the left, agree=0.653, adj=0.227, (0 split) Node number 6: 22 observations predicted class=versicolor expected loss=0 class counts: 0 22 0 probabilities: 0.000 1.000 0.000 Node number 7: 27 observations predicted class=virginica expected loss=0.07407407 class counts: 0 2 25 probabilities: 0.000 0.074 0.926 > 10

Graczne przedstawienie reguªy klasykacyjnej zadanej przez drzewo mo»- liwe jest dzi ki instrukcji R postaci rpart(y~x,data="",cp=0.03,minisplit=5), która dla naszego zbioru iris mo»e wygl da nast puj co: rpart(species~.,data=iris,cp=0.03) n= 150 node), split, n, loss, yval, (yprob) * denotes terminal node 1) root 150 100 setosa (0.33333333 0.33333333 0.33333333) 2) Petal.Length< 2.45 50 0 setosa (1.00000000 0.00000000 0.00000000) * 3) Petal.Length>=2.45 100 50 versicolor (0.00000000 0.50000000 0.50000000) 6) Petal.Width< 1.75 54 5 versicolor (0.00000000 0.90740741 0.09259259) * 7) Petal.Width>=1.75 46 1 virginica (0.00000000 0.02173913 0.97826087) * > Zagadnieniem niezwykle istotnym jest okre±lenie kryterium budowy drzewa optymalnego. Nale»y sobie zada pytanie, co rozumiemy przez drzewo optymalne, czy jest to drzewo o najmniejszej liczbie w zªów, czy mo»e drzewo o najmniejszej wysoko±ci, czy jeszcze inne warunki b d okre±la optymalno± drzewa? Proponujemy, wykorzystanie informacji o bª dach krosswalidacyjnych. Przy u»yciu funkcji printcp mo»emy otrzyma informacje o wielko±ciach poddrzew optymalnych w zale»no±ci od warto±ci cp (patrz na kod poni»ej). > printcp(fit) Classification tree: rpart(formula = Species ~., data = iris, subset = sub) Variables actually used in tree construction: [1] Petal.Length Petal.Width Root node error: 49/75 = 0.65333 n= 75 CP nsplit rel error xerror xstd 1 0.51020 0 1.000000 1.183673 0.073997 2 0.44898 1 0.489796 0.571429 0.085487 3 0.01000 2 0.040816 0.061224 0.034634 > plotcp(fit) > Efektem b dzie wªa±nie wykres tych bª dow krosswalidacyjnych (rysunek 4) Funkcja printcp zwraca warto± xerror, która jest ilorazem SSE cv dla danego drzewa i SSE dla korzenia. Zwraca te» bª d standardowy std (xstd). B dziemy ostatecznie wybiera jedn z dwóch opcji: 1. drzewo z najmniejsz warto±ci xerror (xerror min ), 2. drzewo o najmniejszej liczbie podziaªów, gdzie xerror < xerror min + xstd min. 11

size of tree 1 2 3 X val Relative Error 0.0 0.2 0.4 0.6 0.8 1.0 1.2 1.4 Inf 0.48 0.067 cp Rysunek 4: Wykres bª dów krosswalidacyjnych Minimalna warto± xerror w naszym przypadku to 0.061224, wi c drzewo o minimalnej liczbie li±ci musi mie xerror mniejszy ni» xerror min + xstd min = 0.061+0.034 = 0.095. Czyli szukamy drzewa, które ma warto± xerror mniejsz ni» 0.095. B dzie to opcja z 1 lub 2 podziaªami. 7 Bibliograa Opracowanie przygotowano w oparciu o prace: 1. J. Koronacki, J. wik: Statystyczne systemy ucz ce si, wydanie drugie, Exit, Warsaw, 2008, rozdziaª 4. 2. J. wik, J. Mielniczuk: Statystyczne systemy ucz ce si - wiczenia w oparciu o pakiet R, Ocyna Wydawnicza PW, Warszawa, 2009. 3. Biecek P.: Na przeªaj przez Data Mining, http://www.biecek.pl/r/ naprzelajprzezdm.pdf 4. Koronacki J. and Mielniczuk J., Statystyka dla studentów kierunków technicznych i przyrodniczych. Wydawnictwa Naukowo-Techniczne, Warszawa, Polska, 2006. 12