Drzewa decyzyjne 2009 id 143623 Nieznany

background image

Drzewa decyzyjne

marcin.mazurek@wat.edu.pl 2009

background image

Klasyfikacja



Czynność podziału zbioru na podzbiory
nazwane klasami. Podziałem zbioru X nazywa
się każdy zupełny i rozłączny układ podzbiorów
tego zbioru.



W wyniku klasyfikacji określamy nieznaną
wartość pewnego atrybutu obiektu,

wartość pewnego atrybutu obiektu,
przyjmującego skończoną liczbę wartości.

background image

Drzewo decyzyjne



Drzewo decyzyjne jest
to drzewo, w którym:



węzły nie będące liśćmi
odpowiadają atrybutom



gałęzie wychodzące z
takiego węzła odpowiadają

takiego węzła odpowiadają
wartościom tego atrybutu.



liście odpowiadają
wartościom zmiennej
decyzyjnej (atrybutu
klasyfikującego)

background image

Zasady konstrukcji drzewa decyzyjnego

1.

Punktem wyjścia jest korzeń drzewa, któremu odpowiada ciąg uczący T, w którym
znajdują się obserwacje, z których każda opisane jest atrybutami i zaklasyfikowana
jest do jednej z klas na podstawie pewnego wyróżnionego atrybutu (zmiennej
klasyfikującej, decyzyjnej).

2.

Konstrukcja drzewa opiera się na następującej procedurze powtarzanej
rekurencyjnie dla każdego węzła począwszy od korzenia:

Ciąg danych uczących T zawierający przynajmniej jeden element, przy czym
wszystkie elementy należą do tej samej klasy C

j.

Drzewo decyzyjne dla T jest

liściem wskazującym na kategorię C

j.

liściem wskazującym na kategorię C

j.

Ciąg uczący T nie zawiera żadnych elementów – podobnie jak w punkcie
poprzednim, drzewo dla T jest liściem jednak związany jest z klasą wyznaczoną
na podstawie poprzednika

T zawiera elementy należące do różnych klas. Podział T na takie podzbiory, by
wszystkie elementy w ramach podzbioru należały do tej samej klasy (podzbiory
powinny być możliwie jednorodne). W oparciu o pojedynczy wybrany atrybut,
przeprowadzany jest test, który powoduje podział na rozłączne podzbiory.
Drzewo decyzyjne dla T jest węzłem zawierającym test i jedną gałąź dla każdego
wyniku testu.

3.

Po zakończeniu procedury generowania węzłów drzewa, może opcjonalnie nastąpić
przycinanie drzewa (zastąpienie całego poddrzewa pojedynczym liściem).

background image

Algorytmy budowy drzew



Elementy algorytmów budowania drzewa decyzyjnego:



kryterium wyboru atrybutu używanego jako test w węźle drzewa



wyznaczenie wartości atrybutów dla gałęzi wychodzących z

węzła (rząd drzewa)



Przykładowe algorytmy



ID3 (Quinlan)



C4.5 (Quinlan) rozszerzenie ID3 o brakujące wartości, atrybuty

ciągłe, obcinanie drzewa)



CART (Classification And Regression Trees) – drzewo binarne.



CHAID (Chi-squared Automatic Interaction Detector, 1980),

background image

Wybór atrybutu testowego dla węzła

T – zbiór uczący, w którym każda obserwacja zaklasyfikowana jest według wartości atrybutu C do
jednej z k klas {C

1

, C

2

... C

k

}


Entropia zbioru S:

T

T

C

freq

T

T

C

freq

T

Info

i

k

i

i

)

,

(

log

)

,

(

)

(

1

2

=

=


T

1

, T

2

...T

n

- rozłączne podzbiory zbioru T, utworzone na podstawie pewnego testu t. Test jest

oparty o wartości atrybutu X.

Entropia zbioru przykładów ze względu na wynik r testu t jest definiowana jako ważona entropia
dla poszczególnych wyników testu:

=

=

n

r

i

r

x

T

Info

T

T

T

Info

1

)

(

)

(

,


Przyrost informacji wynikający z zastosowania testu opartego na wartościach atrybutu X do zbioru
przykładów:

Gain(X) = Info(T) - Info

x

(T)


Jako podstawę podziału zbioru obserwacji w węźle wybieramy ten atrybut, dla którego Gain(X)
jest maksymalne.

background image

Inne kryteria wyboru testu

Kryterium przyrostu informacji - tendencja do nieuzasadnionego preferowania testów o wielu
możliwych wynikach.

Współczynnik przyrostu informacji:

T

T

T

T

T

Info

Split

i

n

i

=

2

log

)

(

_

T

T

i

=1

2

Wartość mierzy równomierność, z jaką test t dzieli zbiór uczący na podzbiory. Jest ona duża jeśli
rozmiary podzbiorów wyznaczonych przez różne wyniki testu są zbliżone i maleje przy wyraźnej
przewadze niektórych podzbiorów nad innymi.

)

