Klasyfikacja. Wprowadzenie. Klasyfikacja (1)

Wielkość: px
Rozpocząć pokaz od strony:

Download "Klasyfikacja. Wprowadzenie. Klasyfikacja (1)"

Transkrypt

1 Klasyfikacja Wprowadzenie Celem procesu klasyfikacji jest znalezienie ogólnego modelu podziału zbioru predefiniowanych klas obiektów na podstawie pewnego zbioru danych historycznych, a następnie, zastosowanie odkrytego modelu do predykcji klasy nowego obiektu, dla którego klasa nie jest znana str. 2 Klasyfikacja (1) Dane wejściowe: treningowy zbiór rekordów D (danych, przykładów, obiektów, obserwacji, próbek, wektorów cech), będących listą wartości atrybutów warunkowych A 1, A 2,, A n (tzw. deskryptorów lub atrybutów opisowych) i wybranego atrybutu decyzyjnego C (ang. class label attribute) Dane wyjściowe: model(klasyfikator), przydziela każdemu rekordowi wartość atrybutu decyzyjnego w oparciu o wartości pozostałych atrybutów (deskryptorów) str. 3

2 Klasyfikacja (2) Każdy rekord d jest reprezentowany w zbiorze D w postaci (n + 1)- wymiarowego wektora, d = (A 1 = x 1, A 2 = x 2,, A n = x n, C = C i ), gdzie A = (A 1, A 2,, A n ) oznacza zbiór atrybutów warunkowych, natomiast C oznacza atrybut decyzyjny Atrybut decyzyjny C jest atrybutem kategorycznym Wartości atrybutu decyzyjnego C = (C 1, C 2,, C m ), gdzie m > 2, nazywamy etykietami klas (ang. class labels), klasami decyzyjnymi lub krótko klasami Wartości atrybutu decyzyjnego dzielą zbiór rekordów na predefiniowane, rozłączne klasy, składające się z rekordów o tej samej wartości atrybutu decyzyjnego Atrybuty warunkowe A 1, A 2,, A n mogą być zarówno atrybutami kategorycznymi, jak i atrybutami ciągłymi str. 4 Czym jest klasyfikacja? (1) Cel klasyfikacji - znalezienie dla danego zbioru danych Dfunkcji klasyfikacyjnej (ang. classification function), lub krótko klasyfikatora, która odwzorowuje każdy rekord danych d = (A 1 = x 1, A 2 = x 2,, A n = x n ) w etykietę klasy C i, C i C Funkcja klasyfikacyjna (klasyfikator) służy do predykcji wartości atrybutu decyzyjnego (klasy) krotek, dla których wartość atrybutu decyzyjnego, tj. przydział do klasy, nie jest znany Klasyfikacja danych jest procesem dwu-etapowym : Etap 1: budowa modelu (klasyfikatora) opisującego predefiniowany zbiór klas danych lub zbiór pojęć Etap 2: zastosowanie opracowanego modelu do klasyfikacji nowych danych Spring Czym jest klasyfikacja? (2) Zbiór dostępnych krotek (przykładów, obserwacji, próbek) dzielimy, w ogólności, na dwa zbiory:zbiór treningowy i zbiór testowy Model klasyfikacyjny (klasyfikator) jest budowany dwuetapowo: Uczenie(trening) klasyfikator jest budowany w oparciu o zbiór treningowy danych Testowanie trafność (jakość) klasyfikatora jest weryfikowana w oparciu o zbiór testowy danych str. 6

3 Czym jest klasyfikacja? (3) zbiór treningowy uczenie modelu model klasyfikacyjny zbiór testowy zastosowanie modelu str. 7 Uczenie i testowanie Model klasyfikacyjny: Reguły klasyfikacyjne postaci if - then Formuły logiczne Drzewa decyzyjne Jakość modelu klasyfikacyjnego: Dla przykładów testowych, dla których znane są wartości atrybutu decyzyjnego, wartości te są porównywane z wartościami atrybutu decyzyjnego generowanymi dla tych przykładów przez klasyfikator Współczynnik trafności (ang. accuracyrate) = % procent przykładów testowych poprawnie zaklasyfikowanych przez model Błąd klasyfikacji (ang. classification eror) - % procent przykładów testowych niepoprawnie zaklasyfikowanych przez model str. 8 Uczenie algorytm klasyfikacji dane treningowe Wiek Typ_sam Ryzyko 20 Combi High 18 Sports High 40 Sports High 50 Family Low 35 Minivan Low 30 Combi High 32 Family Low 40 Combi Low Klasyfikator (model) ifwiek< 31 or Typ_sam = Sports thenryzyko= High str. 9

4 Testowanie dane testowe klasyfikator (model) Wiek Typ_sam Ryzyko 27 Sports High 34 Family Low 66 Family High 44 Sports High Ryzyko High Low Low High Trafność= 3/4 = 75% str. 10 Klasyfikacja nowe dane klasyfikator (model) Wiek Typ_sam Ryzyko 27 Sports 34 Minivan 55 Family 34 Sports Ryzyko High Low Low High str. 11 Klasyfikacja vs predykcja Dwie metody, które są stosowane do analizy danychi ekstrakcjimodeli opisujących klasy danych lub do predykcji trendów: klasyfikacja: predykcja wartości atrybutu kategorycznego (predykcja klasy) predykcja: modelowanie funkcji ciągłych str. 12

5 Kryteria oceny algorytmów klasyfikacyjnych Dokładność predykcji (ang. predictive accuracy): zdolność modelu do poprawnej predykcji wartości atrybutu decyzyjnego (klasy) nowego przykładu Efektywność (ang. speed): koszt obliczeniowy związany z wygenerowaniem i zastosowaniem klasyfikatora Odporność modelu (ang. robustness): zdolność modelu do poprawnej predykcji klas w przypadku braku części danych lub występowania danych zaszumionych Skalowalność (ang. scalability): zdolność do konstrukcji klasyfikatora dla dowolnie dużych wolumenów danych Interpretowalność(ang. interpretability): w jakim stopniu konstrukcja klasyfikatora pozwala na zrozumienie mechanizmu klasyfikacji danych Kryteria dziedzinowo-zależne str. 13 Klasyfikacja przez indukcje drzew decyzyjnych (1) Drzewo decyzyjne jest grafem o strukturze drzewiastej, gdzie każdy wierzchołek wewnętrzny reprezentuje test na atrybucie (atrybutach), każdy luk reprezentuje wynik testu, każdy liść reprezentuje pojedynczą klasę lub rozkład wartości klas Wiek< 31 Y N Typ_sam= sports High Y N High Low str. 14 Klasyfikacja przez indukcje drzew decyzyjnych (2) Drzewo decyzyjne rekurencyjnie dzieli zbiór treningowy na partycje do momentu, w którym każda partycja zawiera dane należące do jednej klasy, lub, gdy w ramach partycji dominują dane należące do jednej klasy Każdy wierzchołek wewnętrzny drzewa zawiera tzw. punktpodziału(ang. split point),którym jest test na atrybucie, który dzieli zbiór danych na partycje Drzewo decyzyjne jest konstruowane w dwóch krokach: Krok 1: Konstrukcja drzewa decyzyjnego w oparciu o zbiór treningowy Krok 2: Przycinanie drzewa w celu poprawy dokładności, interpretowalności i uniezależnienia się od efektu przetrenowania str. 15

6 Klasyfikacja przez indukcje drzew decyzyjnych (3) Algorytm podstawowy: algorytm zachłanny, który konstruuje rekurencyjnie drzewo decyzyjne metodą top-down Wiele wariantów algorytmu podstawowego (źródła): uczenie maszynowe (ID3, C4.5) statystyka (CART) rozpoznawanie obrazów (CHAID) Podstawowa różnica: kryterium podziału str. 16 Konstrukcja drzewa decyzyjnego (1) W fazie konstrukcji drzewa, zbiór treningowy jest dzielony na partycje, rekurencyjnie, w punktach podziału do momentu, gdy każda z partycji jest czysta (zawiera dane należące wyłącznie do jednej klasy) lub liczba elementów partycji dostatecznie mała (spada poniżej pewnego zadanego progu) str. 17 Konstrukcja drzewa decyzyjnego (2) Postać testu stanowiącego punkt podziału zależy od kryterium podziału i typu danych atrybutu występującego w teście: dla atrybutu ciągłego A, test ma postać wartość(a) < x, gdzie x należy do dziedziny atrybutu A, x dom(a) dla atrybutu kategorycznego A, test ma postać wartość(a) X, gdzie X dom(a) str. 18

7 Konstrukcja drzewa decyzyjnego (3) W trakcie budowy drzewa decyzyjnego, wybieramy taki atrybut i taki punkt podziału, określający wierzchołek wewnętrzny drzewa decyzyjnego,który najlepiej dzieli zbiór danych treningowych należących do tego wierzchołka Do ocenyjakości punktu podziału zaproponowano szereg kryteriów (wskaźników) str. 19 Kryteria oceny podziału Indeks Giniego (Gini indeks)(algorytmy CART, SPRINT) Wybieramy atrybut, który minimalizuje indeks Giniego Zysk informacyjny (algorytmy ID3, C4.5) Wybieramy atrybut, który maksymalizuje redukcję entropii Indeks korelacji χ2 (algorytm CHAID) Mierzymy korelację pomiędzy każdym atrybutem i każdą klasą (wartością atrybutu decyzyjnego) Wybieramy atrybut o maksymalnej korelacji str. 20 Ogólny algorytm konstrukcji drzewa decyzyjnego (1) (ID3) Wejście: zbiór treningowy D, zbiór atrybutów warunkowych A, metoda wyboru punktu podziału SS Wyjście: drzewo decyzyjne ukorzenione w wierzchołku N 1. procedure BuildTree(D; A; SS): 2. utwórz wierzchołek drzewa decyzyjnego N; 3. ifwszystkie rekordy zbioru D należą do tej samej klasy C then 4. return wierzchołek N jako liść drzewa decyzyjnego i przypisz temu wierzchołkowi etykietę klasy C; 5. end if 6. iflista_atrybutów A jest pusta then 7. return wierzchołek N jako liść drzewa i przypisz temu wierzchołkowi etykietę klasy dominującej w zbiorze treningowym D; 8. end if str. 21

8 Ogólny algorytm konstrukcji drzewa decyzyjnego (2) 9. zastosuj metodę SS w celu wybrania atrybutu-podziałowego ze zbioru A; 10. przypisz wierzchołkowi N etykietę atrybutu-podziałowego; 11. for allwartości a i atrybutu-podziałowego do 12. S i zbiór rekordów D o wartości atrybutu-podziałowego = a i ; 13. N i BuildTree(S i, (lista_atrybutów A) - (atrybut-podziałowy), SS); 14. utwórz krawędź z N do N i etykietowaną wartością ai; 15. end for 16. return wierzchołek N; str. 22 Ogólny algorytm konstrukcji drzewa decyzyjnego (3) Skonstruowanie dowolnego algorytmu tworzenia drzew decyzyjnych jest związane z koniecznością rozwiązania dwóch podstawowych problemów: należy określić warunki stopu dla procedury BuildTree; trzeba zdefiniować metodę SS wyboru punktu podziału zbioru treningowego, tj. metodę wyboru atrybutu podziałowego i, ewentualnie określić test na atrybucie podziałowym. str. 23 Ogólny algorytm konstrukcji drzewa decyzyjnego (4) Przedstawiony algorytm zakłada dwa warunki stopu: jeżeli wierzchołek jest czysty, to znaczy, jeżeli wszystkie rekordy partycji związanej z wierzchołkiem należą do tej samej klasy jeżeli lista atrybutów warunkowych w wywołaniu procedury BuildTree jest pusta i nie można wybrać już kolejnego atrybutu podziałowego Dodatkowe warunki stopu: procedura konstrukcji drzewa zostaje zakończona, jeżeli wartości atrybutów warunkowych, które pozostały do analizy, wszystkich rekordów partycji związanej z wierzchołkiem są identyczne, procedura konstrukcji drzewa zostaje zakończona, jeżeli liczba rekordów partycji związanej z wierzchołkiem jest mniejsza od pewnego zadanego progu, inne str. 24

