Drzewa klasyfikacyjne algorytm podstawowy

Podobne dokumenty
Podstawy. Prawdopodobieństwo. Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 218/633

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

Wprowadzenie do klasyfikacji

Algorytmy klasyfikacji

Złożoność i zagadnienia implementacyjne. Wybierz najlepszy atrybut i ustaw jako test w korzeniu. Stwórz gałąź dla każdej wartości atrybutu.

ALGORYTM RANDOM FOREST

Metody klasyfikacji danych - część 1 p.1/24

Drzewa decyzyjne i lasy losowe

Indukcja drzew decyzyjnych

INDUKCJA DRZEW DECYZYJNYCH

SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska

8. Drzewa decyzyjne, bagging, boosting i lasy losowe

Co to są drzewa decyzji

Klasyfikacja. Indeks Gini Zysk informacyjny. Eksploracja danych. Klasyfikacja wykład 2

Drzewa decyzyjne. Inteligentne Obliczenia. Wydział Mechatroniki Politechniki Warszawskiej. Anna Sztyber

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

WYKŁAD 11 Uczenie maszynowe drzewa decyzyjne

Klasyfikacja obiektów Drzewa decyzyjne (drzewa klasyfikacyjne)

Drzewa klasyfikacyjne Lasy losowe. Wprowadzenie

INDUKCJA DRZEW DECYZYJNYCH

Algorytmy metaheurystyczne Wykład 11. Piotr Syga

SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska.

SAS wybrane elementy. DATA MINING Część III. Seweryn Kowalski 2006

Metody klasyfikacji i rozpoznawania wzorców. Najważniejsze rodzaje klasyfikatorów

Laboratorium 6. Indukcja drzew decyzyjnych.

Algorytmy klasyfikacji

Określanie ważności atrybutów. RapidMiner

Konkurs z przedmiotu eksploracja i analiza danych: problem regresji i klasyfikacji

< K (2) = ( Adams, John ), P (2) = adres bloku 2 > < K (1) = ( Aaron, Ed ), P (1) = adres bloku 1 >

Indukowane Reguły Decyzyjne I. Wykład 3

Metoda Automatycznej Detekcji Interakcji CHAID

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

Klasyfikacja. Sformułowanie problemu Metody klasyfikacji Kryteria oceny metod klasyfikacji. Eksploracja danych. Klasyfikacja wykład 1

Kompresja danych Streszczenie Studia Dzienne Wykład 10,

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

Wprowadzenie do programu RapidMiner Studio 7.6, część 4 Michał Bereta

Eksploracja danych. KLASYFIKACJA I REGRESJA cz. 2. Wojciech Waloszek. Teresa Zawadzka.

Wybrane zagadnienia uczenia maszynowego. Zastosowania Informatyki w Informatyce W2 Krzysztof Krawiec

Automatyczne wyodrębnianie reguł

Algorytmy i Struktury Danych

Indukowane Reguły Decyzyjne I. Wykład 8

ED Laboratorium 3. Drzewa decyzyjne

Przykład eksploracji danych o naturze statystycznej Próba 1 wartości zmiennej losowej odległość

METODY INŻYNIERII WIEDZY

Wybrane zadania przygotowujące do egzaminu z ISO- cz. 2. dr Piotr Wąsiewicz

Wojciech Skwirz

Algorytmy decyzyjne będące alternatywą dla sieci neuronowych

Laboratorium 4. Naiwny klasyfikator Bayesa.

ZeroR. Odpowiada zawsze tak samo Decyzja to klasa większościowa ze zbioru uczącego A B X 1 5 T 1 7 T 1 5 T 1 5 F 2 7 F

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

Eksploracja Danych. wykład 4. Sebastian Zając. 10 maja 2017 WMP.SNŚ UKSW. Sebastian Zając (WMP.SNŚ UKSW) Eksploracja Danych 10 maja / 18

PODSTAWY STATYSTYCZNEGO MODELOWANIA DANYCH. Wykład 6 Drzewa klasyfikacyjne - wprowadzenie. Reguły podziału i reguły przycinania drzew.

Metody selekcji cech

Hierarchiczna analiza skupień

Sortowanie. Bartman Jacek Algorytmy i struktury

Algorytmy klasteryzacji jako metoda dyskretyzacji w algorytmach eksploracji danych. Łukasz Przybyłek, Jakub Niwa Studenckie Koło Naukowe BRAINS

Drzewa decyzyjne w SAS Enterprise Miner

Adam Kirpsza Zastosowanie regresji logistycznej w studiach nad Unią Europejska. Anna Stankiewicz Izabela Słomska

Techniki Optymalizacji: Stochastyczny spadek wzdłuż gradientu I

ZASADY PROGRAMOWANIA KOMPUTERÓW ZAP zima 2014/2015. Drzewa BST c.d., równoważenie drzew, kopce.