(

_

)

(

)

(

_

X

Split

X

Gain

X

ratio

Gain

Info

=

background image

Algorytm Id3

background image

Podział – atrybuty ciągłe



Zbiór wartości, które przyjmuje atrybut sortujemy
{v

1

, v

2

,… v

k

}



Rozważamy wszystkie (k-1) potencjalnych punktów
podziału: {v

1

, v

2

,… v

i

} {v

i+1

, v

i+2

,… v

k

}



Wybieramy tą wartość podziału Z, dla którego kryterium
przyrostu informacji jest największe. Gałęzie opisane są
nie pojedynczymi wartościami atrybutu, lecz podzbiorami
wartości, wyznaczonymi przez punkt podziału Z.

background image

Przykład



Zbudować drzewo decyzyjne dla
wyznaczania wartości atrybutu C w
oparciu o wartości atrybutów A1, A2.



Ciąg uczący:

A1

A2

C

Y

1

C2

Y

2

C1

N

2

C2

N

2

C2

N

2

C1

background image

A1

A2

C

Y

1

C2

Y

2

C1

N

2

C2

N

2

C2

N

2

C1

A1

A2

C

Y

1

C2

Y

2

C1

N

2

C2

N

2

C2

N

2

C1

A1

A1

A1

A2

A2

A2

C

C

C

Y

Y

1

1

C2

C2

Y

Y

2

2

C1

C1

N

N

2

2

C2

C2

N

N

2

2

C2

C2

N

N

2

2

C1

C1

N = 5
C1 2 (40%)
C2 3 (60%)

97

,

0

)

74

,

0

(

5

3

)

32

,

1

(

5

2

5

3

log

5

3

5

2

log

5

2

)

(

2

2

=

=

=

T

Info

94

,

0

91

,

0

5

3

1

5

2

)

(

91

,

0

)

59

,

1

(

3

1

)

59

,

0

(

3

2

3

1

log

3

1

3

2

log

3

2

)

(

1

2

1

log

2

1

2

1

log

2

1

)

(

)

(

5

3

)

(

5

2

)

(

1

2

2

'

'

1

2

2

'

'

1

'

'

1

'

'

1

1

=

+

=

=

=

=

=

=

+

=

=

=

=

=

T

Info

T

Info

T

Info

T

Info

T

Info

T

Info

A

N

A

Y

A

N

A

Y

A

A

0,03

0,94

-

0,97

Gain(A1)

5

5

=

=

0,18

0,8

-

0,97

Gain(A2)

8

,

0

1

5

4

0

5

1

)

(

0

)

(

1

2

1

log

2

1

2

1

log

2

1

)

(

)

(

5

4

)

(

5

1

)

(

2

1

2

2

2

2

2

2

2

1

2

2

=

=

=

+

=

=

=

=

+

=

=

=

=

=

T

Info

T

Info

T

Info

T

Info

T

Info

T

Info

A

A

A

A

A

A


Podział następuje ze względu na A2, gdyż Gain(A2) > Gain(A1)

background image

A1

A2

C

Y

1

C2

Y

2

C1

N

2

C2

N

2

C2

N

2

C1

A1

A2

C

Y

1

C2

Y

2

C1

N

2

C2

N

2

C2

N

2

C1

A1

A1

A1

A2

A2

A2

C

C

C

Y

Y

1

1

C2

C2

Y

Y

2

2

C1

C1

N

N

2

2

C2

C2

N

N

2

2

C2

C2

N

N

2

2

C1

C1

N = 5
C1 2 (40%)
C2 3 (60%)

A2

N = 4
C1 2 (50%)
C2 2 (50%)

A2=2

A2=1

N = 1
C1 0 (0%)
C2 1 (100%)

A1

A2

C

Y

2

C1

N

2

C2

N

2

C2

N

2

C1

A1

A2

C

Y

1

C2

background image

A1

A2

C

Y

2

C1

N

2

C2

N

2

C2

N

2

C1

1

2

1

log

2

1

2

1

log

2

1

)

(

2

2

=

=

T

Info

68

,

0

91

,

0

4

3

0

)

(

91

,

0

)

59

,

1

(

3

1

)

59

,

0

(

3

2

3

1

log

3

1

3

2

log

3

2

)

(

0

)

(

)

(

4

3

)

(

4

1

)

(

1

2

2

'

'

1

'

'

1

'

'

1

'

'

1

1

=

+

=

=

=

=

=

+

=

=

=

=

=

T

Info

T

Info

T

Info

T

Info

T

Info

T

Info

A

N

A

Y

A

N

A

Y

A

A

0,32

0,68

-

1

Gain(A1)

4

=

=

0

1

-

1

Gain(A2)

1

)

(

1

2

1

log

2

1

2

1

log

2

1

)

(

)

(

0

)

(

4

4

)