9 Zysk infomacyjny(1) Algorytm ID3 - metoda wyboru punktu podziału SS wykorzystuje do wyboru atrybutu podziałowego miarę zysku informacyjnego(ang. information gain) Jako atrybut testowy (aktualny wierzchołek drzewa decyzyjnego) wybieramy atrybut o największym zysku informacyjnym (lub największej redukcji entropii) Atrybut testowy minimalizuje ilość informacji niezbędnej do klasyfikacji przykładów w partycjach uzyskanych w wyniku podziału str. 25 Zysk infomacyjny(2) Niech S oznacza zbiór s przykładów. Załóżmy, że atrybut decyzyjny posiada m różnych wartości definiujących m klas, C i (dla i=1,..., m) Niech s i oznacza liczbę przykładów zbioru S należących do klasy C i Oczekiwana ilość informacji niezbędna do zaklasyfikowania danego przykładu: I(s 1, s 2,..., s m ) = - p i log 2 (p i ) str. 26 Zysk infomacyjny(3) Niech p i oznacza prawdopodobieństwo, że dowolny przykład należy do klasy C i (oszacowanie - s i /s). Niech atrybut A posiada v różnych wartości, {a 1, a 2,..., a v }. Atrybut A dzieli zbiór S na partycje {S 1, S 2,..., S v }, gdzie S j zawiera przykłady ze zbioru S, których wartość atrybutu A wynosi a j Wybierając atrybut A jako atrybut testowy tworzymy wierzchołek drzewa, którego łuki wychodzące posiadają etykiety {a 1, a 2,..., a v } i łączą dany wierzchołek A z wierzchołkami zawierającymi partycje {S 1, S 2,..., S v } str. 27

10 Zysk infomacyjny(4) Niech s ij oznacza liczbę przykładów z klasy C i w partycji S j. Entropię podziału zbioru S na partycje, według atrybutu A definiujemy następująco: (s E(A 1, A 2,...Av) = \ 1j + s 2j +...+smj) ]^_ I(s Z 1j, s 2j,..., s mj ) Im mniejsza wartość entropii, tym większa czystość podziału zbioru S na partycje str. 28 Zysk infomacyjny(5) Współczynnik (s 1j + s 2j +...+s mj )/s stanowi wagę j-tej partycji i zdefiniowany jest jako iloraz liczby przykładów w j-tej partycji (i.e. krotek posiadających wartość a j atrybutu A) do całkowitej liczby przykładów w zbiorze S Dla danej partycji S j, I(s 1j, s 2j,..., s mj ) = - p ij log 2 (p ij ) gdzie p ij = s ij / S j, określa prawdopodobieństwo, że przykład z S j należy do klasy C i str. 29 Zysk infomacyjny(6) Zysk informacyjny,wynikający z podziału zbioru S na partycje według atrybutu A, definiujemy następująco: Gain(A) = I(s 1, s 2,..., s m ) E(A) Gain(A) oznacza oczekiwaną redukcję entropii (nieuporządkowania) spowodowaną znajomością wartości atrybutu A str. 30

11 Przykład (1) ID wiek dochód student status kupi_lomputer 1 <=30 wysoki nie kawaler nie 2 <=30 wysoki nie żonaty nie wysoki nie kawaler tak 4 >40 średni nie kawaler tak 5 >40 niski tak kawaler tak 6 >40 niski tak żonaty nie niski tak żonaty tak 8 <=30 średni nie kawaler nie 9 <=30 niski tak kawaler tak 10 >40 średni tak kawaler tak 11 <=30 średni tak żonaty tak średni nie żonaty tak wysoki tak kawaler tak 14 >40 średni nie żonaty nie str. 31 Przykład (2) Rozważmy przedstawiony zbiór treningowy opisujący klientów sklepu komputerowego Atrybut decyzyjny, kupi_komputer,posiada dwie wartości (tak, nie), stąd, wyróżniamy dwie klasy (m=2) C 1 odpowiada wartości tak - s 1 = 9 C 2 odpowiada wartości nie - s 2 = 5 I(s 1, s 2 )=I(9, 5)= - 9/14log 2 9/14 5/14log 2 5/14= 0.94 str. 32 Przykład (3) Następnie, obliczamy entropię każdego deskryptora. Rozpocznijmy od atrybutu wiek dla wiek = <=30 s 11 =2 s 21 =3 I(s 11, s 21 ) = dla wiek = s 12 =4 s 22 =0 I(s 12, s 22 ) = 0 dla wiek = >40 s 13 =2 s 23 =3 I(s 13, s 23 ) = str. 33

12 Przykład (4) Entropia atrybutu wiek wynosi: E(wiek)=5/14 *I(s 11, s 21 ) +4/14* I(s 12, s 22 ) + + 5/14* I(s 13, s 23 ) = Zysk informacyjny wynikający z podziału zbioru S według atrybutu wiek wynosi: Gain(wiek) = I(s 1, s 2 ) E(wiek) = Analogicznie obliczamy zysk informacyjny dla pozostałych atrybutów: Gain(dochód)=0.029, Gain(student)=0.151 Gain(status)=0.048 str. 34 Przykład (5) Atrybut wiekdaje największy zysk informacyjny spośród wszystkich deskryptorów, atrybut ten jest wybierany jako pierwszy atrybut testowy. Tworzymy wierzchołek drzewa o etykiecie wiek, oraz etykietowane łuki wychodzące, łączące wierzchołek wiekz wierzchołkami odpowiadającymi partycjom zbioru utworzonymi według atrybutu wiek str. 35 Przykład (6) wiek <= >40 kupi_komputer: tak, nie kupi_komputer: tak, nie kupi_komputer: tak str. 36

13 Przykład (7) wiek student <= tak >40 status nie tak żonaty kawaler nie tak nie tak Ostateczna postać drzewa decyzyjnego str. 37 Współczynnik zysku (1) Wadą zysku informacyjnego jest to, że miara ta faworyzuje atrybuty o dużej liczbie różnych wartości Miara zysku informacyjnego daje ten sam wynik dla dwóch atrybutów podziałowych A i B, jeżeli rozkład klas w partycjach uzyskanych w wyniku podziału zbioru treningowego według atrybutu A i B jest identyczny, niezależnie od liczby wartości tych atrybutów Wybierając atrybut podziałowy o dużej liczbie wartości, możemy uzyskać partycje o niewielkiej liczbie rekordów i wynik klasyfikowania na ich podstawie nowego rekordu może być mało wiarygodny str. 38 Współczynnik zysku (2) Rozwiązanie - modyfikacji miary zysku informacyjnego przyjętej w metodzie wyboru punktu podziału w taki sposób, aby skompensować przedstawiony efekt faworyzowania atrybutów o dużej liczbie wartości (algorytm C4.5) Miara współczynnika zysku (ang. gainratio) dla atrybutu A jest zdefiniowana w następujący sposób: Gain ratio(a) = defg(h) ijkfl mgno(h) gdzie Split Info(A) oznacza współczynnik podziału str. 39

14 Współczynnik zysku (3) Współczynnik podziału charakteryzuje podział zbioru treningowego D na v podzbiorów według v wartości atrybutu podziałowego A Współczynnik podziału atrybutu A opisuje wzór: \ Split Info (A) = p f^r stu q 2 i f if q gdzie v oznacza liczbę różnych wartości atrybutu A, S i rozmiar (liczbę rekordów) podzbioru S j uzyskanego w wyniku podziału zbioru treningowego D według wartości atrybutu A, a D rozmiar zbioru treningowego D str. 40 Algorytm konstrukcji DD indeks Giniego Popularnym kryterium podziału, stosowanym w wielu produktach komercyjnych, jest indeks Giniego Algorytm SPRINT (IBM Inteligent Miner) Wejście: zbiór treningowy D, zbiór atrybutów warunkowych A, metoda wyboru punktu podziału SS Wyjście: drzewo decyzyjne ukorzenione w wierzchołku N 1. procedure BuildTree(D; A; SS):. str. 41 Algorytm konstrukcji DD indeks Giniego 9. zastosuj metodę SS w celu wybrania atrybutu i kryterium podziałowego; 10. przypisz wierzchołkowi N etykietę kryterium-podziałowego; 11. zastosuj kryterium podziałowe do podziału zbioru D na partycje D 1 i D 2 ; 12. S i zbiór rekordów D należących do partycji D i ; 13. N i BuildTree(S i, (lista_atrybutów A) - (atrybut-podziałowy), SS); 14. utwórz krawędź z N do N i etykietowaną wartością kryterium podziałowego; 15. returnwierzchołek N; Celem metody SS jest znalezienie atrybutu warunkowego oraz testu na tym atrybucie, który najlepiej dzieli zbiór treningowy D na dwa podzbiory D 1 i D 2 Atrybut A, który wykorzystujemy do podziału zbioru treningowego D, nazywamy atrybutem podziałowym (ang. splittingattribute), natomiast test na atrybucie podziałowym A, nazywamy predykatem podziałowym (ang. splitting predicate). str. 42

15 Indeks Giniego(1) Dany jest zbiór D zawierający n rekordów oraz atrybut decyzyjny, który przyjmuje mróżnych wartości, definiując m rozłącznych klas C i, dla i = 1,, m, s i oznacza liczbę rekordów zbioru D należących do klasy C i, dla i = 1,, m. Nieuporządkowanie zbioru D, zgodnie z miarą indeksu Giniego, jest zdefiniowane następująco: gini(d) = 1 - v P 2 ]^r j gdzie P j oznacza prawdopodobieństwo, że dany rekord zbioru D należy do klasy C j ; prawdopodobieństwo to estymujemy względną częstością występowania klasy C j w D, to jest: P j = Z ] q str. 43 Indeks Giniego(2) Przykładowo: dwie klasy, Pos i Neg, oraz zbiór przykładów D zawierający p elementów należących do klasy Pos i n elementów należących do klasy Neg P pos = p/(p+n) P neg = n/(n+p) gini(d) = 1 - P pos2 - P 2 neg Załóżmy, że metodą wyboru punktu podziału został wybrany atrybut podziałowy A, który dzieli zbiór treningowy D na dwa podzbiory D 1 i D 2 str. 44 Indeks Giniego(3) Indeks podziału Ginigini A split(d 1, D 2 ) binarnego podziału zbioru treningowego D na podzbiory (partycje) D 1 i D 2, zgodnie z predykatem podziałowym zdefiniowanym dla atrybutu A, jest zdefiniowany w następujący sposób: gini A split(d 1, D 2 ) = q r q gini(d 1) + q w q gini(d 2) str. 45

16 Indeks Giniego(4) Indeks podziału Gini jest ważoną sumą indeksów Giniego podzbiorów D 1 i D 2 określających nieuporządkowanie zbiorów D 1 i D 2 Indeks podziału Ginidefiniuje nieuporządkowanie zbioru treningowego D uzyskane w wyniku podziału na podzbiory na podzbiory D 1 i D 2 Różnica wartości miar Gain Gini (A) = gini(d) - gini A split(d 1, D 2 ) definiuje różnicę uporządkowania zbioru treningowego D przed i po podziale zbioru D na podzbiory D1 i D2 dla atrybutu podziałowego A str. 46 Indeks Giniego(5) Gain Gini (A) określa redukcję nieuporządkowania zbioru D w wyniku podziału zbioru D na podzbiory D 1 i D 2 dla atrybutu podziałowego A Maksymalną redukcje nieuporządkowania uzyskujemy, minimalizując wartość indeksu podziału Gini stąd, najlepszym punktem podziału zbioru D jest punkt podziału, który charakteryzuje się najmniejszą wartością indeksu podziału Gini str. 47 Idea algorytmu 1. Dla każdego atrybutu, dla wszystkich możliwych punktów podziału, oblicz wartość indeksu podziału Gini wybierz punkt podziału o najmniejszej wartości indeksu podziału Gini 2. Wybrany punkt podziału włącz do drzewa decyzyjnego 3. Punkt podziału dzieli zbiór D na dwie partycje D 1 i D 2 4. Powtórz procedurę obliczania indeksu podziału Gini dla partycji D 1 i D 2 znalezione punkty podziału włącz do drzewa decyzyjnego 5. Powtarzaj procedurę dla kolejnych partycji aż do osiągnięcia warunku stopu str. 48

17 Przykład (1) ID Wiek Typ_sam Ryzyko 0 23 family high 1 17 sport high 2 43 sport high 3 68 family low 4 32 truck low 5 20 family high Zbiór treningowy D Lista wartości atrybutuwiek oraz atrybutu Typ_sam Wiek ID Ryzyko 17 1 high 20 5 high 23 0 high 32 4 low 43 2 high 68 3 low Typ_sam ID Ryzyko family 0 high sport 1 high sport 2 high family 3 low truck 4 low family 5 high str. 49 Przykład (2) Możliwe punkty podziału dla atrybutu Wiek: Wiek 17, Wiek 20, Wiek 23, Wiek 32, Wiek 43 Obliczmy wartości indeksu podziału Gini dla poszczególnych punktów podziału Wiek 17 Liczba krotek High Low Wiek<= Wiek > gini(wiek <= 17) = 1- ( ) = 0 gini(wiek > 17) = 1- ((3/5) 2 +(2/5) 2 ) = 0,73 gini SPLIT = (1/6) * 0 + (5/6) * (0,73) 2 = 0,4 str. 50 Przykład (3) Wiek 20 Liczba krotek High Low Wiek<= Wiek > gini(wiek<=20) = 1-( ) = 0 gini(wiek>20) = 1-((1/2) 2 +(1/2) 2 ) = 1/2 gini SPLIT = (2/6) * 0 + (4/6) * (1/8) = 1/3 Wiek 23 Liczba krotek High Low Wiek <= Wiek > gini(wiek 23) = 1-( ) = 0 gini(wiek>23) = 1-((1/3) 2 +(2/3) 2 ) = 4/9 gini SPLIT = (3/6) * 0 + (3/6) * (4/9) = 2/9 str. 51

