Wyk lad 6: Drzewa decyzyjne



Podobne dokumenty
Drzewa decyzyjne. Nguyen Hung Son. Nguyen Hung Son () DT 1 / 34

Systemy decyzyjne Wyk lad 4: Drzewa decyzyjne

Wyk lad 7: Drzewa decyzyjne dla dużych zbiorów danych

Systemy decyzyjne Wykªad 5: Drzewa decyzyjne

Wyk lad 7: Drzewa decyzyjne dla dużych zbiorów danych

Wyk lad 8: Leniwe metody klasyfikacji

Hard-Margin Support Vector Machines

Machine Learning for Data Science (CS4786) Lecture11. Random Projections & Canonical Correlation Analysis

Wnioskowanie Boolowskie i teoria zbiorów przybli»onych

Linear Classification and Logistic Regression. Pascal Fua IC-CVLab

WYKŁAD 11 Uczenie maszynowe drzewa decyzyjne

Rozpoznawanie twarzy metodą PCA Michał Bereta 1. Testowanie statystycznej istotności różnic między jakością klasyfikatorów

TTIC 31210: Advanced Natural Language Processing. Kevin Gimpel Spring Lecture 9: Inference in Structured Prediction

Weronika Mysliwiec, klasa 8W, rok szkolny 2018/2019

Data Mining Wykład 5. Indukcja drzew decyzyjnych - Indeks Gini & Zysk informacyjny. Indeks Gini. Indeks Gini - Przykład

I. LOGICZNE STRUKTURY DRZEWIASTE

Sztuczna inteligencja : Naiwny klasyfikator Bayesa

Wprowadzenie do programu RapidMiner, część 2 Michał Bereta 1. Wykorzystanie wykresu ROC do porównania modeli klasyfikatorów

Wyklad 1. Analiza danych za pomocą pakietu SAS. Obiekty i zmienne. Rodzaje zmiennych

Helena Boguta, klasa 8W, rok szkolny 2018/2019

Baza danych dla potrzeb zgłębiania DMX

Machine Learning for Data Science (CS4786) Lecture 11. Spectral Embedding + Clustering

WYŻSZA SZKOŁA INFORMATYKI STOSOWANEJ I ZARZĄDZANIA

tum.de/fall2018/ in2357

Wnioskowanie Boolowskie i teoria zbiorów przybli»onych

Zastosowanie metod statystycznych do problemu ujednoznaczniania struktury zdania w języku polskim

SID Wykład 10 Systemy uczace się

A Zadanie

Algorytmy graficzne. Podstawy kompresji danych fragment wykładu. Marcin Wilczewski

Indukowane Reguły Decyzyjne I. Wykład 3

ALGORYTMY I STRUKTURY DANYCH

Zagadnienia transportowe

Logika I. Wykład 2. Działania na zbiorach

Ćwiczenie 6. Hurtownie danych

Test F- Snedecora. będzie zmienną losową chi-kwadrat o k 1 stopniach swobody a χ

Machine Learning for Data Science (CS4786) Lecture 24. Differential Privacy and Re-useable Holdout

Liczby zespolone C := R 2.

OpenPoland.net API Documentation

Algorytmy klasyfikacji

Few-fermion thermometry

Zarządzanie sieciami telekomunikacyjnymi

SYSTEMY UCZĄCE SIĘ WYKŁAD 3. DRZEWA DECYZYJNE. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

SSW1.1, HFW Fry #20, Zeno #25 Benchmark: Qtr.1. Fry #65, Zeno #67. like

ROZWIĄZANIA ZADAŃ Zestaw P3 Odpowiedzi do zadań zamkniętych

utrzymania swoich obecnych klientów i dowiedzia la sie, że metody data mining moga

Revenue Maximization. Sept. 25, 2018

TTIC 31210: Advanced Natural Language Processing. Kevin Gimpel Spring Lecture 8: Structured PredicCon 2

Analysis of Movie Profitability STAT 469 IN CLASS ANALYSIS #2

PODSTAWY DZIAŁANIA UKŁADÓW CYFROWYCH