P: Czy studiujący i niestudiujący preferują inne sklepy internetowe?

Testowanie modeli predykcyjnych

Metody Eksploracji Danych. Klasyfikacja

ALGORYTMICZNA I STATYSTYCZNA ANALIZA DANYCH

CLUSTERING. Metody grupowania danych

Indeksy. Wprowadzenie. Indeksy jednopoziomowe indeks podstawowy indeks zgrupowany indeks wtórny. Indeksy wielopoziomowe

Podstawy Informatyki. Metody dostępu do danych

Grupowanie Witold Andrzejewski, Politechnika Poznańska, Wydział Informatyki 201/633

Elementy modelowania matematycznego

E: Rekonstrukcja ewolucji. Algorytmy filogenetyczne

Analiza składowych głównych. Wprowadzenie

Słowem wstępu. Część rodziny języków XSL. Standard: W3C XSLT razem XPath 1.0 XSLT Trwają prace nad XSLT 3.0

Drzewa klasyfikacyjne

Drzewa binarne. Drzewo binarne to dowolny obiekt powstały zgodnie z regułami: jest drzewem binarnym Jeśli T 0. jest drzewem binarnym Np.

Drzewa spinające MST dla grafów ważonych Maksymalne drzewo spinające Drzewo Steinera. Wykład 6. Drzewa cz. II

Drzewa Decyzyjne, cz.2

Wybór / ocena atrybutów na podstawie oceny jakości działania wybranego klasyfikatora.

Algorytmy równoległe. Rafał Walkowiak Politechnika Poznańska Studia inżynierskie Informatyka 2010

Algorytmy i struktury danych


Data Mining Wykład 9. Analiza skupień (grupowanie) Grupowanie hierarchiczne O-Cluster. Plan wykładu. Sformułowanie problemu

Tadeusz Pankowski

Systemy Wspomagania Decyzji

SZTUCZNA INTELIGENCJA

Regresja logistyczna (LOGISTIC)

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

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych

DRZEWA KLASYFIKACYJNE W BADANIACH SATYSFAKCJI

Data Mining Wykład 4. Plan wykładu

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

Reguły asocjacyjne w programie RapidMiner Michał Bereta

Algorytmy równoległe: ocena efektywności prostych algorytmów dla systemów wielokomputerowych

prowadzący dr ADRIAN HORZYK /~horzyk tel.: Konsultacje paw. D-13/325

RILL - przyrostowy klasyfikator regułowy uczący się ze zmiennych środowisk

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

mgr inż. Magdalena Deckert Poznań, r. Metody przyrostowego uczenia się ze strumieni danych.

Metody scoringowe w regresji logistycznej

Test niezależności chi-kwadrat stosuje się (między innymi) w celu sprawdzenia związku pomiędzy dwiema zmiennymi nominalnymi (lub porządkowymi)

Wprowadzenie do programu RapidMiner, część 4 Michał Bereta

Transkrypt:

DRZEWA DECYZYJNE

Drzewa klasyfikacyjne algorytm podstawowy buduj_drzewo(s przykłady treningowe, A zbiór atrybutów) { utwórz węzeł t (korzeń przy pierwszym wywołaniu); if (wszystkie przykłady w S należą do tej samej klasy K) zamień t na liść z etykietą K; else { wybierz atrybut a ze zbioru A, który najlepiej klasyfikuje przykłady; przypisz węzłowi t test zbudowany na podstawie wybranego atrybutu a; for each wartość v i atrybutu a { dodaj do węzła t gałąź odpowiadającą warunkowi a = v i S i = podzbiór przykładów z S, dla których a = v i if S i jest pusty dodaj do gałęzi liść z etykietą klasy, do której należy większość przypadków w S else buduj_drzewo(s i, A-{a}) } } } Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 235/633

Algorytm ID3 dla atrybutów nominalnych zdyskretyzowanych podział na podstawie Information Gain faworyzacja atrybutów o dziedzinach wielowartościowych wada: płaskie, szerokie drzewa np. przy wielu unikalnych wartościach lokalny wybór najlepszego atrybutu brak nawrotów dąży do jak najmniejszy drzew decyzyjnych (Ockham) Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 236/633

Entropia Entropia k Ent S = p i log 2 p i i=1 p i to prawdopodobieństwo przynależności do klasy i-tej (estymowana przez n i /n, gdzie n i to liczba przykładów z klasą K i, a n to liczba klas) k to liczba klas S to zbiór przykładów Klasyfikacja binarna Wartość entropii interpretacja: im mniejsza entropia tym więcej przykładów należy do jednej z klas Opis 0 Przykłady tylko z jednej klasy 1 Po 50% przykładów z każdej klasy Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 237/633