18 Przykład (4) Wiek 32 Liczba krotek High Low Wiek <= Wiek > gini(age 32) = 1-((3/4) 2 +(1/4) 2 ) = 3/8 gini(age>32) = 1-((1/2) 2 +(1/2) 2 ) = 1/2 gini SPLIT = (4/6)*(3/8) + (2/6)*(1/2) = 7/24 Wiek 43 Liczba krotek High Low Wiek <= Wiek > gini(age 43) = 1-((4/5) 2 +(1/5) 2 ) = 8/25 gini(age>43) = 1-((1/1) 2 +(0/1) 2 ) = 0 gini SPLIT = (5/6)*(8/25) + (1/6)*(0) = 4/15 str. 52 Przykład (5) Obliczamy następnie wartości indeksu podziału gini split dla atrybutu Typ_sam Najmniejszą wartość indeksu podziału gini SPLIT posiada punkt podziału Wiek 23, stąd, tworzymy wierzchołek drzewa decyzyjnego dla punktu podziału Wiek = (23+32) / 2 = 27.5 Wiek 27,5 Wiek > 27,5 Ryzyko = High Ryzyko = Low str. 53 Przykład (6) Listę wartości atrybutów dzielimy w punkcie podziału: Listy wartości atrybutów dla Wiek 27.5: Wiek ID Ryzyko 17 1 high 20 5 high 23 0 high Typ_sam ID Ryzyko family 0 high sport 1 high family 5 high Listy wartości atrybutów dla Wiek > 27.5: Wiek ID Ryzyko 32 4 low 43 2 high 68 3 low Typ_sam ID Ryzyko sport 2 high family 3 low truck 4 low str. 54

19 Przykład (7) Ocena punktów podziału dla atrybutu kategorycznego Musimy dokonać ocenywszystkichpunktów podziałuatrybutu kategorycznego (2 N 2 kombinacji), gdzien oznacza liczbę wartości atrybutu kategorycznego Liczba krotek High Low Typ_sam= {sport} 1 0 Typ_sam ={family] 0 1 Typ_sam= {truck} 0 1 gini(typ_sam {sport}) = = 0 gini(typ_sam {family}) = = 0 gini(typ_sam {truck}) = = 0 str. 55 Przykład (8) gini(typ_sam { sport, family }) = 1 - (1/2) 2 - (1/2) 2 = 1/2 gini(typ_sam { sport, truck }) = 1/2 gini(typ_sam { family, truck }) = = 0 gini SPLIT (Typ_sam { sport }) = (1/3) * 0 + (2/3) * 0 = 0 gini SPLIT (Typ_sam { family }) = (1/3) * 0 + (2/3)*(1/2) = 1/3 gini SPLIT (Typ_sam { truck }) = (1/3) * 0 + (2/3)*(1/2) = 1/3 gini SPLIT (Typ_sam { sport, family}) = (2/3)*(1/2)+(1/3)*0= 1/3 gini SPLIT (Typ_sam { sport, truck}) = (2/3)*(1/2)+(1/3)*0= 1/3 gini SPLIT (Typ_sam { family, truck }) = (2/3)*0+(1/3)*0=0 str. 56 Przykład (9) Najmniejszą wartość indeksu podziału gini SPLIT posiada punkt podziału Typ_sam {sport}. Tworzymy wierzchołek w drzewie decyzyjnym dla tego punktu podziału. Drzewo decyzyjne po wprowadzeniu wierzchołka ma postać: Wiek 27,5 Wiek > 27,5 Ryzyko = High Typ_sam {sport} Typ_sam {family, truck} Ryzyko = High Ryzyko= Low str. 57

20 Błędy klasyfikatorów (1) Błędy popełniane przez modele klasyfikacyjne: błędy treningowe - błędem treningowym klasyfikatora nazywamy stosunek niepoprawnie zaklasyfikowanych rekordów zbioru treningowego do łącznej liczby rekordów tego zbioru błędy testowe - błędem testowym klasyfikatora nazywamy stosunek niepoprawnie zaklasyfikowanych rekordów zbioru testowego do łącznej liczby rekordów tego zbioru błędy generalizacji (lub uogólnienia) - błędem generalizacji klasyfikatora nazywamy oczekiwany błąd klasyfikacji na zbiorze nowych rekordów, dla których wartość atrybutu decyzyjnego nie jest znana str. 58 Błędy klasyfikatorów (2) Cel algorytmów konstrukcji drzew decyzyjnych konstrukcja drzew decyzyjnych maksymalnie wiernie odzwierciedlających strukturę zbioru treningowego (minimalizacja błędu treningowego) Drzewo decyzyjne wiernie odzwierciedlające strukturę zbioru treningowego drzewo silnie dopasowane do danych treningowych minimalizacja błędu treningowego minimalizacja błędu testowego minimalizacja błędu testowego minimalizacja błędu generalizacji Drzewo decyzyjne o zerowym błędzie treningowym może mieć niezerowy błąd testowy, i drzewo decyzyjne o niezerowym błędzie treningowym może mieć zerowy błąd testowy str. 59 Przykład (1) id wiek status dochód dzieci ryzyko 1 25 kawaler niski 0 wysokie 2 28 żonaty niski 1 wysokie 3 29 kawaler wysoki 0 małe 4 31 kawaler niski 0 wysokie 5 35 żonaty średni 1 małe 6 38 rozwodnik wysoki 2 małe 7 38 rozwodnik niski 2 wysokie 8 39 rozwodnik wysoki 0 wysokie 9 41 żonaty średni 1 małe rozwodnik średni 4 wysokie żonaty średni 2 małe żonaty średni 1 małe żonaty wysoki 2 małe rozwodnik wysoki 2 wysokie dochód niski wysoki status wysokie żonaty żonaty dzieci małe 2 2 Drzewo 1 małe wysokie str. 60

21 Przykład (2) id wiek status dochód dzieci ryzyko żonaty niski 1 wysokie żonaty średni 2 małe rozwodnik średni 2 wysokie kawaler niski 0 wysokie rozwodnik średni 2 wysokie żonaty wysoki 1 małe Zbiór danych testowych Błąd treningowy Drzewa 1 wynosi 0% Błąd klasyfikacji Drzewa 1 na danych testowych (błąd testowy) wynosi 30% str. 61 Przykład (3) dochód niski niski status Drzewo 2 wysokie żonaty żonaty małe wysokie Błąd treningowy Drzewa 2 wynosi 21,4 % Błąd klasyfikacji Drzewa 2 na danych testowych (błąd testowy) wynosi 0 % Modyfikację drzewa decyzyjnego, polegającą na zastąpieniu poddrzewa liściem drzewa, nazywamy upraszczaniemlub przycinaniem drzewa decyzyjnego str. 62 Przeuczenie klasyfikatora (1) Zbyt silne dopasowanie drzewa decyzyjnego do zbioru danych treningowych ze względu: na występowanie niepoprawnych lub sprzecznych rekordów treningowych, zbyt małą liczbę rekordów treningowych lub niereprezentatywność zbioru treningowego, może skutkować pogorszeniem trafności klasyfikacji i zwiększeniem błędu generalizacji Zjawisko to nazywamy przeuczeniem klasyfikatora lub nadmiernym dopasowaniem klasyfikatora do zbioru danych treningowych Przeuczenie klasyfikatora K1 (np. drzewa decyzyjnego), lub nadmierne dopasowanie klasyfikatora K1 do zbioru treningowego D -- jeżeli istnieje inny klasyfikator K2, który można skonstruować dla zbioru treningowego D, o większym błędzie treningowym, ale o mniejszym błędzie testowym str. 63

22 Przeuczenie klasyfikatora (2) błąd treningowy błąd testowy liczba wierzchołków drzewa str. 64 Przycinanie drzewa (1) Po zakończeniu fazy konstrukcji drzewa decyzyjnego wiele gałęzi drzewa odzwierciedla anomalie w zbiorze danych treningowych (szum i punkty osobliwe) Przycinanie drzew decyzyjnych usuwanie mało wiarygodnych gałęzi poprawia efektywność klasyfikacji poprawia zdolność klasyfikatora do klasyfikacji nowych przypadków Metody przycinania drzew decyzyjnych bazują najczęściej na miarach statystycznych (np. MDL) str. 65 Przycinanie drzewa (2) Wstępne przycinanie drzewa (stop): drzewo jest przycinane poprzez wcześniejsze zatrzymanie procedury konstrukcji drzewa (tj. wstrzymujemy dalsze dzielenie zbioru treningowego na partycje) Przycinanie drzewa po zakończeniu konstrukcji (obcinanie drzewa): usuwamy gałęzie (i wierzchołki) po zakończeniu procedury konstrukcji drzewa str. 66

23 Klasyfikatory regułowe Zbiór reguł klasyfikacyjnych postaci: gdzie r: IF < warunek> THEN < konkluzja> lub alternatywnie r: <warunek > < konkluzja > konkluzja (nastepnik) określa klas decyzyjną warunek (poprzednik) jest koniunkcją testów zdefiniowanych na atrybutach opisowych str. 67 Pojęcia podstawowe (1) Warunek: warunek = (A 1 op v 1 ) and (A 2 op v 2 ) and (A k op v k ) Reguła r pokrywa rekord x (obiekt x) jeżeli wartości atrybutów opisowych rekordu x spełniają poprzednik reguły r (lub inaczej, rekord x jest pokrywany przez regułę r) str. 68 Pojęcia podstawowe (2) RID age status income children risk 1 <=30 bachelor low 0 high 2 <=30 married low 1 high 3 <=30 bachelor high 0 low bachelor low 0 high married medium 1 low divorced high 2 low divorced low 2 high divorced high 0 low 9 > 40 married medium 1 low 10 > 40 divorced medium 4 high 11 > 40 married medium 2 low 12 > 40 married medium 1 high 13 > 40 married high 2 high 14 > 40 divorced high 3 low str. 69

24 Pojęcia podstawowe (3) Zbiór reguł: r1: IFincome = high andchildren = 0 andstatus = bachelor THENrisk = low r2: IFincome = medium andchildren = 1..2 THENrisk = low r3: IFincome = low THENrisk = high r4: IF income = medium andstatus = divorced THENrisk = high reguła r3 pokrywa rekordy 1, 2, 4, i 7 reguła r2 pokrywa rekordy 5, 9, 11 i 12 reguła r1 pokrywa rekord 3 str. 70 Pojęcia podstawowe (4) Zbiór reguł klasyfikacyjnych R ma najczęściej normalną postać dysjunkcyjną: R = (r1 r2 rk) (każda reguła jest analizowana przez klasyfikator niezależnie od innych reguł) Podstawowe miary oceny jakości reguł klasyfikacyjnych: pokrycie (ang. coverage) trafność (ang. accuracy) str. 71 Miary oceny jakości reguł (1) Dany jest zbiór rekordów D oraz reguła klasyfikacyjna r: cond y Pokrycie reguły: Stosunek liczby rekordów zbioru D, które są pokrywane przez regułę r do łącznej liczby rekordów zbioru D pokrycie(r) = D cond / D gdzie D cond liczba rekordów zbioru D pokrywana przez r str. 72

25 Miary oceny jakości reguł (2) Trafność reguły: Stosunek liczby rekordów zbioru D, które spełniają zarówno poprzednik, jak i następnik reguły r do liczby rekordów, które spełniają poprzednik reguły r: trafność(r) = D cond y / D cond gdzie D cond y liczba rekordów zbioru D, które spełniają zarówno poprzednik, jak i następnik reguły r str. 73 Miary oceny jakości reguł (3) Przykład: pokrycie(r3) = 4/14 = 28,5% pokrycie(r1) = 1/14 = 7% pokrycie(r2) = 4/14 = 28,5% trafność(r3) =trafność(r1) = 100% trafność (r2) = 75% str. 74 Jak działa klasyfikator regułowy? Klasyfikator regułowy klasyfikuje rekord danych w oparciu o regułę ze zbioru R pokrywającą dany rekord RID age status income children risk 1 <=30 bachelor high 0? divorced medium 1? 3 > 40 bachelor medium 0? Rekord 1 jest pokryty przez regułę r1, stąd rekord 1 przydzielamy do klasy low Rekord 2 jest pokryty przez dwie reguły r2 i r4 reguły r2 i r4 maja różne następniki (nie wiadomo do jakiej klasy przydzielić rekord 2) Rekord 3 nie jest pokryty przez żadną z reguł zbioru R str. 75