Matematyka A, kolokwium, 15 maja 2013 rozwia. ciem rozwia

PRZYKŁAD ZASTOSOWANIA DOKŁADNEGO NIEPARAMETRYCZNEGO PRZEDZIAŁU UFNOŚCI DLA VaR. Wojciech Zieliński

Data Mining Wykład 4. Plan wykładu

Twierdzenie Bayesa. Indukowane Reguły Decyzyjne Jakub Kuliński Nr albumu: 53623

dr inż. Cezary Wiśniewski Płock, 2006

Systemy decyzyjne. Wykład 3: Wnioskowanie Boolowskie w obliczeniu Redutów i reguł decyzyjnych. Nguyen Hung Son. Nguyen Hung Son () 1 / 61

PROE wykład 7 kontenery tablicowe, listy. dr inż. Jacek Naruniec

Zadanie 1. Liczba szkód w każdym z trzech kolejnych lat dla pewnego ubezpieczonego ma rozkład równomierny:

20PLN dla pierwszych 50 sztuk oraz 15PLN dla dalszych. Zysk ze sprzedaży biurka wynosi 40PLN dla pierwszych 20 sztuk oraz 50PLN dla dalszych.

Algorytmy i Struktury Danych.

Co to są drzewa decyzji

Laboratorium 7. Support Vector Machines (klasyfikacja).

EGZAMIN MAGISTERSKI, 24 czerwca 2013 Matematyka w ekonomii i ubezpieczeniach

Traceability. matrix

Has the heat wave frequency or intensity changed in Poland since 1950?

Camspot 4.4 Camspot 4.5

Klasyfikacja obiektów Drzewa decyzyjne (drzewa klasyfikacyjne)

MoA-Net: Self-supervised Motion Segmentation. Pia Bideau, Rakesh R Menon, Erik Learned-Miller

Ćwiczenie nr 2 Zbiory rozmyte logika rozmyta Rozmywanie, wnioskowanie, baza reguł, wyostrzanie

Uczenie nienadzorowane Uczenie nadzorowane Algorytmy aproksymacji funkcji. uczenia symbolicznego

Reguły decyzyjne, algorytm AQ i CN2. Reguły asocjacyjne, algorytm Apriori.

Zakres pomiaru (Ω) Rozdzielczość (Ω) Dokładność pomiaru

SubVersion. Piotr Mikulski. SubVersion. P. Mikulski. Co to jest subversion? Zalety SubVersion. Wady SubVersion. Inne różnice SubVersion i CVS

MATEMATYKA 9. INSTYTUT MEDICUS Kurs przygotowawczy do matury i rekrutacji na studia medyczne Rok 2017/2018 FUNKCJE WYKŁADNICZE, LOGARYTMY

Testy jednostkowe - zastosowanie oprogramowania JUNIT 4.0 Zofia Kruczkiewicz

Instrukcja konfiguracji usługi Wirtualnej Sieci Prywatnej w systemie Mac OSX

B jest globalnym pokryciem zbioru {d} wtedy i tylko wtedy, gdy {d} zależy od B i nie istnieje B T takie, że {d} zależy od B ;

Previously on CSCI 4622

Wojewodztwo Koszalinskie: Obiekty i walory krajoznawcze (Inwentaryzacja krajoznawcza Polski) (Polish Edition)


Tychy, plan miasta: Skala 1: (Polish Edition)

Odpowiedzi i schematy oceniania Arkusz 23 Zadania zamknięte. Wskazówki do rozwiązania. Iloczyn dwóch liczb ujemnych jest liczbą dodatnią, zatem

Instrukcja do ćwiczenia Kompensacja mocy biernej

Statystyki opisowe. Marcin Zajenkowski. Marcin Zajenkowski () Statystyki opisowe 1 / 57

Sztuczna Inteligencja Projekt

MAGNESY KATALOG d e s i g n p r o d u c e d e l i v e r

PL/SQL. Zaawansowane tematy PL/SQL

HAPPY ANIMALS L01 HAPPY ANIMALS L03 HAPPY ANIMALS L05 HAPPY ANIMALS L07