Information Gain Entropia warunkowa dla atrybutu a Ent S a = p to liczba wartości atrybutu a S j to zbiór przykładów z wartością atrybutu v j ns j liczebność zbioru S j Interpretacja: im mniejsza wartość entropii warunkowej tym większa jednorodność podziału Information Gain ocena przyrostu informacji przy użyciu atrybutu a Gain S, a p j=1 n sj n Ent(S j ) = Ent S Ent S a przyrost = entropia rodzica suma ważonych entropii potomków entropia rodzica powinna być duża, a suma ważonych entropii potomków mała (co oznacza dobrze odseparowane klasy) Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 238/633

Gain Ratio Problemy information gain: preferuje atrybuty o dużej liczbie wartości może prowadzić do przeuczenia Rozwiązanie: gain ratio uwzględnienie rozmiarów i liczby potomków kara dla atrybutów o dużych dziedzinach Używa split information do normalizacji przyrostu informacji Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 239/633

Gain Ratio - Split information split information (współczynnik podziału) gdzie p to liczba partycji (liczba wartości a), natomiast a to wybrany atrybut dla podziału Duży split information = podobny rozmiar partycji Mały split information = niewielka liczba partycji zawiera większość przykładów Gain ratio: Split S a = GainRatio S, a wybieramy atrybut z największym gain ratio p j=1 = S j S log 2 S j S Gain(S, a) Split(S, a) może prowadzić do niezbalansowanych drzew Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 240/633

Gini index (1) Corrado Gini Interpretacja: stosunek obszaru pomiędzy krzywą Lorenza a prostą idealnego rozkładu do powierzchni całego obszaru pod prosta idealnego rozkładu może mierzyć nierównomierność rozkładu wartości atrybutu decyzyjnego wewnątrz węzła drzewa 80% ludzi posiada 80% dochodów 80% ludzi posiada 50% dochodów Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 241/633

Gini index (2) Formalnie współczynnik Giniego to: miara nierównomierności rozkładu zmiennej losowej Gini S = 1 p 2 i i=1 gdzie m to liczba klas, a p i to prawdopodobieństwo, że przykład należy do klasy C i Rozważany jest binarny podział na zbiory S 1 i S 2 Gini S, a = S 1 S Gini S 1 + S 2 S Gini S 2 (ważona suma nieuporządkowania partycji) Ostatecznie Gini S, a = Gini S Gini S, a Cechy wartości z przedziału <0;1>, gdzie 0 oznacza pełną równomierność nieprzystosowany dla dużej liczby klas faworyzuje partycje o podobnych rozmiarach m Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 242/633

Ulepszony ID3: C4.5 dopuszcza wartości numeryczne dobrze radzi sobie z wartościami nieznanymi wprowadza pruning dla radzenia sobie z szumem rozwojowa wersja to C4.8 (w wece J48) komercyjny następca to C5.0 (Rulequest) Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 243/633

Trzy typy testów C4.5 testy dla węzła dla danych dyskretnych po jednej krawędzi dla każdej wartości dla danych ciągłych test binarny a i <=z i a i >z, gdzie z to wartość progowa dla danych dyskretnych podział wartości na grupy (po jednej gałęzi dla grupy) Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 245/633

C4.5 - ustalanie wartości progowej z trywialne podejście: posortować wartości atrybutu, posortowana lista to {v 1, v 2,, v m } każda wartość pomiędzy v i i v i+1 może być użyta do podziału (np. środek, ale w C4.5 wybierana raczej wartość v i ) Przeglądniecie wszystkich m-1 możliwych podziałów i obliczenie dla każdego z nich gain/gain ratio Są ulepszenia (np. Fayyad & Irani -> obliczanie entropii tylko dla par ze zmieniającymi się klasami) Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 246/633

C4.5 - pruning drzewo za bardzo dopasowuje się do danych uczących overfitting zbyt złożone drzewo Pruning zastąpienie poddrzewa liściem, gdy stwierdzimy, że oczekiwany błąd poddrzewa jest większy niż liścia. Uwaga: nie testuj na zbiorze treningnowym użyj hold out Rodzaje pruningu prepruning zatrzymaj podział liścia postpruning gdy całe drzewo gotowe usuń niepotrzebne części i zastąp je liśćmi Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 249/633

Prepruning Oparte na wynikach testów statystycznych Zatrzymaj podział, gdy nie ma statystycznie istotnego związku pomiędzy jakimkolwiek atrybutem a klasą w danym węźle test chi-kwadrat (uwaga: w ID3 używany test chi-kwadrat wraz information gain tylko statystycznie istotne atrybuty były dostępne do wyboru przy podziale) Wada: czasami warunek stopu jest za ostry, ale zdarza się to rzadko Zaleta: jest relatywnie szybki Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 250/633