(

2

2

2

2

2

2

2

2

2

2

=

=

=

=

=

+

=

=

=

=

T

Info

T

Info

T

Info

T

Info

T

Info

A

A

A

A

A


Podział następuje ze względu na A1, gdyż Gain(A1) > Gain(A2)

background image

A1

A2

C

Y

1

C2

Y

2

C1

N

2

C2

N

2

C2

N

2

C1

A1

A2

C

Y

1

C2

Y

2

C1

N

2

C2

N

2

C2

N

2

C1

A1

A1

A1

A2

A2

A2

C

C

C

Y

Y

1

1

C2

C2

Y

Y

2

2

C1

C1

N

N

2

2

C2

C2

N

N

2

2

C2

C2

N

N

2

2

C1

C1

N = 5
C1 2 (40%)
C2 3 (60%)

A2

A2=2

A2=1

A1

A2

C

Y

2

C1

N

2

C2

N

2

C2

A1

A2

C

Y

1

C2

N = 4
C1 2 (50% )
C2 2 (50% )

N = 1
C1 0 (0% )
C2 1 (100% )

N

2

C1

N = 1
C1 1 (100% )
C2 0 (0% )

A1

A1=Y

A1=N

N = 3
C1 1 (33% )
C2 2 (67% )

A1

A2

C

N

2

C2

N

2

C2

N

2

C1

A1

A2

C

Y

2

C1

background image

Błędy klasyfikacji



Błąd klasyfikacji – liczba błędnie zaklasyfikowanych obserwacji
w stosunku do liczności próby

0,2

0,25

0,3

B

łą

d

k

la

sy

fi

k

a

cj

i

0

0,05

0,1

0,15

1

2

3

4

5

6

7

8

9

10

11

B

łą

d

k

la

sy

fi

k

a

cj

i

Liczba liści drzewa klasyfikacyjnego

Próba ucząca (ciąg trenujący)

Próba testowa (ciąg walidujący)

background image

Przycinanie drzewa (prunning)



Obcinanie polega na zastąpieniu poddrzewa liściem, którym przypisuje się
etykietę kategorii najczęściej występującej wśród związanych z nim
przykładów.



Nadmierne dopasowanie do danych trenujących (overfitted) – duży błąd dla
danych spoza ciągu uczącego



Zbudowane drzewo ma zbyt dużą wysokość (niedopuszczalna złożoność
procedury klasyfikującej)



Począwszy od dołu drzewa, dla każdego poddrzewa nie będącego liściem:



Obcinamy, jeżeli zastąpienie poddrzewa liściem z przypisaną kategorią
reprezentowaną przez potomka o największej liczności zmniejsza błąd.



Obcinamy, jeżeli zastąpienie poddrzewa liściem z przypisaną kategorią
reprezentowaną przez potomka o największej liczności zmniejsza błąd.
Modyfikacja błędów dla rodziców.



Estymacja błędu klasyfikacji:



Szacowanie na podstawie błędu próbki na oddzielnym zbiorze przycinania,
złożonym z przykładów spoza zbioru trenującego.



Szacowanie na podstawie błędu próbki na zbiorze trenującym.

background image

Zadanie



Na podstawie zbioru danych
treningowych ( ciągu
uczącego)



Znaleźć wartość podziału dla
atrybutu A



Znaleźć wartość podziału dla
atrybutu B



Zbudować drzewo decyzyjne



Jaki jest proporcja błędnych
klasyfikacji dla ciągu

Jaki jest proporcja błędnych
klasyfikacji dla ciągu
testowego ?

background image

Literatura



Paweł Cichosz „Systemy uczące się” WNT 2000



Hand David, Mannila Heikki, Smyth Padhraic „Eksploracja
danych”, WNT 2005



Daniel T.Larose „Odkrywanie wiedzy z danych.
Wprowadzenie do eksploracji danych” Wydawnictwo
Naukowe PWN 2006

Naukowe PWN 2006


Wyszukiwarka

Podobne podstrony:
CAD ZADANIA 1 2009 id 107691 Nieznany
LCCI Level 1 rok 2009 id 263960 Nieznany
objpit 37 2009 id 327255 Nieznany
Matura 2009 id 288649 Nieznany
5 11 2009 id 39469 Nieznany (2)
INFO za LIPIEC 2009 id 213304 Nieznany
INFO za STYCZEN 2009 id 213308 Nieznany
FP 4 konsp 2009 id 33457 Nieznany
Nowosci3 2009 id 323367 Nieznany
INFO za KWIECIEN 2009 id 213303 Nieznany
Nowosci1 2009 id 323366 Nieznany
Etap wojewodzki 2008 2009 id 16 Nieznany
Lab 6 7 2008 2009 id 258170 Nieznany
DMD Treatment Review 2009 id 13 Nieznany
Egz dzienne 09 2009 id 151170 Nieznany

więcej podobnych podstron