HAPPY ANIMALS L02 HAPPY ANIMALS L04 HAPPY ANIMALS L06 HAPPY ANIMALS L08

Agnostic Learning and VC dimension

JĘZYK ANGIELSKI ĆWICZENIA ORAZ REPETYTORIUM GRAMATYCZNE

Plan wykładu. Rozmyte zapytania do Baz Danych. Wstęp. Wstęp informacja rozmyta. Logika rozmyta w Bazach Danych nieprecyzyjne wartości atrybutów

MaPlan Sp. z O.O. Click here if your download doesn"t start automatically

How to share data from SQL database table to the OPC Server? Jak udostępnić dane z tabeli bazy SQL do serwera OPC? samouczek ANT.

y = The Chain Rule Show all work. No calculator unless otherwise stated. If asked to Explain your answer, write in complete sentences.

Elementy cyfrowe i układy logiczne

DO MONTAŻU POTRZEBNE SĄ DWIE OSOBY! INSTALLATION REQUIRES TWO PEOPLE!

Podprzestrzeń wektorowa, baza, suma prosta i wymiar Javier de Lucas

Analiza danych DRZEWA DECYZYJNE. Drzewa decyzyjne. Entropia. test 1 dopełnienie testu 1

Wyk lad 3 Wielomiany i u lamki proste

Rolki i arkusze stosowane w handlu Commercial rolls and sheets. ko-box.pl

Transkrypt:

Wyk lad 6: Drzewa decyzyjne

Outline 1 2 Konstrukcja drzew decyzyjnych Ogólny Kryterium wyboru testu Przycinanie drzew Problem brakujacych wartości 3 Soft cuts and soft Decision tree

Co to jest drzewo decyzyjne Jest to struktura drzewiasta, w której wez ly wewnetrzne zawieraja testy na wartościach atrybutów z każdego wez la wewnetrznego wychodzi tyle ga l ezi, ile jest możliwych wyników testu w tym wezle; liście zawieraja decyzje o klasyfikacji obiektów Drzewo decyzyjne koduje program zawierajacy same instrukcje warunkowe

Przyk lad tablicy decyzyjnej x outlook Temperature humidity wind play(x) 1 sunny hot high weak no 2 sunny hot high strong no 3 overcast hot high weak yes 4 rain mild high weak yes 5 rain cold normal weak yes 6 rain cold normal strong no 7 overcast cold normal strong yes 8 sunny mild high weak no 9 sunny cold normal weak yes 10 rain mild normal weak yes 11 sunny mild normal strong yes 12 overcast mild high strong yes 13 overcast hot normal weak yes 14 rain mild high strong no

Przyk lad drzewa decyzyjnego

Klasyfikacja drzewem decyzyjnym x outlook Temperature humidity wind play(x) 15 rainy hot high weak??? dec(15) = yes

Outline 1 2 Konstrukcja drzew decyzyjnych Ogólny Kryterium wyboru testu Przycinanie drzew Problem brakujacych wartości 3 Soft cuts and soft Decision tree

Rodzaje testów Wyróżniamy 2 klasy funkcji testów Testy operuja sie na wartościach pojedyńczego atrybutu (univariate tree): t : V a R t Testy bed ace kombinacja wartości kilku atrybutów (multivariate tree). t : V a1 V a2... V ak R t gdzie Va : dziedzina atrybutu a Rt : zbiór możliwych wyników testu