Zbuduj całe drzewo Wykonaj pruning Postpruning subtree replacement usuń węzeł i umieść tam liść Strategia bottom-up, sprawdź możliwość zastąpienia poddrzewa tylko, gdy drzewa poniżej już sprawdzone subtree raising usuń węzeł (w środku) i rozdziel instancje do poniższych poddrzew (wolniejsze niż subtree replacement) Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 251/633

CHAID (1) ogólna idea Chi-squared Automatic Interaction Detection do problemów klasyfikacji i regresji (tak jak CART) dla wersji klasyfikacyjnej podstawą podziału węzła jest test chi-kwadrat (a właściwie p-value z korektą Bonferroni) Podstawowa zaleta: automatyczny wybór n-kierunkowych podziałów węźle -> drzewa niebinarne wymaga dość dużych danych, gdyż n-kierunkowe podziały skutecznie redukują liczbę przykładów w liściach Liczba podziałów w węźle jest wyrażona liczbą Bella (suma liczby podziałów na dwie grupy plus suma podziałów na trzy grupy etc. aż do jednoelementowych grup) Dla 8 kategorii (unikalnych wartości w węźle) jest to 4139 podziałów sprawdzanie wszystkich zbyt czasochłonne Kroki algorytmu to: przygotowanie wartości predyktorów: predyktory, które nie są kategoryczne podlegają automatycznej dyskretyzacji częstościowej łączenie kategorii (i ich ponowne dzielenie) wybór predyktora do dzielenia Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 252/633

CHAID (2) łączenie kategorii W iteracjach: dla każdego predyktora wybierz parę wartości, które najmniej się różnią ze względu na zmienną zależną wykonaj test chi-kwadrat dla takiej pary jeżeli test daje wynik wskazujący na brak różnicy istotnej statystycznie dla łączenia (przy poziomie p) połącz te kategorie powyższa czynność jest kontynuowana (aż do braku możliwości połączenia, poprzednio połączone kategorie mogą też być łączone) grupy trzech lub więcej kategorii są sprawdzane, czy ich podział nie byłby lepszy (more significant) Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 253/633

RM: Decision Stump Tworzy drzewo decyzyjne na podstawie pojedynczego podziału n-krotne rozgałęzienia Najczęściej używany z AdaBoost Metody podziału information gain gain_ratio gini_index accuracy Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 259/633

RM: ID3 implementacja zbliżona do oryginalnej propozycji Quinlana Parametry criterion minimal size for split minimal leaf size minimal gain Zalety łatwa czytelność modelu szybkość i nieduża wysokość modelu Wady tendencja do przeuczenia dla małych zbiorów treningowych tylko jeden atrybut jest testowany w danej chwili pod względem możliwości użycia do podziału Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 260/633

RM: Decision Tree działanie podobne do C4.5 Parametry criterion (information_gain, gain_ratio, gini_index, accuracy) apply pruning confidence poziom ufności dla pessimistic error calculation for pruning apply prepruning minimal gain minimalny zysk wymagany do przeprowadzenia podziału węzła minimal leaf size minimalna liczba przykładów w liściu minimal size for split minimalna liczba przykładów dla węzła by nastąpił podział number of prepruning alternatives gdy podczas prepruningu jakiś węzeł zostanie zablokowany przed podziałem, ile innych węzłów próbować podzielić maximal depth - maksymalna wysokość drzewa (dla 1 generowany jest jeden podział) Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 261/633

RM: Decision Tree (weight-based) Operator złożony Umożliwia zdefiniowanie w jego wnętrzu metody wyznaczania atrybutów dla kolejnych węzłów drzewa Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 262/633

RM:CHAID W RapidMiner działa jak Decision Tree, a jedyną różnicą jest użycie testu chi-kwadrat zamiast information gain nie działa dla danych numerycznych Parametry minimal size for split minimal leaf size minimal gain confidence maximal depth number of prepruning alternatives Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 263/633

Operator złożony RM: MetaCost Pozwala na zdefiniowanie macierzy kosztów używanej przez algorytm będący wewnątrz operatora Parametry: macierz kosztów use subset for training sampling with replacement Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 264/633

RM: Random Tree Działa podobnie jak C4.5 Jedyna różnica to: Przy każdym podziale rozważany jest tylko losowo wybrany podzbiór atrybutów obsługuje dane nominalne i liczobowe Parametry takie jak dla Decision Tree oraz: guess subset ratio wybiera log m + 1 atrybutów subset ratio ręczne ustawienie względnej liczby atrybutów Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 265/633

RM: Random Forest generuje zbiór drzew losowych, tj. z losowym doborem atrybutów dla podziału Decyzja podejmowana jest przez głosowanie Parametry takie, jak dla random tree oraz: number of trees liczba drzew do wygenerowania Witold Andrzejewski & Paweł Boiński, Politechnika Poznańska, Wydział Informatyki 266/633