26 Własności klasyfikatorów regułowych(1) Wzajemne wykluczanie Reguły klasyfikacyjne należące do zbioru reguł R wzajemnie się wykluczają(ang. mutually exclusive rules), jeżeli żadne dwie reguły należące R nie pokrywają tego samego rekordu Wzajemne wykluczanie się reguł zbioru R gwarantuje, że każdy rekord ze zbioru danych D jest pokryty maksymalnie przez jedną regułę Wyczerpujące pokrycie Zbiór reguł klasyfikacyjnych R ma wyczerpujące pokrycie zbioru danych D (ang. exhaustivecoverage), jeżeli dla każdej kombinacji wartości atrybutów opisowych danych z D istnieje w R reguła pokrywająca taką kombinacje wartości Ta własność zbioru reguł R gwarantuje, ze każdy rekord zbioru Djest pokryty przez co najmniej jedną regułę ze zbioru R str. 76 Własności klasyfikatorów regułowych(2) Wniosek: Jeżeli reguły klasyfikacyjne zbioru R wzajemnie się wykluczają i, dodatkowo, zbiór R ma wyczerpujące pokrycie zbioru danych D, to każdy rekord zbioru Djest pokryty dokładnie przez jedną regułę klasyfikacyjną ze zbioru R A co jeżeli klasyfikator regułowy nie posiada tych własności? Problemy: 1. żadna z reguł klasyfikacyjnych zbioru R nie pokrywa rekordu X 2. rekord danych X może być pokryty przez kilka reguł klasyfikacyjnych ze zbioru R i, dodatkowo, reguły te mogą mieć różne następniki, to jest, mogą określać różne klasy decyzyjne dla rekordu X str. 77 Własności klasyfikatorów regułowych(3) Jeżeli zbiór reguł R nie ma wyczerpującego pokrycia, wprowadzamy regułę domyślną r d : () y d Reguła domyślna r d ma pusty poprzednik, natomiast następnik reguły r d określa domyślną klasę y d, która jest klasą decyzyjną dominującą w zbiorze rekordów zbioru D, które nie są pokryte przez reguły zbioru R Jeżeli żadna z reguł zbioru R nie pokrywa rekordu X, to do klasyfikacji rekordu X stosuje się regułę r d : () y d str. 78

27 Własności klasyfikatorów regułowych(4) Jeżeli reguły zbioru R wzajemnie się nie wykluczają, wówczas rekord danych X może być pokryty przez kilka reguł Dwa podejścia: Uporządkowany zbiór reguł Nieuporządkowany zbiór reguł str. 79 Uporządkowany zbiór reguł Reguły należące do zbioru Rsą uporządkowane malejąco zgodnie z ich priorytetami Zbiór reguł uporządkowany na podstawie ich priorytetów nazywamy listą decyzyjną Priorytet reguły można zdefiniować na podstawie: pokrycia, trafności, kolejności generowania reguł W przypadku klasyfikacji nowego rekordu X: wybierana jest ze zbioru R reguła pokrywająca rekord X o najwyższym priorytecie z listy decyzyjnej, w przypadku, gdy żadna reguła nie pokrywa rekordu X, do klasyfikacji rekordu X stosuje się regułę domyślną r d : () y d str. 80 Nieuporządkowany zbiór reguł Reguły zbioru R są nieuporządkowane rekord danych X może być pokryty przez kilka reguł Klasyfikacja oparta na mechanizmie głosowania Następnik każdej reguły pokrywającej X jest odpowiednikiem oddania głosu na dana klasę decyzyjną rekord X jest przypisywany do tej klasy, która otrzyma najwięcej głosów Regułom przypisujemy wagi Rozwiązanie bardziej odporne na błędy spowodowane błędnym rankingiem reguł Rozwiązanie droższe str. 81