Przyk lady funkcji testu Dla atrybutów nominalnych a i oraz obiekt x: test tożsamościowy: t(x) { a i (x) 1 if (a i (x) = v) test równościowy: t(x) = 0 otherwise { 1 if (a i (x) V ) test przynależnościowy: t(x) = 0 otherwise Dla atrybutów o wartościach ciag lych: test nierównościowy: { 1 if (a i (x) > c) t(x) = 0 otherwise, i.e., (a i (x) c) wartościa progowa lub cieciem gdzie c jest

Outline 1 2 Konstrukcja drzew decyzyjnych Ogólny Kryterium wyboru testu Przycinanie drzew Problem brakujacych wartości 3 Soft cuts and soft Decision tree

Ocena jakości drzewa Jakość drzewa ocenia sie rozmiarem: im drzewo jest mniejsze, tym lepsze ma la liczba wez lów, ma la wysokość, lub ma la liczba liści; dok ladnościa klasyfikacji na zbiorze treningowym dok ladnościa klasyfikacji na zbiorze testowym Na przyk lad: Q(T ) = α size(t ) + β accuracy(t, P ) gdzie α, β sa liczbami rzeczywistymi size(.) jest rozmiarem drzewa accuracy(.,.) jest jakościa klasyfikacji

Problem konstrukcji drzew optymalnych: Dane sa: tablica decyzyjna S zbiór funkcji testów TEST, kryterium jakości Q Szukane: drzewo decyzyjne T o najwyższej jakości Q(T). Dla wi ekszości parametrów, problem szukania optymalnego drzewa jest NP-trudny! Wnioski: Trudno znaleźć optymalne drzewo w czasie wielomianowym; Konieczność projektowania heurystyk. Quiz: Czy drzewo z przyk ladu jest optymalne?

decyzyjne

Outline 1 2 Konstrukcja drzew decyzyjnych Ogólny Kryterium wyboru testu Przycinanie drzew Problem brakujacych wartości 3 Soft cuts and soft Decision tree

Funkcja rekurencyjna buduj drzewo(u, dec, T): 1: if (kryterium stopu(u, dec) = true) then 2: T.etykieta = kategoria(u, dec); 3: return; 4: end if 5: t := wybierz test(u, TEST); 6: T.test := t; 7: for v R t do 8: U v := {x U : t(x) = v}; 9: utwórz nowe poddrzewo T ; 10: T.ga l aź(v) = T ; 11: buduj drzewo(u v, dec, T ) 12: end for

Funkcje pomocnicze Kryterium stopu: Zatrzymamy konstrukcji drzewa, gdy aktualny zbiór obiektów: jest pusty lub zawiera obiekty wy l acznie jednej klasy decyzyjnej lub nie ulega podziale przez żaden test Wyznaczenie etykiety zasada wiekszościow a: kategoria(p, dec) = arg max c V dec P [dec=c] tzn., etykieta dla danego zbioru obiektów jest klasa decyzyjna najliczniej reprezentowana w tym zbiorze. Kryterium wyboru testu: heurytyczna funkcja oceniajaca testy.

Outline 1 2 Konstrukcja drzew decyzyjnych Ogólny Kryterium wyboru testu Przycinanie drzew Problem brakujacych wartości 3 Soft cuts and soft Decision tree

Miary różnorodności zbioru Każdy zbiór obiektów X ulega podziale na klasy decyzyjne: X = C 1 C 2... C d gdzie C i = {u X : dec(u) = i}. Wektor (p 1,..., p r ), gdzie p i = C i X, nazywamy rozk ladem klas decyzyjnych w X. Conflict(X) = C i C j = 1 ( X 2 C i 2) 2 i<j Entropy(X) = C i X log C i X = p i log p i

W lasności miar róznorodności Funkcja conflict(x) oraz Ent(X) przyjmuja najwieksz a wartość, gdy rozk lad klas decyzyjnych w zbiorze X jest równomierny. najmniejsza wartość, gdy wszystkie obiekty w X sa jednej kategorii (X jest jednorodny) W przypadku 2 klas decyzyjnych: Conflict(p, 1 p) = X 2 p(1 p) Entropy(p, 1 p) = p log p (1 p) log(1 p)

Kryteria wyboru testu Niech t definiuje podzia l X na podzbiory: X 1... X r. Możemy stosować nastepuj ace miary do oceniania testów: liczba par obiektów rozróżnionych przez test t. disc(t, X) = conflict(x) conflict(x i ) kryterium przyrostu informacji (ang. Inf. gain). Gain(t, X) = Entropy(X) i p i Entropy(X i ) Im wieksze sa wartości tych ocen, tym lepszy jest test.

Miara Entropii dla ci eć N i p i Entropy(X i )

Rozróżnialność dla ci eć

W lasności funkcji ocen: Monotoniczność: Jeśli t definiuje drobniejszy podzia l niż t to Gain(t, X) Gain(t, X) (analogiczna sytuacje mamy dla miary conflict(). Funkcje ocen testu t przyjmuja ma le wartości jeśli rozk lady decyzyjne w podzbiorach wyznaczanych przez t sa zbliżone.

Uniwersalne oceny Zamiast bezwzgl ednego przyrostu informacji, stosujemy wspó lczynnik przyrostu informacji Gain ratio = Gain(t, X) iv(t, X) gdzie iv(t, X), zwana wartościa informacyjna testu t (information value), jest definiowana jak nast.: iv(t, X) = r i=1 X i X log X i X

Ocena funkcji testu Rozróżnialność: disc(t, X) = conflict(x) conflict(x i ) Przyrostu informacji (Information gain). Gain(t, X) = Entropy(X) i p i Entropy(X i ) Wspó lczynnik przyrostu informacji (gain ratio) Gain ratio = Gain(t, X) r X i i=1 X log X i X Inne (np. Gini s index, test χ 2,...)

Outline 1 2 Konstrukcja drzew decyzyjnych Ogólny Kryterium wyboru testu Przycinanie drzew Problem brakujacych wartości 3 Soft cuts and soft Decision tree

Przycinanie drzew Problem nadmiernego dopasowania do danych trenujacych (prob. przeuczenia sie). Rozwiazanie: zasada krótkiego opisu: skracamy opis kosztem dok ladności klasyfikacji w zbiorze treningowym zastapienie podrzewa nowym liściem (przycinanie) lub mniejszym podrzewem. Podstawowe pytania: Q: Kiedy poddrzewo może być zastapione liściem? A: jeśli nowy liść jest niegorszy niż istniejace poddrzewo dla nowych obiektów (nienależacych do zbioru treningowego). Q: Jak to sprawdzić? A: testujemy na próbce zwanej zbiorem przycinania!

Ogólny algorytmu przycinania Funkcja przytnij(t, P ) 1: for all n T do 2: utwórz nowy liść l etykietowany kategoria dominujac a w zbiorze P n 3: if (liść l jest niegorszy od poddrzewa o korzeniu w n pod wzgledem zbioru P ) then 4: zastap poddrzewo o korzeniu w n liściem l; 5: end if 6: end for 7: return T

Kryterium przycinania Niech e T (l) - b l ad klasyfikacji kandydujacego liścia l, e T (n) - b l ad klasyfikacji poddrzewa o korzeniu w n. Przycinanie ma miejsce, gdy e T (n)(1 e T (n)) e T (l) e T (n) + µ P T,n na ogó l przyjmujemy µ = 1.

Przyk lad

Outline 1 2 Konstrukcja drzew decyzyjnych Ogólny Kryterium wyboru testu Przycinanie drzew Problem brakujacych wartości 3 Soft cuts and soft Decision tree

Brakuje danych podczas uczenia si e Możliwe sa nastepuj ace rozwiazania: Zredukowanie wartości kryterium wyboru testu (np. przyrostu informacji) dla danego testu o wspó lczynnik równy: liczba obiektów z nieznanymi wartościami liczba wszystkich obiektów Wype lnienie nieznanych wartości atrybutu najcześciej wystepuj ac a wartościa w zbiorze obiektów zwiazanych z aktualnym wez lem Wype lnienie nieznanych wartości atrybutu średnia ważona wyznaczona na jego zbiorze wartości.

Brakuje danych podczas klasyfikowania Możliwe rozwiazania: Zatrzymanie procesu klasyfikacji w aktualnym weźle i zwrócenie wiekszościowej etykiety dla tego wez la (etykiety, jaka ma najwieksz a liczbe obiektów trenujacych w tym weźle) Wype lnienie nieznanej wartości wed lug jednej z heurystyk podanych wyżej dla przypadku konstruowania drzewa Uwzglednienie wszystkich ga l ezi (wszystkich możliwych wyników testu) i po l aczenie odpowiednio zważonych probabilistycznie rezultatatów w rozk lad prawdopodobieństwa na zbiorze możliwych klas decyzyjnych dla obiektu testowego.

Soft cuts A soft cut is any triple p = a, l, r, where a A is an attribute, l, r R are called the left and right bounds of p ; the value ε = r l 2 is called the uncertain radius of p. We say that a soft cut p discerns a pair of objects x 1, x 2 if a (x 1 ) < l and a (x 2 ) > r. l r a

Some interpretations of p = a, l, r : there is a real cut somewhere between l and r. for any value v [l, r] we are not able to check if v is either on the left side or on the right side of the real cut. [l, r] is an uncertain interval of the soft cut p. normal cut can be treated as soft cut of radius 0. l r a

Outline 1 2 Konstrukcja drzew decyzyjnych Ogólny Kryterium wyboru testu Przycinanie drzew Problem brakujacych wartości 3 Soft cuts and soft Decision tree

Soft Decision tree The test functions can be defined by soft cuts Here we propose two strategies using described above soft cuts: fuzzy decision tree: any new object u can be classified as follows: For every internal node, compute the probability that u turns left and u turns right; For every leave L compute the probability that u is reaching L; The decision for u is equal to decision labeling the leaf with largest probability. rough decision tree: in case of uncertainty Use both left and right subtrees to classify the new object; Put together their answer and return the answer vector; Vote for the best decision class.

Outline 1 2 Konstrukcja drzew decyzyjnych Ogólny Kryterium wyboru testu Przycinanie drzew Problem brakujacych wartości 3 Soft cuts and soft Decision tree

STANDARD ALGORITHM FOR BEST CUT For a given attribute a and a set of candidate cuts {c 1,..., c N }, the best cut (a, c i ) with respect to given heuristic measure F : {c 1,..., c N } R + can be founded in time Ω(N). The minimal number of simple SQL queries of form SELECT COUNT FROM data table WHERE (a BETWEEN c L AND c R ) GROUPED BY dec. necessary to find out the best cut is Ω(dN)

OUR PROPOSITIONS FOR SOFT CUTS Tail cuts can be eliminated Divide and Conquer Technique

Divide and Conquer Technique The algorithm outline: 1. Divide the set of possible cuts into k intervals 2. Chose the interval to which the best cut may belong with the highest probability. 3. If the considered interval is not STABLE enough then Go to Step 1 4. Return the current interval as a result. The number of SQL queries is O(d k log k n) and is minimum for k = 3; How to define the measure evaluating the quality of the interval [c L ; c R ]? This measure should estimate the quality of the best cut from [c L ; c R ].

We construct estimation measures for intervals in four cases: as- Independency sumption Dependency assumption Discernibility measure Entropy Measure????

Outline 1 2 Konstrukcja drzew decyzyjnych Ogólny Kryterium wyboru testu Przycinanie drzew Problem brakujacych wartości 3 Soft cuts and soft Decision tree

Under dependency assumption, i.e. x 1 M 1 x 2 M 2... x d M d x 1 +... + x d M 1 +... + M d = x M discernibility measure for [c L ; c R ] can be estimated by: W (c L ) + W (c R ) + conflict(c L ; c R ) 2 =: t [0, 1] + [W (c R) W (c L )] 2 conflict(c L ; x R )

Under dependency assumption, i.e. x 1,..., x d are independent random variables with uniform distribution over sets {0,..., M 1 },..., {0,..., M d }, respectively. The mean E(W (c)) for any cut c [c L ; c R ] satisfies E(W (c)) = W (c L) + W (c R ) + conflict(c L ; c R ) 2 and for the standard deviation of W (c) we have 2 n D 2 (W (c)) = M i(m i + 2) j L j ) 12 j i(r i=1 One can construct the measure estimating quality of the best cut in [c L ; c R ] by Eval ([c L ; c R ], α) = E(W (c)) + α D 2 (W (c))

Example of tail cut elimination

Searching for best cuts