28 Schematy porządkowania reguł Globalny ranking reguł (ang. rule-based ordering scheme Wszystkie reguły zbioru R są uporządkowane w oparciu o przyjętą miarę oceny jakości reguły (priorytet) Schemat zapewnia, że każdy rekord jest klasyfikowany przez najlepszą regułę Trudna interpretacja reguł niskim priorytecie negacja poprzedników wszystkich reguł o wyższym poziomie + poprzednik reguły Lokalny ranking reguł określających tę samą klasę decyzyjną (ang. class-based ordering) Reguły o tym samym następniku są grupowane razem Porządek reguł w ramach grupy nieistotny Grupy reguł są uporządkowane w ramach listy decyzyjnej w kolejności malejącej ważności ich klas decyzyjnych str. 82 Konstrukcja klasyfikatorów regułowych Metody pośrednie: ekstrakcja reguł z innych modeli klasyfikacyjnych (np. drzewa decyzyjne, sieci neuronowe, etc). np.: C4.5rules Metody bezpośrednie: ekstrakcja reguł bezpośrednio z danych np.: RIPPER, CN2 str. 83 Ekstrakcja reguł z drzew decyzyjnych (1) Dowolne drzewo decyzyjne można relatywnie prosto przekształcić w zbiór reguł klasyfikacyjnych postaci IF-THEN Pojedyncza reguła jest tworzona dla każdej ścieżki w drzewie od korzenia do liścia Poprzednikiem tej reguły jest koniunkcja wszystkich testów zdefiniowanych w wierzchołkach wewnętrznych drzewa decyzyjnego należących do ścieżki łączącej korzeń z liściem, a następnikiem klasa decyzyjna przydzielona do liścia tej ścieżki str. 84

29 Ekstrakcja reguł z drzew decyzyjnych (2) Drzewo decyzyjne Drzewo 1 transformujemy następująco: IF dochód= niski THEN ryzyko= wysokie IF dochód = wysoki AND status= żonaty THEN ryzyko= małe IF dochód = wysoki AND status= żonaty AND dzieci= 2 THEN ryzyko= małe IF dochód = wysoki AND status= żonaty AND dzieci= 2 THEN ryzyko= wysokie str. 85 Ekstrakcja reguł z drzew decyzyjnych (3) Czasami zbiór reguł klasyfikacyjnych uzyskanych z przekształcenia drzewa decyzyjnego jest zbyt złożony i nadmiarowy W fazie postprocessingu reguły są przycinane przez usuwanie nadmiarowych testów w poprzednikach reguł Ekstrakcja reguł klasyfikacyjnych z nieprzyciętego drzewa decyzyjnego Dla każdej otrzymanej reguły, r: A y, analizowane są, po kolei, wszystkie testy stanowiące poprzednik reguły r rozważ regułę alternatywną r : A y gdzie A otrzymujemy z A przez usunięcie jednego z testów należących do A str. 86 Ekstrakcja reguł z drzew decyzyjnych (4) dany test jest usuwany z reguły, analizowany jest zbiór rekordów treningowych pokrywanych przez nową regułę klasyfikacyjną i obliczane jest pesymistyczne oszacowanie trafności klasyfikacji dla tej reguły klasyfikacyjnej oszacowanie to jest porównywane z pesymistycznym oszacowaniem trafności klasyfikacji oryginalnej reguły jeżeli oszacowanie trafności zmodyfikowanej reguły jest lepsze aniżeli oszacowanie trafności oryginalnej reguły, to dany test jest usuwany z reguły klasyfikacyjnej procedura jest kontynuowana dla wszystkich testów wchodzących w skład poprzednika reguły r str. 87

30 Ekstrakcja reguł z drzew decyzyjnych (5) procedurze przycinania są poddane wszystkie reguły uzyskane z przekształcenia drzewa decyzyjnego w kolejnym kroku sprawdza się, czy uzyskany zbiór reguł nie zawiera duplikatów, to jest identycznych reguł - jeżeli występują duplikaty, to są one usuwane ze zbioru reguł na zakończenie procedury sprawdza się, czy uzyskany zbiór reguł pokrywa wszystkie klasy decyzyjne str. 88 Ogólny algorytm ekstrakcji reguł klasyfikacyjnych Reguły klasyfikacyjne można wywieść bezpośrednio ze zbioru danych treningowych bez konieczności etapu transformacji innego modelu klasyfikacyjnego Podstawowym algorytmem bezpośredniej ekstrakcji reguł klasyfikacyjnych ze zbioru danych treningowych jest sekwencyjny algorytm pokrycia (ang. sequential covering algorithm) Algorytm sekwencyjnego pokrycia generuje sekwencyjnie, reguła po regule, reguły klasyfikacyjne dla każdej klasy decyzyjnej str. 89 Algorytm sekwencyjnego pokrycia (1) Input: zbiór danych treningowych D, uporządkowany zbiór klas C = {C1, C2,..., Ck}, zbiór wszystkich par atrybut-wartość {(Aj, vj)} Output: zbiór reguł klasyfikacyjnych R 1: R {}; 2: for each classci C Ckdo 3: whilestopping condition is not met do 4: r Learn p One p Rule(D,A,Ci); 5: remove training records from D that are covered by the rule r; 6: add the rule r to the bottomof the rule set R, R R r; 7: end while 8: end for 9: add the default rule r d : {} Ck to the bottom of R, R R r d str. 90

31 Algorytm sekwencyjnego pokrycia (2) Uporządkuj zbiór klas decyzyjnych C, np. w malejącym porządku względnej częstości ich występowania w zbiorze D Inicjuj zbiór reguł R Procedura Learn-One-Ruleznajduje najlepszą regułę dla klasy Ci (reguła r): wszystkie rekordy zbioru D należące do klasy Ci są traktowane jako przykłady pozytywne, pozostałe rekordy zbioru D należące do innych klas są traktowane jako przykłady negatywne Usuń rekordy pokrywane przez regułę r Powtarzaj procedurę aż do spełnienia warunku stopu Przejdź do generowania reguł dla następnej klasy decyzyjnej str. 91 Algorytm sekwencyjnego pokrycia (3) (ii) Step 1 str. 92 Algorytm sekwencyjnego pokrycia (4) R1 R1 R2 (iii) Step 2 (iv) Step 3 str. 93

32 Algorytm sekwencyjnego pokrycia (5) Dwa warunki stopu: wyczerpanie rekordów treningowych należących do danej klasy decyzyjnej jeżeli trafność znalezionej reguły jest poniżej zadanej wartości progowej Celem procedury Learn-One-Rulejest znalezienie reguły dla klasy Ci pokrywającej wiele przykładów pozytywnych i żadnego (lub niewielu) przykładów negatywnych Znalezienie optymalnej reguły jest obliczeniowo kosztowne W procedurze Learn-One-Rulestosuje się podejście zachłanne do znajdowania reguł Polega ono na konstrukcji początkowej reguły r, a następnie na jej poprawianiu (rozszerzaniu lub zawężaniu), aż do spełnienia określonego warunku stopu str. 94 Strategie zachłanne konstrukcji reguł Dwa podejścia zachłanne używane do konstrukcji reguły klasyfikacyjnej: od ogółu do szczegółu (ang. general-to-specific) od szczegółu do ogółu (ang. specific-to-general) str. 95 Od ogółu do szczegółu (1) Zaczynamy od reguły pustej: {} klasa Reguła pokrywa wszystkie rekordy zbioru D Dodajemy nowe testy do reguły w celu poprawy jej jakości Proces dodawania nowych testów kontynuujemy tak długo, aż nie zostanie spełniony warunek stopu (np. kiedy dodanie nowego testu nie poprawia już jakości reguły) str. 96

33 Od ogółu do szczegółu (2) {} class income = high income = medium age= <= 30 income = medium and status=married income = medium and status= divorced str. 97 Od szczegółu do ogółu (1) Zaczynamy od pojedynczego przykładu pozytywnego (wybranego losowo) jako reguły początkowej procesu konstrukcji reguły klasyfikacyjnej Reguła początkowa pokrywa jeden (lub wiele) rekordów Krok poprawiania: reguła jest uogólniana przez usunięcie jednego z testów poprzednika reguły (reguła pokrywa więcej przykładów) Krok poprawiania jest kontynuowany aż do osiągnięcia warunku stopu (np. kiedy nowa reguła zaczyna pokrywać przykłady negatywne lub kiedy usunięcie testu nie prowadzi do poprawy jakości reguły) str. 98 Od szczegółu do ogółu (2) age <= 30 and status = bachelor and income = low and children = 0 high status = bachelor and income = low and children = 0 high age <= 30 and status = bachelor and income = low high str. 99

34 Miary oceny reguł (1) Potrzebujemy miary (miar) aby określić, który z testów powinien być dodany do reguły (lub usunięty) Oczywistym wyborem powinna być miara trafności, jednakże nie bierze ona pod uwagę pokrycia reguły Przykład: dany jest zbiór rekordów D zawierający 100 przykładów: D zawiera 40 przykładów pozytywnych i 60 przykładów negatywnych Dane są reguły r1 i r2 o trafności, odpowiednio, 95% and 100% - reguła r1 pokrywa 38 przykładów pozytywnych i 2 przykłady negatywne, natomiast reguła r2 pokrywa 2 przykłady pozytywne Która z reguł jest lepsza? str. 100 Miary oceny reguł (2) Zysk informacyjny (Information gain): Dana jest reguła r0: A C i, która pokrywa pos przykładów pozytywnych i neg przykładów negatywnych. Załóżmy, że dodajemy nowy test B do poprzednika reguły r0 i otrzymujemy nowa regułę r1: r1: A B C i która pokrywa pos* przykładów pozytywnych i neg* przykładów negatywnych. Zysk informacyjny rozszerzonej reguły r1 jest następujący: pos = pos (log w pos + neg - log pos w pos + neg ) str. 101 Miary oceny reguł (3) Zysk informacyjny: Gain(r1) = 38(log 2 (38/40) log 2 (40/100)) = 47,47 Gain(r2) = 2(log 2 (2/2) log 2 (40/100)) = 2,64 zakładamy, że obie reguły r1 i r2 są rozszerzeniami reguły początkowej r: {} + str. 102

35 Miary oceny reguł (4) Statystyczny wskaźnik wiarygodności: (Likelihood ratio statistic) fi R = f log ( ) e k 2 i 2 i= 1 i gdzie k oznacza liczbę klas decyzyjnych, f i oznacza częstość występowania klasy C i w zbiorze rekordów pokrywanych przez regułę r, natomiast e i to oczekiwana częstość klasy C i str. 103 Miary oceny reguł (5) Statystyczny wskaźnik wiarygodności : w rozważanym przykładzie mamy dwie klasy: C1 klasa przykładów pozytywnych (40 przykładów), C2 - klasa przykładów negatywnych (60 przykładów) dla reguły r1 oczekiwana częstość klas wynosi: e(c1) = 40 40/100= 16 e(c2) = 60 60/100= 24 R(r1) = 2 [38 log 2 (38/16) + 2 log 2 (2/24)] = 74,56 R(r2) = 2 [2 log 2 (2/0,8) + 0 log 2 (0/1,2)] = 5,29 r1 ma wyższy statystyczny wskaźnik wiarygodności aniżeli r2 str. 104 Miary oceny reguł (6) Miary statystyczne Laplace m-estimate n c + 1 = n+ k n c + = n+kp k n : liczba rekordów pokrywana przez regułę n c : liczba przykładów pozytywnych pokrywanych przez regułę k : liczba klas p : prawdopodobieństwo apriori wystąpienia klasy pozytywnej str. 105

36 Schemat algorytmu Ripper Algorytm skalowalny względem liczby rekordów zbioru treningowego Algorytm pozwala na konstrukcję klasyfikatora dla zbiorów danych o niezrównoważonym rozkładzie klas Algorytm odporny na zaszumione dane wykorzystuje koncepcję zbioru danych walidacyjnych Algorytm wykorzystuje strategię od ogółu do szczegółu Do oceny jakości reguł algorytm wykorzystuje miarę zysku informacyjnego Zbiór reguł R jest zorganizowany zgodnie z lokalnym rankingiem reguł (class-based scheme) str. 106 Algorytm Ripper(1) Algorytm RIPPER(pos, neg) Input: zbiór przykładów pozytywnych pos, zbiór przykładów negatywnych neg, zbiór A par atrybut-wartość {(Aj, vj)}, klasa C i Output: zbiór reguł R dla klasy C i 1: ruleset ; 2: DL DescLen(ruleset, pos, neg); 3: while pos <>0 do 4: podziel zbiór (pos, neg) na zbiór konstrukcyjny (KonstPos,KonstNeg) i zbiór walidacyjny (PrunePos,PruneNeg); 5: Rule Learn p One p Rule(KonstPos,KonstNeg, A,C i ); 6: Rule Prune p Rule(Rule,PrunePos,PruneNeg); str. 107 Algorytm Ripper(2) 7: ruleset ruleset Rule; 8: DL DescLen(ruleset, pos, neg); 9: ifdl > DL+ 64 then 10: ruleset ruleset p Rule; 11: return ruleset; 12: end if 13: usuń przykłady pozytywne i negatywne ze zbioru D pokrywane przez regułę Rule; 14: DL DL ; 15: end while 16: return ruleset; str. 108

37 Algorytm Ripper(3) Uporządkuj zbiór klas C w rosnącym porządku częstości występowania klas Dla każdej klasy C i, niezależnie, wygeneruj zbiór reguł Zainicjuj zbiór reguł R oraz parametr DL (długość opisu) Dwie pętle: zewnętrzna i wewnętrzna (while i LOR) W każdej iteracji pętli zewnętrznej jest generowana jedna reguła klasyfikacyjna (Rule) Warunek stopu dla pętli zewnętrznej: pos =0 (brak dalszych przykładów pozytywnych) Zbyt duża wartość parametru DL str. 109 Algorytm Ripper(4) Prosta procedura wydzielania zastosowana do podziału zbioru (pos, neg) na zbiór konstrukcyjny (KonstPos,KonstNeg) i zbiór walidacyjny (PrunePos,PruneNeg) (podział: 2/3 1/3) Procedura Learn-One-Rulegeneruje najlepszą regułę dla klasy C i (strategia od ogółu do szczegółu): Rozpoczynamy od reguły pustej Dodajemy nowe testy tak długo jak dodawanie nowych testów prowadzi do poprawy wartości miary zysku informacyjnego Kończymy dodawanie nowych testów kiedy reguła zaczyna pokrywać przykłady negatywne Następnie, reguła jest przycinana bazując na ocenie jej jakości na zbiorze walidacyjnym (Prune-Rule procedure) str. 110 Algorytm Ripper(5) Miara wykorzystywana do przycinania reguły: v = (p-n)/(p+n) p: liczba przykładów pozytywnych pokrywanych przez regułę w zbiorze danych walidacyjnych n: liczba przykładów negatywnych pokrywanych przez regułę w zbiorze danych walidacyjnych Metoda przycinania: delete any final sequence of conditions that maximizes v Każdorazowo, gdy nowa reguła Rule jest dodawana do zbioru reguł R obliczana jest nowa wartość parametru DL Procedura przycinania reguły jest realizowana w odwrotnej kolejności rozszerzania reguły i polega na usunięciu końcowej sekwencji testów Usuwana jest ta końcowa sekwencja dodawania nowych testów, która maksymalizuje wartość miary v. Usuwane są ze zbioru D przykłady pozytywne i negatywne pokrywane przez regułę Rule; str. 111

38 Klasyfikacja asocjacyjna (1) Do odkrywania reguł klasyfikacyjnych możemy zastosować algorytmy odkrywania wielowymiarowych reguł asocjacyjnych podejście to nosi nazwę klasyfikacji asocjacyjnej Podejście to odkrywa reguły postaci condset y, gdzie condset jest konkatenacją par atrybut-wartość, natomiast y oznacza klasę decyzyjną str. 112 Klasyfikacja asocjacyjna (2) RID age status income children risk 1 <=30 bachelor low 0 high married medium 1 low divirced high 2 low 4 > 40 married medium 2 low 5 < = 30 married low 1 high divorced high 0 high bachelor low 0 high 8 > 40 married high 2 low 9 > 40 married medium 1 low divorced low 2 high 11 < = 30 bachelor high 0 low 12 > 40 divorced medium 4 high 13 > 40 married medium 1 low 14 > 40 divorced high 2 low str. 113 Klasyfikacja asocjacyjna (3) Przyjmując minsup=3/14, minconf=70% możemy odkryć 19 wielowymiarowych reguł asocjacyjnych postaci: 1. IF income= medium AND age= > 40 AND status= married THEN risk= low 2. IF income = medium AND children= 1 AND status= married THEN risk= low 3. IF age= > 40 AND status= married THEN risk= low 4. IF age= > 40 AND income = medium THEN risk= low 5. IF age= > 40 AND children= 2 THEN risk= low 6. IF status= married AND icome= medium THEN risk= low 7. IF status= married AND children= 1 THEN risk = low str. 114

39 Klasyfikacja asocjacyjna (4) 8. IF income= medium AND children = 1 THEN risk = low 9. IF income = high AND children = 2 THEN risk = low 10. IF age= THEN risk = high 11. IF age= > 40 THEN risk = low 12. IF status= divorced THEN risk = high 13. IF status= married THEN risk = low 14. IF income = low THEN risk = high 15. IF income = medium THEN risk = low 16. IF income = high THEN risk = low 17. IF children = 0 THEN risk = high 18. IF children = 1 THEN risk = low 19. IF children = 2 THEN risk = low str. 115 Klasyfikacja asocjacyjna (5) Drzewo decyzyjne wygenerowane dla zbioru danych treningowych przedstawionych w tabeli ma następująca postać age student <= yes >40 credit_rating no yes excellent fair no yes no yes str. 116 Klasyfikacja asocjacyjna (6) Transformując drzewo decyzyjne do postaci zbioru reguł klasyfikacyjnych otrzymujemy 6 reguł klasyfikacyjnych: IF income= high AND children= 0 AND age= THEN risk= high IF income = high AND children = 0 AND age= <= 30 THEN risk = low IF income = high AND children = 2 THEN risk = low IF income = medium AND status= married THEN risk = low IF income = medium AND status= divorced THEN risk = high IF income = low THEN risk = high str. 117

40 Klasyfikacja asocjacyjna (7) Wielowymiarowe reguły asocjacyjne (minsup, minconf) vs reguły klasyfikacyjne (brak progów typu minsup, minconf) Niektóre reguły występują w obu zbiorach Redukując minsup otrzymamy wszystkie CR (CR jest podzbiorem MAR) Zbiór MAR jest nadmiarowy (np. 9, 16, 19) Co ze zbiorem reguł R stanowiących klasyfikator? Trzy podejścia: Generacja zbioru MAR Konstrukcja klasyfikatora str. 118 Algorytm CBA (1) Klasyfikacja z wykorzystaniem asocjacji Algorytm składa się z dwóch części: Generacja MAR (CBA-RG) Konstrukcja modelu klasyfikacyjnego (klasyfikatora) (CBA-CB) CBA-RG generuje MAR wykorzystując podejście Apriori W każdej iteracji algorytm generuje reguły ze znalezionych zbiorów częstych Jeżeli algorytm wygenerował dwie reguły o tym samym poprzedniku, wówczas wybierana jest reguła o większej ufności: If A=1 and B=1 then DA=C1, sup=20%, conf=66,7% If A=1 and B=1 then DA=C2, sup=20%, conf=33,3% wybierana jest reguła pierwsza tzw. reguła możliwa, reguła druga jest usuwana str. 119 Algorytm CBA (2) CBA-CB konstruuje klasyfikator wykorzystując zbiór reguł możliwych Konstrukcja optymalnego klasyfikatora jest obliczeniowo bardzo kosztowna (2 m gdzie m oznacza liczbę reguł) Relacja porządku > na zbiorze możliwych reguł klasyfikacyjnych jest zdefiniowana następująco: reguła r1 poprzedza regułę r2, r1 > r2, wtedy, gdy: ufność reguły r1 jest większa aniżeli ufność reguły r2, lub posiadają taką sama ufność, ale wsparcie reguły r1 jest większe aniżeli wsparcie reguły r2, lub obie reguły posiadają takie samo wsparcie i ufność, ale reguła r1 została wygenerowana wcześniej aniżeli reguła r2 (lub jest krótsza) str. 120

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

Data Mining Wykład 5. Indukcja drzew decyzyjnych - Indeks Gini & Zysk informacyjny. Indeks Gini. Indeks Gini - Przykład Data Mining Wykład 5 Indukcja drzew decyzyjnych - Indeks Gini & Zysk informacyjny Indeks Gini Popularnym kryterium podziału, stosowanym w wielu produktach komercyjnych, jest indeks Gini Algorytm SPRINT

Bardziej szczegółowo

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

Klasyfikacja. Indeks Gini Zysk informacyjny. Eksploracja danych. Klasyfikacja wykład 2 Klasyfikacja Indeks Gini Zysk informacyjny Klasyfikacja wykład 2 Kontynuujemy prezentacje metod klasyfikacji. Na wykładzie zostaną przedstawione dwa podstawowe algorytmy klasyfikacji oparte o indukcję

Bardziej szczegółowo

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

Klasyfikacja. Sformułowanie problemu Metody klasyfikacji Kryteria oceny metod klasyfikacji. Eksploracja danych. Klasyfikacja wykład 1 Klasyfikacja Sformułowanie problemu Metody klasyfikacji Kryteria oceny metod klasyfikacji Klasyfikacja wykład 1 Niniejszy wykład poświęcimy kolejnej metodzie eksploracji danych klasyfikacji. Na początek

Bardziej szczegółowo

Data Mining Wykład 4. Plan wykładu

Data Mining Wykład 4. Plan wykładu Data Mining Wykład 4 Klasyfikacja danych Klasyfikacja poprzez indukcje drzew decyzyjnych Plan wykładu Sformułowanie problemu Kryteria oceny metod klasyfikacji Metody klasyfikacji Klasyfikacja poprzez indukcje

Bardziej szczegółowo

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

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 Eksploracja Danych wykład 4 Sebastian Zając WMP.SNŚ UKSW 10 maja 2017 Sebastian Zając (WMP.SNŚ UKSW) Eksploracja Danych 10 maja 2017 1 / 18 Klasyfikacja danych Klasyfikacja Najczęściej stosowana (najstarsza)

Bardziej szczegółowo

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

SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska SYSTEMY UCZĄCE SIĘ WYKŁAD 4. DRZEWA REGRESYJNE, INDUKCJA REGUŁ Częstochowa 2014 Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska DRZEWO REGRESYJNE Sposób konstrukcji i przycinania

Bardziej szczegółowo

Klasyfikacja obiektów Drzewa decyzyjne (drzewa klasyfikacyjne)

Klasyfikacja obiektów Drzewa decyzyjne (drzewa klasyfikacyjne) Klasyfikacja obiektów Drzewa decyzyjne (drzewa klasyfikacyjne) Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski Klasyfikacja i predykcja. Odkrywaniem reguł klasyfikacji nazywamy proces znajdowania

Bardziej szczegółowo

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

SAS wybrane elementy. DATA MINING Część III. Seweryn Kowalski 2006 SAS wybrane elementy DATA MINING Część III Seweryn Kowalski 2006 Algorytmy eksploracji danych Algorytm eksploracji danych jest dobrze zdefiniowaną procedurą, która na wejściu otrzymuje dane, a na wyjściu

Bardziej szczegółowo

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

SYSTEMY UCZĄCE SIĘ WYKŁAD 3. DRZEWA DECYZYJNE. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska. SYSTEMY UCZĄCE SIĘ WYKŁAD 3. DRZEWA DECYZYJNE Częstochowa 2014 Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska BUDOWA DRZEW DECYZYJNYCH Drzewa decyzyjne są metodą indukcyjnego

Bardziej szczegółowo

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 ;

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 ; Algorytm LEM1 Oznaczenia i definicje: U - uniwersum, tj. zbiór obiektów; A - zbiór atrybutów warunkowych; d - atrybut decyzyjny; IND(B) = {(x, y) U U : a B a(x) = a(y)} - relacja nierozróżnialności, tj.

Bardziej szczegółowo

Algorytmy klasyfikacji

Algorytmy klasyfikacji Algorytmy klasyfikacji Konrad Miziński Instytut Informatyki Politechnika Warszawska 6 maja 2015 1 Wnioskowanie 2 Klasyfikacja Zastosowania 3 Drzewa decyzyjne Budowa Ocena jakości Przycinanie 4 Lasy losowe

Bardziej szczegółowo

INDUKOWANE REGUŁY DECYZYJNE ALORYTM APRIORI JAROSŁAW FIBICH

INDUKOWANE REGUŁY DECYZYJNE ALORYTM APRIORI JAROSŁAW FIBICH INDUKOWANE REGUŁY DECYZYJNE ALORYTM APRIORI JAROSŁAW FIBICH 1. Czym jest eksploracja danych Eksploracja danych definiowana jest jako zbiór technik odkrywania nietrywialnych zależności i schematów w dużych

Bardziej szczegółowo

Indukowane Reguły Decyzyjne I. Wykład 3

Indukowane Reguły Decyzyjne I. Wykład 3 Indukowane Reguły Decyzyjne I Wykład 3 IRD Wykład 3 Plan Powtórka Grafy Drzewa klasyfikacyjne Testy wstęp Klasyfikacja obiektów z wykorzystaniem drzewa Reguły decyzyjne generowane przez drzewo 2 Powtórzenie

Bardziej szczegółowo

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

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

Bardziej szczegółowo

Co to są drzewa decyzji

Co to są drzewa decyzji Drzewa decyzji Co to są drzewa decyzji Drzewa decyzji to skierowane grafy acykliczne Pozwalają na zapis reguł w postaci strukturalnej Przyspieszają działanie systemów regułowych poprzez zawężanie przestrzeni

Bardziej szczegółowo

Drzewa decyzyjne i lasy losowe

Drzewa decyzyjne i lasy losowe Drzewa decyzyjne i lasy losowe Im dalej w las tym więcej drzew! ML Gdańsk http://www.mlgdansk.pl/ Marcin Zadroga https://www.linkedin.com/in/mzadroga/ 20 Czerwca 2017 WPROWADZENIE DO MACHINE LEARNING CZYM

Bardziej szczegółowo

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

Wybrane zadania przygotowujące do egzaminu z ISO- cz. 2. dr Piotr Wąsiewicz Wybrane zadania przygotowujące do egzaminu z ISO- cz. 2 dr Piotr Wąsiewicz. Ze zbioru treningowego podanego w tabeli poniżej wykreować metodą zstępującej konstrukcji drzewo decyzyjne(jak najmniej rozbudowane-

Bardziej szczegółowo

Data Mining Wykład 3. Algorytmy odkrywania binarnych reguł asocjacyjnych. Plan wykładu

Data Mining Wykład 3. Algorytmy odkrywania binarnych reguł asocjacyjnych. Plan wykładu Data Mining Wykład 3 Algorytmy odkrywania binarnych reguł asocjacyjnych Plan wykładu Algorytm Apriori Funkcja apriori_gen(ck) Generacja zbiorów kandydujących Generacja reguł Efektywności działania Własności

Bardziej szczegółowo

WYKŁAD 11 Uczenie maszynowe drzewa decyzyjne

WYKŁAD 11 Uczenie maszynowe drzewa decyzyjne WYKŁAD 11 Uczenie maszynowe drzewa decyzyjne Reprezentacja wiedzy w postaci drzew decyzyjnych entropia, przyrost informacji algorytmy ID3, C4.5 problem przeuczenia wyznaczanie reguł rzykładowe drzewo decyzyjne

Bardziej szczegółowo

Klasyfikacja. Obcinanie drzewa Naiwny klasyfikator Bayes a knn Dokładność klasyfikacji. Eksploracja danych. Klasyfikacja wykład 3

Klasyfikacja. Obcinanie drzewa Naiwny klasyfikator Bayes a knn Dokładność klasyfikacji. Eksploracja danych. Klasyfikacja wykład 3 Klasyfikacja Obcinanie drzewa Naiwny klasyfikator Bayes a knn Dokładność klasyfikacji Klasyfikacja wykład 3 Kontynuujemy prezentację zagadnień związanych z klasyfikacją. Na początku przedstawimy technikę

Bardziej szczegółowo

WYKŁAD 6. Reguły decyzyjne

WYKŁAD 6. Reguły decyzyjne Wrocław University of Technology WYKŁAD 6 Reguły decyzyjne autor: Maciej Zięba Politechnika Wrocławska Reprezentacje wiedzy Wiedza w postaci reguł decyzyjnych Wiedza reprezentowania jest w postaci reguł

Bardziej szczegółowo

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

Złożoność i zagadnienia implementacyjne. Wybierz najlepszy atrybut i ustaw jako test w korzeniu. Stwórz gałąź dla każdej wartości atrybutu. Konwersatorium Matematyczne Metody Ekonomii Narzędzia matematyczne w eksploracji danych Indukcja drzew decyzyjnych Wykład 3 - część 2 Marcin Szczuka http://www.mimuw.edu.pl/ szczuka/mme/ Plan wykładu Generowanie

Bardziej szczegółowo

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

SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW. Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska. SYSTEMY UCZĄCE SIĘ WYKŁAD 10. PRZEKSZTAŁCANIE ATRYBUTÓW Częstochowa 2014 Dr hab. inż. Grzegorz Dudek Wydział Elektryczny Politechnika Częstochowska INFORMACJE WSTĘPNE Hipotezy do uczenia się lub tworzenia

Bardziej szczegółowo

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

Metody klasyfikacji danych - część 1 p.1/24 Metody klasyfikacji danych - część 1 Inteligentne Usługi Informacyjne Jerzy Dembski Metody klasyfikacji danych - część 1 p.1/24 Plan wykładu - Zadanie klasyfikacji danych - Przeglad problemów klasyfikacji

Bardziej szczegółowo

Wprowadzenie Sformułowanie problemu Typy reguł asocjacyjnych Proces odkrywania reguł asocjacyjnych. Data Mining Wykład 2

Wprowadzenie Sformułowanie problemu Typy reguł asocjacyjnych Proces odkrywania reguł asocjacyjnych. Data Mining Wykład 2 Data Mining Wykład 2 Odkrywanie asocjacji Plan wykładu Wprowadzenie Sformułowanie problemu Typy reguł asocjacyjnych Proces odkrywania reguł asocjacyjnych Geneza problemu Geneza problemu odkrywania reguł

Bardziej szczegółowo

Automatyczne wyodrębnianie reguł

Automatyczne wyodrębnianie reguł Automatyczne wyodrębnianie reguł Jedną z form reprezentacji wiedzy jest jej zapis w postaci zestawu reguł. Ta forma ma szereg korzyści: daje się łatwo interpretować, można zrozumieć sposób działania zbudowanego

Bardziej szczegółowo

ALGORYTM RANDOM FOREST

ALGORYTM RANDOM FOREST SKRYPT PRZYGOTOWANY NA ZAJĘCIA INDUKOWANYCH REGUŁ DECYZYJNYCH PROWADZONYCH PRZEZ PANA PAWŁA WOJTKIEWICZA ALGORYTM RANDOM FOREST Katarzyna Graboś 56397 Aleksandra Mańko 56699 2015-01-26, Warszawa ALGORYTM

Bardziej szczegółowo

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

Algorytmy decyzyjne będące alternatywą dla sieci neuronowych Algorytmy decyzyjne będące alternatywą dla sieci neuronowych Piotr Dalka Przykładowe algorytmy decyzyjne Sztuczne sieci neuronowe Algorytm k najbliższych sąsiadów Kaskada klasyfikatorów AdaBoost Naiwny

Bardziej szczegółowo

TEMP BÓL WYSYPKA GARDŁO DIAGNOZA

TEMP BÓL WYSYPKA GARDŁO DIAGNOZA Klasyfikacja Klasyfikacja TEMP BÓL WYSYPKA GARDŁO DIAGNOZA 36.6 T BRAK NORMA NIESTRAWNOŚĆ 37.5 N MAŁA PRZEKR. ALERGIA 36.0 N BRAK NORMA PRZECHŁODZENIE 39.5 T DUŻA PRZEKR. CZARNA OSPA Klasyfikator TEMP

Bardziej szczegółowo

Uczenie się maszyn. Dariusz Banasiak. Katedra Informatyki Technicznej Wydział Elektroniki

Uczenie się maszyn. Dariusz Banasiak. Katedra Informatyki Technicznej Wydział Elektroniki Dariusz Banasiak Katedra Informatyki Technicznej Wydział Elektroniki Machine Learning (uczenie maszynowe, uczenie się maszyn, systemy uczące się) interdyscyplinarna nauka, której celem jest stworzenie

Bardziej szczegółowo

8. Drzewa decyzyjne, bagging, boosting i lasy losowe

8. Drzewa decyzyjne, bagging, boosting i lasy losowe Algorytmy rozpoznawania obrazów 8. Drzewa decyzyjne, bagging, boosting i lasy losowe dr inż. Urszula Libal Politechnika Wrocławska 2015 1 1. Drzewa decyzyjne Drzewa decyzyjne (ang. decision trees), zwane

Bardziej szczegółowo

Odkrywanie wiedzy w danych

Odkrywanie wiedzy w danych Inżynieria Wiedzy i Systemy Ekspertowe Odkrywanie wiedzy w danych dr inż. Michał Bereta Politechnika Krakowska http://torus.uck.pk.edu.pl/~beretam/ beretam@torus.uck.pk.edu.pl 1 Data Mining W pewnym teleturnieju

Bardziej szczegółowo

Indukowane Reguły Decyzyjne I. Wykład 8

Indukowane Reguły Decyzyjne I. Wykład 8 Indukowane Reguły Decyzyjne I Wykład 8 IRD Wykład 8 Plan Powtórka Krzywa ROC = Receiver Operating Characteristic Wybór modelu Statystyka AUC ROC = pole pod krzywą ROC Wybór punktu odcięcia Reguły decyzyjne

Bardziej szczegółowo

Kompresja danych Streszczenie Studia Dzienne Wykład 10,

Kompresja danych Streszczenie Studia Dzienne Wykład 10, 1 Kwantyzacja wektorowa Kompresja danych Streszczenie Studia Dzienne Wykład 10, 28.04.2006 Kwantyzacja wektorowa: dane dzielone na bloki (wektory), każdy blok kwantyzowany jako jeden element danych. Ogólny

Bardziej szczegółowo

Elementy modelowania matematycznego

Elementy modelowania matematycznego Elementy modelowania matematycznego Modelowanie algorytmów klasyfikujących. Podejście probabilistyczne. Naiwny klasyfikator bayesowski. Modelowanie danych metodą najbliższych sąsiadów. Jakub Wróblewski

Bardziej szczegółowo

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

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

Bardziej szczegółowo

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

Grupowanie Witold Andrzejewski, Politechnika Poznańska, Wydział Informatyki 201/633 Grupowanie Grupowanie 7 6 5 4 y 3 2 1 0-3 -2-1 0 1 2 3 4 5-1 -2-3 -4 x Witold Andrzejewski, Politechnika Poznańska, Wydział Informatyki 201/633 Wprowadzenie Celem procesu grupowania jest podział zbioru

Bardziej szczegółowo

Drzewa klasyfikacyjne Lasy losowe. Wprowadzenie

Drzewa klasyfikacyjne Lasy losowe. Wprowadzenie Wprowadzenie Konstrukcja binarnych drzew klasyfikacyjnych polega na sekwencyjnym dzieleniu podzbiorów przestrzeni próby X na dwa rozłączne i dopełniające się podzbiory, rozpoczynając od całego zbioru X.

Bardziej szczegółowo

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

Reguły decyzyjne, algorytm AQ i CN2. Reguły asocjacyjne, algorytm Apriori. Analiza danych Reguły decyzyjne, algorytm AQ i CN2. Reguły asocjacyjne, algorytm Apriori. Jakub Wróblewski jakubw@pjwstk.edu.pl http://zajecia.jakubw.pl/ REGUŁY DECYZYJNE Metoda reprezentacji wiedzy (modelowania

Bardziej szczegółowo

Indukcja drzew decyzyjnych

Indukcja drzew decyzyjnych Konwersatorium Matematyczne Metody Ekonomii Narzędzia matematyczne w eksploracji danych Indukcja drzew decyzyjnych Wykład 3 - część 2 Marcin Szczuka http://www.mimuw.edu.pl/ szczuka/mme/ Divide et impera

Bardziej szczegółowo

Algorytmy odkrywania binarnych reguł asocjacyjnych

Algorytmy odkrywania binarnych reguł asocjacyjnych Algorytmy odkrywania binarnych reguł asocjacyjnych A-priori FP-Growth Odkrywanie asocjacji wykład 2 Celem naszego wykładu jest zapoznanie się z dwoma podstawowymi algorytmami odkrywania binarnych reguł

Bardziej szczegółowo

Metody eksploracji danych. Reguły asocjacyjne

Metody eksploracji danych. Reguły asocjacyjne Metody eksploracji danych Reguły asocjacyjne Analiza podobieństw i koszyka sklepowego Analiza podobieństw jest badaniem atrybutów lub cech, które są powiązane ze sobą. Metody analizy podobieństw, znane

Bardziej szczegółowo

Sztuczna Inteligencja Projekt

Sztuczna Inteligencja Projekt Sztuczna Inteligencja Projekt Temat: Algorytm LEM2 Liczba osób realizujących projekt: 2 1. Zaimplementować algorytm LEM 2. 2. Zaimplementować klasyfikator Classif ier. 3. Za pomocą algorytmu LEM 2 wygenerować

Bardziej szczegółowo

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

mgr inż. Magdalena Deckert Poznań, r. Metody przyrostowego uczenia się ze strumieni danych. mgr inż. Magdalena Deckert Poznań, 30.11.2010r. Metody przyrostowego uczenia się ze strumieni danych. Plan prezentacji Wstęp Concept drift i typy zmian Algorytmy przyrostowego uczenia się ze strumieni

Bardziej szczegółowo

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

Eksploracja danych. KLASYFIKACJA I REGRESJA cz. 2. Wojciech Waloszek. Teresa Zawadzka. Eksploracja danych KLASYFIKACJA I REGRESJA cz. 2 Wojciech Waloszek wowal@eti.pg.gda.pl Teresa Zawadzka tegra@eti.pg.gda.pl Katedra Inżynierii Oprogramowania Wydział Elektroniki, Telekomunikacji i Informatyki

Bardziej szczegółowo

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

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 ZeroR Odpowiada zawsze tak samo Decyzja to klasa większościowa ze zbioru uczącego A B X 5 T 7 T 5 T 5 F 2 7 F Tutaj jest więcej obiektów klasy T, więc klasyfikator ZeroR będzie zawsze odpowiadał T niezależnie

Bardziej szczegółowo

Ewelina Dziura Krzysztof Maryański

Ewelina Dziura Krzysztof Maryański Ewelina Dziura Krzysztof Maryański 1. Wstęp - eksploracja danych 2. Proces Eksploracji danych 3. Reguły asocjacyjne budowa, zastosowanie, pozyskiwanie 4. Algorytm Apriori i jego modyfikacje 5. Przykład

Bardziej szczegółowo

1. Odkrywanie asocjacji

1. Odkrywanie asocjacji 1. 2. Odkrywanie asocjacji...1 Algorytmy...1 1. A priori...1 2. Algorytm FP-Growth...2 3. Wykorzystanie narzędzi Oracle Data Miner i Rapid Miner do odkrywania reguł asocjacyjnych...2 3.1. Odkrywanie reguł

Bardziej szczegółowo

Algorytmy i Struktury Danych

Algorytmy i Struktury Danych Algorytmy i Struktury Danych Kopce Bożena Woźna-Szcześniak bwozna@gmail.com Jan Długosz University, Poland Wykład 11 Bożena Woźna-Szcześniak (AJD) Algorytmy i Struktury Danych Wykład 11 1 / 69 Plan wykładu

Bardziej szczegółowo

Odkrywanie asocjacji

Odkrywanie asocjacji Odkrywanie asocjacji Cel odkrywania asocjacji Znalezienie interesujących zależności lub korelacji, tzw. asocjacji Analiza dużych zbiorów danych Wynik procesu: zbiór reguł asocjacyjnych Witold Andrzejewski,

Bardziej szczegółowo

Klasyfikator liniowy Wstęp Klasyfikator liniowy jest najprostszym możliwym klasyfikatorem. Zakłada on liniową separację liniowy podział dwóch klas między sobą. Przedstawia to poniższy rysunek: 5 4 3 2

Bardziej szczegółowo

Data Mining Wykład 6. Naiwny klasyfikator Bayes a Maszyna wektorów nośnych (SVM) Naiwny klasyfikator Bayesa.

Data Mining Wykład 6. Naiwny klasyfikator Bayes a Maszyna wektorów nośnych (SVM) Naiwny klasyfikator Bayesa. GLM (Generalized Linear Models) Data Mining Wykład 6 Naiwny klasyfikator Bayes a Maszyna wektorów nośnych (SVM) Naiwny klasyfikator Bayesa Naiwny klasyfikator Bayesa jest klasyfikatorem statystycznym -

Bardziej szczegółowo

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

Wyk lad 7: Drzewa decyzyjne dla dużych zbiorów danych Wyk lad 7: Drzewa decyzyjne dla dużych zbiorów danych 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:

Bardziej szczegółowo

Wprowadzenie do klasyfikacji

Wprowadzenie do klasyfikacji Wprowadzenie do klasyfikacji 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 Tutaj jest więcej obiektów klasy T, więc klasyfikator

Bardziej szczegółowo

prowadzący dr ADRIAN HORZYK /~horzyk e-mail: horzyk@agh tel.: 012-617 Konsultacje paw. D-13/325

prowadzący dr ADRIAN HORZYK /~horzyk e-mail: horzyk@agh tel.: 012-617 Konsultacje paw. D-13/325 PODSTAWY INFORMATYKI WYKŁAD 8. prowadzący dr ADRIAN HORZYK http://home home.agh.edu.pl/~ /~horzyk e-mail: horzyk@agh agh.edu.pl tel.: 012-617 617-4319 Konsultacje paw. D-13/325 DRZEWA Drzewa to rodzaj

Bardziej szczegółowo

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

Konkurs z przedmiotu eksploracja i analiza danych: problem regresji i klasyfikacji Konkurs z przedmiotu eksploracja i analiza danych: problem regresji i klasyfikacji Michał Witczak Data Mining 20 maja 2012 r. 1. Wstęp Dostarczone zostały nam 4 pliki, z których dwa stanowiły zbiory uczące

Bardziej szczegółowo

Hierarchiczna analiza skupień

Hierarchiczna analiza skupień Hierarchiczna analiza skupień Cel analizy Analiza skupień ma na celu wykrycie w zbiorze obserwacji klastrów, czyli rozłącznych podzbiorów obserwacji, wewnątrz których obserwacje są sobie w jakimś określonym

Bardziej szczegółowo

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

< K (2) = ( Adams, John ), P (2) = adres bloku 2 > < K (1) = ( Aaron, Ed ), P (1) = adres bloku 1 > Typy indeksów Indeks jest zakładany na atrybucie relacji atrybucie indeksowym (ang. indexing field). Indeks zawiera wartości atrybutu indeksowego wraz ze wskaźnikami do wszystkich bloków dyskowych zawierających

Bardziej szczegółowo

Optymalizacja systemów

Optymalizacja systemów Optymalizacja systemów Laboratorium - problem detekcji twarzy autorzy: A. Gonczarek, J.M. Tomczak, S. Zaręba, P. Klukowski Cel zadania Celem zadania jest zapoznanie się z gradientowymi algorytmami optymalizacji

Bardziej szczegółowo

Systemy uczące się wykład 2

Systemy uczące się wykład 2 Systemy uczące się wykład 2 dr Przemysław Juszczuk Katedra Inżynierii Wiedzy, Uniwersytet Ekonomiczny 19 X 2018 Podstawowe definicje Fakt; Przesłanka; Konkluzja; Reguła; Wnioskowanie. Typy wnioskowania

Bardziej szczegółowo

Modelowanie motywów łańcuchami Markowa wyższego rzędu

Modelowanie motywów łańcuchami Markowa wyższego rzędu Modelowanie motywów łańcuchami Markowa wyższego rzędu Uniwersytet Warszawski Wydział Matematyki, Informatyki i Mechaniki 23 października 2008 roku Plan prezentacji 1 Źródła 2 Motywy i ich znaczenie Łańcuchy

Bardziej szczegółowo

Aproksymacja funkcji a regresja symboliczna

Aproksymacja funkcji a regresja symboliczna Aproksymacja funkcji a regresja symboliczna Problem aproksymacji funkcji polega na tym, że funkcję F(x), znaną lub określoną tablicą wartości, należy zastąpić inną funkcją, f(x), zwaną funkcją aproksymującą

Bardziej szczegółowo

Zofia Kruczkiewicz, Algorytmu i struktury danych, Wykład 14, 1

Zofia Kruczkiewicz, Algorytmu i struktury danych, Wykład 14, 1 Wykład Algorytmy grafowe metoda zachłanna. Właściwości algorytmu zachłannego:. W przeciwieństwie do metody programowania dynamicznego nie występuje etap dzielenia na mniejsze realizacje z wykorzystaniem

Bardziej szczegółowo

Sztuczna Inteligencja Projekt

Sztuczna Inteligencja Projekt Sztuczna Inteligencja Projekt Temat: Algorytm F-LEM1 Liczba osób realizujących projekt: 2 1. Zaimplementować algorytm F LEM 1. 2. Zaimplementować klasyfikator Classif ier. 3. Za pomocą algorytmu F LEM1

Bardziej szczegółowo

Eksploracja danych. Grupowanie. Wprowadzanie Definicja problemu Klasyfikacja metod grupowania Grupowanie hierarchiczne. Grupowanie wykład 1

Eksploracja danych. Grupowanie. Wprowadzanie Definicja problemu Klasyfikacja metod grupowania Grupowanie hierarchiczne. Grupowanie wykład 1 Grupowanie Wprowadzanie Definicja problemu Klasyfikacja metod grupowania Grupowanie hierarchiczne Grupowanie wykład 1 Sformułowanie problemu Dany jest zbiór obiektów (rekordów). Znajdź naturalne pogrupowanie

Bardziej szczegółowo

Algorytmy Równoległe i Rozproszone Część V - Model PRAM II

Algorytmy Równoległe i Rozproszone Część V - Model PRAM II Algorytmy Równoległe i Rozproszone Część V - Model PRAM II Łukasz Kuszner pokój 209, WETI http://www.sphere.pl/ kuszner/ kuszner@sphere.pl Oficjalna strona wykładu http://www.sphere.pl/ kuszner/arir/ 2005/06

Bardziej szczegółowo

Identyfikacja istotnych atrybutów za pomocą Baysowskich miar konfirmacji

Identyfikacja istotnych atrybutów za pomocą Baysowskich miar konfirmacji Identyfikacja istotnych atrybutów za pomocą Baysowskich miar konfirmacji Jacek Szcześniak Jerzy Błaszczyński Roman Słowiński Poznań, 5.XI.2013r. Konspekt Wstęp Wprowadzenie Metody typu wrapper Nowe metody

Bardziej szczegółowo

Laboratorium 6. Indukcja drzew decyzyjnych.

Laboratorium 6. Indukcja drzew decyzyjnych. Laboratorium 6 Indukcja drzew decyzyjnych. 1. Uruchom narzędzie Oracle Data Miner i połącz się z serwerem bazy danych. 2. Z menu głównego wybierz Activity Build. Na ekranie powitalnym kliknij przycisk

Bardziej szczegółowo

Drzewa klasyfikacyjne algorytm podstawowy

Drzewa klasyfikacyjne algorytm podstawowy 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żą

Bardziej szczegółowo

Temat: Algorytmy zachłanne

Temat: Algorytmy zachłanne Temat: Algorytmy zachłanne Algorytm zachłanny ( ang. greedy algorithm) wykonuje zawsze działanie, które wydaje się w danej chwili najkorzystniejsze. Wybiera zatem lokalnie optymalną możliwość w nadziei,

Bardziej szczegółowo

A Zadanie

A Zadanie where a, b, and c are binary (boolean) attributes. A Zadanie 1 2 3 4 5 6 7 8 9 10 Punkty a (maks) (2) (2) (2) (2) (4) F(6) (8) T (8) (12) (12) (40) Nazwisko i Imiȩ: c Uwaga: ta część zostanie wypełniona

Bardziej szczegółowo

Klasyfikator. ˆp(k x) = 1 K. I(ρ(x,x i ) ρ(x,x (K) ))I(y i =k),k =1,...,L,

Klasyfikator. ˆp(k x) = 1 K. I(ρ(x,x i ) ρ(x,x (K) ))I(y i =k),k =1,...,L, Klasyfikator Jedną z najistotniejszych nieparametrycznych metod klasyfikacji jest metoda K-najbliższych sąsiadów, oznaczana przez K-NN. W metodzie tej zaliczamy rozpoznawany obiekt do tej klasy, do której

Bardziej szczegółowo

Algorytmy metaheurystyczne Wykład 11. Piotr Syga

Algorytmy metaheurystyczne Wykład 11. Piotr Syga Algorytmy metaheurystyczne Wykład 11 Piotr Syga 22.05.2017 Drzewa decyzyjne Idea Cel Na podstawie przesłanek (typowo zbiory rozmyte) oraz zbioru wartości w danych testowych, w oparciu o wybrane miary,

Bardziej szczegółowo

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

Drzewa spinające MST dla grafów ważonych Maksymalne drzewo spinające Drzewo Steinera. Wykład 6. Drzewa cz. II Wykład 6. Drzewa cz. II 1 / 65 drzewa spinające Drzewa spinające Zliczanie drzew spinających Drzewo T nazywamy drzewem rozpinającym (spinającym) (lub dendrytem) spójnego grafu G, jeżeli jest podgrafem

Bardziej szczegółowo

Metody Eksploracji Danych. Klasyfikacja

Metody Eksploracji Danych. Klasyfikacja Metody Eksploracji Danych Klasyfikacja w wykładzie wykorzystano: 1. materiały dydaktyczne przygotowane w ramach projektu Opracowanie programów nauczania na odległość na kierunku studiów wyższych Informatyka

Bardziej szczegółowo

INDUKCJA DRZEW DECYZYJNYCH

INDUKCJA DRZEW DECYZYJNYCH INDUKCJA DRZEW DECYZYJNYCH 1. Pojęcia podstawowe. 2. Idea algorytmów TDIT. 3. Kryteria oceny atrybutów entropia. 4. "Klasyczna" postać algorytmu ID3. 5. Przykład ilustracyjny. 6. Transformacja drzewa do

Bardziej szczegółowo

Testowanie modeli predykcyjnych

Testowanie modeli predykcyjnych Testowanie modeli predykcyjnych Wstęp Podczas budowy modelu, którego celem jest przewidywanie pewnych wartości na podstawie zbioru danych uczących poważnym problemem jest ocena jakości uczenia i zdolności

Bardziej szczegółowo

Metody systemowe i decyzyjne w informatyce

Metody systemowe i decyzyjne w informatyce Metody systemowe i decyzyjne w informatyce Laboratorium MATLAB Zadanie nr 2 Detekcja twarzy autorzy: A. Gonczarek, J.M. Tomczak Cel zadania Celem zadania jest zapoznanie się algorytmem gradientu prostego

Bardziej szczegółowo

Poprawność semantyczna

Poprawność semantyczna Poprawność składniowa Poprawność semantyczna Poprawność algorytmu Wypisywanie zdań z języka poprawnych składniowo Poprawne wartościowanie zdań języka, np. w języku programowania skutki wystąpienia wyróżnionych

Bardziej szczegółowo

Wstęp do sieci neuronowych, wykład 12 Łańcuchy Markowa

Wstęp do sieci neuronowych, wykład 12 Łańcuchy Markowa Wstęp do sieci neuronowych, wykład 12 Łańcuchy Markowa M. Czoków, J. Piersa 2012-01-10 1 Łańcucha Markowa 2 Istnienie Szukanie stanu stacjonarnego 3 1 Łańcucha Markowa 2 Istnienie Szukanie stanu stacjonarnego

Bardziej szczegółowo

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa. Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa. Maja Czoków, Jarosław Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2011-10-11 1 Modelowanie funkcji logicznych

Bardziej szczegółowo

Drzewa decyzyjne. 1. Wprowadzenie.

Drzewa decyzyjne. 1. Wprowadzenie. Drzewa decyzyjne. 1. Wprowadzenie. Drzewa decyzyjne są graficzną metodą wspomagania procesu decyzyjnego. Jest to jedna z najczęściej wykorzystywanych technik analizy danych. Drzewo składają się z korzenia

Bardziej szczegółowo

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa. Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa. Maja Czoków, Jarosław Piersa, Andrzej Rutkowski Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika 2018-10-15 Projekt

Bardziej szczegółowo

Drzewa Decyzyjne, cz.2

Drzewa Decyzyjne, cz.2 Drzewa Decyzyjne, cz.2 Inteligentne Systemy Decyzyjne Katedra Systemów Multimedialnych WETI, PG Opracowanie: dr inŝ. Piotr Szczuko Podsumowanie poprzedniego wykładu Cel: przewidywanie wyniku (określania

Bardziej szczegółowo

Klasyfikacja metodą Bayesa

Klasyfikacja metodą Bayesa Klasyfikacja metodą Bayesa Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski warunkowe i bezwarunkowe 1. Klasyfikacja Bayesowska jest klasyfikacją statystyczną. Pozwala przewidzieć prawdopodobieństwo

Bardziej szczegółowo

Wprowadzenie. Data Science Uczenie się pod nadzorem

Wprowadzenie. Data Science Uczenie się pod nadzorem Wprowadzenie Wprowadzenie Wprowadzenie Wprowadzenie Machine Learning Mind Map Historia Wstęp lub uczenie się z przykładów jest procesem budowy, na bazie dostępnych danych wejściowych X i oraz wyjściowych

Bardziej szczegółowo

Metody indukcji reguł

Metody indukcji reguł Metody indukcji reguł Indukcja reguł Grupa metod charakteryzująca się wydobywaniem reguł ostrych na podstawie analizy przypadków. Dane doświadczalne składają się z dwóch części: 1) wejściowych X, gdzie

Bardziej szczegółowo

Wstęp do Sztucznej Inteligencji

Wstęp do Sztucznej Inteligencji Wstęp do Sztucznej Inteligencji Rozwiązywanie problemów-i Joanna Kołodziej Politechnika Krakowska Wydział Fizyki, Matematyki i Informatyki Rozwiązywanie problemów Podstawowe fazy: Sformułowanie celu -

Bardziej szczegółowo

Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski

Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski : idea Indeksowanie: Drzewo decyzyjne, przeszukiwania binarnego: F = {5, 7, 10, 12, 13, 15, 17, 30, 34, 35, 37, 40, 45, 50, 60} 30 12 40 7 15 35 50 Tadeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski

Bardziej szczegółowo

1.7. Eksploracja danych: pogłębianie, przeszukiwanie i wyławianie

1.7. Eksploracja danych: pogłębianie, przeszukiwanie i wyławianie Wykaz tabel Wykaz rysunków Przedmowa 1. Wprowadzenie 1.1. Wprowadzenie do eksploracji danych 1.2. Natura zbiorów danych 1.3. Rodzaje struktur: modele i wzorce 1.4. Zadania eksploracji danych 1.5. Komponenty

Bardziej szczegółowo

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

Przykład eksploracji danych o naturze statystycznej Próba 1 wartości zmiennej losowej odległość Dwie metody Klasyczna metoda histogramu jako narzędzie do postawienia hipotezy, jaki rozkład prawdopodobieństwa pasuje do danych Indukcja drzewa decyzyjnego jako metoda wykrycia klasyfikatora ukrytego

Bardziej szczegółowo

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych.

w analizie wyników badań eksperymentalnych, w problemach modelowania zjawisk fizycznych, w analizie obserwacji statystycznych. Aproksymacja funkcji a regresja symboliczna Problem aproksymacji funkcji polega na tym, że funkcję F(), znaną lub określoną tablicą wartości, należy zastąpić inną funkcją, f(), zwaną funkcją aproksymującą

Bardziej szczegółowo

Optymalizacja ciągła

Optymalizacja ciągła Optymalizacja ciągła 5. Metoda stochastycznego spadku wzdłuż gradientu Wojciech Kotłowski Instytut Informatyki PP http://www.cs.put.poznan.pl/wkotlowski/ 04.04.2019 1 / 20 Wprowadzenie Minimalizacja różniczkowalnej

Bardziej szczegółowo

ED Laboratorium 3. Drzewa decyzyjne

ED Laboratorium 3. Drzewa decyzyjne ED Laboratorium Drzewa decyzyjne 1 Drzewa decyzyjne Algorytmy indukcji drzew decyzyjnych to jeden z klasycznych algorytmów uczenia maszynowego służący do rozwiązywania problemu klasyfikacji. Drzewa decyzyjne

Bardziej szczegółowo

2012-01-16 PLAN WYKŁADU BAZY DANYCH INDEKSY - DEFINICJE. Indeksy jednopoziomowe Indeksy wielopoziomowe Indeksy z użyciem B-drzew i B + -drzew

2012-01-16 PLAN WYKŁADU BAZY DANYCH INDEKSY - DEFINICJE. Indeksy jednopoziomowe Indeksy wielopoziomowe Indeksy z użyciem B-drzew i B + -drzew 0-0-6 PLAN WYKŁADU Indeksy jednopoziomowe Indeksy wielopoziomowe Indeksy z użyciem B-drzew i B + -drzew BAZY DANYCH Wykład 9 dr inż. Agnieszka Bołtuć INDEKSY - DEFINICJE Indeksy to pomocnicze struktury

Bardziej szczegółowo

Wprowadzenie do uczenia maszynowego

Wprowadzenie do uczenia maszynowego Wprowadzenie do uczenia maszynowego Agnieszka Ławrynowicz 12 stycznia 2017 Co to jest uczenie maszynowe? dziedzina nauki, która zajmuje się sprawianiem aby komputery mogły uczyć się bez ich zaprogramowania

Bardziej szczegółowo

Spacery losowe generowanie realizacji procesu losowego

Spacery losowe generowanie realizacji procesu losowego Spacery losowe generowanie realizacji procesu losowego Michał Krzemiński Streszczenie Omówimy metodę generowania trajektorii spacerów losowych (błądzenia losowego), tj. szczególnych procesów Markowa z

Bardziej szczegółowo

Algorytmy i struktury danych. Co dziś? Tytułem przypomnienia metoda dziel i zwyciężaj. Wykład VIII Elementarne techniki algorytmiczne

Algorytmy i struktury danych. Co dziś? Tytułem przypomnienia metoda dziel i zwyciężaj. Wykład VIII Elementarne techniki algorytmiczne Algorytmy i struktury danych Wykład VIII Elementarne techniki algorytmiczne Co dziś? Algorytmy zachłanne (greedyalgorithms) 2 Tytułem przypomnienia metoda dziel i zwyciężaj. Problem można podzielić na

Bardziej szczegółowo

Laboratorium 4. Naiwny klasyfikator Bayesa.

Laboratorium 4. Naiwny klasyfikator Bayesa. Laboratorium 4 Naiwny klasyfikator Bayesa. 1. Uruchom narzędzie Oracle Data Miner i połącz się z serwerem bazy danych. 2. Z menu głównego wybierz Activity Build. Na ekranie powitalnym kliknij przycisk

Bardziej szczegółowo

Przykładowe B+ drzewo

Przykładowe B+ drzewo Przykładowe B+ drzewo 3 8 1 3 7 8 12 Jak obliczyć rząd indeksu p Dane: rozmiar klucza V, rozmiar wskaźnika do bloku P, rozmiar bloku B, liczba rekordów w indeksowanym pliku danych r i liczba bloków pliku

Bardziej szczegółowo