background image

(c) T. Pankowski,  Drzewa 

decyzyjne

1

Tadeusz Pankowski

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

Klasyfikacja obiekt

Klasyfikacja obiekt

ó

ó

Drzewa decyzyjne

Drzewa decyzyjne

(c) T. Pankowski,  Drzewa 

decyzyjne

2

Klasyfikacja i predykcja

Klasyfikacja i predykcja

1. Odkrywaniem 

reguł klasyfikacji

nazywamy proces 

znajdowania modeli (lub funkcji) klasyfikacji 

umożliwiających określenie klasy, do której powinien 

należeć wskazany obiekt.

2. Model klasyfikacji budowany jest w wyniku analizy zbioru 

danych treningowych

, tj. zbioru obiektów o znanej 

przynależności klasowej.

3. Model klasyfikacji może być reprezentowany za pomocą:

• reguł o postaci IF_THEN,
• drzew decyzyjnych,
• sieci neuronowych,
• innych ...

(c) T. Pankowski,  Drzewa 

decyzyjne

3

Klasyfikacja i predykcja

Klasyfikacja i predykcja

1. Klasyfikacja danych jest procesem dwuetapowym.

2. W pierwszym kroku budowany jest model (np. relacyjny) 

opisujący zadany zbiór danych (treningowy zbiór 

danych) składający się ze zbioru obiektów (krotek) 

opisanych za pomocą atrybutów.

3. Jeden z atrybutów jest 

atrybutem klasyfikującym 

(predykcyjnym)

i jego wartości określają

etykiety klas

do których należą obiekty.

4. Obiekty tworzące zbiór treningowy wybierane są losowo 

z pewnej populacji.

5. Ten etap klasyfikacji nazywany jest też

uczeniem z 

nadzorem

, gdyż podana jest klasyfikacja każdego 

obiektu (przykładem nauczania bez nadzoru jest 

tworzenie skupień, 

clustering

)

(c) T. Pankowski,  Drzewa 

decyzyjne

4

Klasyfikacja i predykcja (c.d.)

Klasyfikacja i predykcja (c.d.)

1.

Utworzony model klasyfikacji reprezentowany jest w postaci:

reguł klasyfikacji,
drzew decyzyjnych,
formuł matematycznych.

2.

Przykład: mając bazę danych z informacjami o osobach (wiek, 

wykształcenie, dochód, pochodzenie społeczne) można utworzyć

reguły klasyfikacyjne istotne dla biur turystycznych (tzn. reguły 

określające, w jakiego rodzaju wycieczkach osoby te byłyby skłonne 

uczestniczyć). 

3.

Podstawą utworzenia tych reguł jest analiza dotychczas znanych 

przypadków opisujących zachowanie się klientów. Przypadki te 

tworzą zbiór treningowy (uczący).

4.

Reguły mogą być wykorzystane do klasyfikacji przyszłych 

przypadków, jak również do lepszego zrozumienia zawartości bazy 

danych. 

background image

(c) T. Pankowski,  Drzewa 

decyzyjne

5

Klasyfikacja i predykcja (c.d.)

Klasyfikacja i predykcja (c.d.)

1.

Utworzony model jest następnie używany do klasyfikacji.

2.

Najpierw oceniana jest dokładność modelu (klasyfikatora). W tym 

celu posługujemy się zbiorem testowym, który wybrany jest 

losowo i jest niezależny od zbioru treningowego.

3.

D

okładność

modelu na zadanym zbiorze testowym określona jest 

przez procentową liczbę trafnych klasyfikacji, tzn. jaki procent 

przypadków testowych został prawidłowo zaklasyfikowany za 

pomocą modelu. Dla każdego przypadku możemy porównać znaną

etykietę klasy z etykietą przypisaną przez model.

4.

Jeśli dokładność modelu została oceniona jako wystarczająca, 

model można użyć do klasyfikacji przyszłych przypadków 

(obiektów) o nieznanej etykiecie klasy.

(c) T. Pankowski,  Drzewa 

decyzyjne

6

Klasyfikacja i predykcja (c.d.)

Klasyfikacja i predykcja (c.d.)

1.

W czym 

predykcja 

różni się od 

klasyfikacji 

?

2.

P

redykcja 

(

przewidywanie

) może być rozumiana jako 

wykorzystanie modelu do oszacowania (obliczenia) wartości 

(lub przedziału wartości), jaką z dużym prawdopodobieństwem 

może mieć atrybut analizowanego obiektu. Wartością tego 

atrybutu może być w szczególności etykieta klasy.

3.

Z tego punktu widzenia 

klasyfikacja

regresja

są dwoma 

głównymi rodzajami problemów predykcyjnych; przy czym 

klasyfikacja jest używana do przewidzenia wartości 

dyskretnych lub nominalnych, a 

regresja

do oszacowania 

wartości ciągłych lub uporządkowanych.

4.

Umowa: 

przewidywanie etykiet klas –

klasyfikacja

,

przewidywanie wartości ciągłych (technikami regresji) –

predykacja

.

(c) T. Pankowski,  Drzewa 

decyzyjne

7

Klasyfikacja i predykcja 

Klasyfikacja i predykcja 

zastosowania

zastosowania

¾ Klasyfikacja i predykcja mają wiele zastosowań, 

na przykład:

akceptacja udzielenia kredytu,
diagnostyka medyczna,
przewidywanie wydajności,
selektywny marketing,
inne

(c) T. Pankowski,  Drzewa 

decyzyjne

8

Klasyfikacja za pomoc

Klasyfikacja za pomoc

ą

ą

drzew 

drzew 

decyzyjnych

decyzyjnych

1. Drzewo decyzyjne jest diagramem przepływu o 

strukturze drzewa, gdzie każdy wierzchołek wewnętrzny 

oznacza 

testowanie

atrybutu, każda krawędź

reprezentuje 

wyjście 

z testu (wartość lub zbiór wartości 

atrybutu), a każdy liść reprezentuje 

klasę

.

2. W celu sklasyfikowania nieznanego obiektu wartości jego 

atrybutów testowane są zgodnie z informacją zawartą w 

drzewie decyzyjnym.

3. W procesie testowania przechodzimy ścieżkę w drzewie 

od korzenia do jednego z liści – w ten sposób określana 

jest klasa, do której zostanie zaklasyfikowany obiekt.

4. Drzewa decyzyjne mogą być łatwo przekształcone w 

reguły klasyfikacyjne.

background image

(c) T. Pankowski,  Drzewa 

decyzyjne

9

Zbi

Zbi

ó

ó

r treningowy danych o klientach

r treningowy danych o klientach

(c) T. Pankowski,  Drzewa 

decyzyjne

10

Budowa drzewa decyzyjnego 

Budowa drzewa decyzyjnego 

pierwszy poziom: atrybut Wiek

pierwszy poziom: atrybut Wiek

(c) T. Pankowski,  Drzewa 

decyzyjne

11

Budowa drzewa decyzyjnego 

Budowa drzewa decyzyjnego 

drugi 

drugi 

poziom: atrybuty Studia i 

poziom: atrybuty Studia i 

OcenaKred

OcenaKred

(c) T. Pankowski,  Drzewa 

decyzyjne

12

Budowa drzewa decyzyjnego 

Budowa drzewa decyzyjnego 

ostateczna 

ostateczna 

posta

posta

ć

ć

background image

(c) T. Pankowski,  Drzewa 

decyzyjne

13

Drzewo decyzyjne 

Drzewo decyzyjne 

inna kolejno

inna kolejno

ść

ść

testowania atrybut

testowania atrybut

ó

ó

w

w

(c) T. Pankowski,  Drzewa 

decyzyjne

14

Drzewa decyzyjne klasyfikuj

Drzewa decyzyjne klasyfikuj

ą

ą

ce dane 

ce dane 

treningowe 

treningowe 

dwa warianty

dwa warianty

(c) T. Pankowski,  Drzewa 

decyzyjne

15

Budowa drzewa decyzyjnego 

Budowa drzewa decyzyjnego 

podstawy teorii informacji 

podstawy teorii informacji 

Charakterystyka zbioru treningowego

S - zbiór złożony z s obiektów (zbiór treningowy), s = 14
m – liczba klas, do których klasyfikowane są obiekty; etykiety klas 

określone są przez atrybut "ZakupKomp", który przyjmuje dwie

wartości: TAK, NIE; m = 2
C

1

- klasa TAK, C

2

- klasa NIE

s

1

- liczba obiektów w C

1

, s

2

- liczba obiektów w C

2

, s

1

= 9, s

2

= 5

p

i

- prawdopodobieństwo, że losowo wybrany obiekt należy do 

klasy C

i

, 0 < p

i

< 1, p

1

+ p

2

=1

E(p

1

, p

2

) - oczekiwana informacja potrzebna do klasyfikacji

danego obiektu (

entropia układu

): 

E(p

1

,... ,p

n

) = – p

1

*log

2

(p

1

) – p

2

log

2

(p

2

), I(9/14, 5/14) = 0.9403

16

Entropia uk

Entropia uk

ł

ł

adu

adu

Niech danych będzie układ złożony z 8 jednoelementowych klas. 

Entropia

tego układu wyraża się wzorem:

Entr(1,1,1,1,1,1,1,1) = log

2

8 = 3

i oznacza średnią

ilość informacji

(

bitów informacji

), jaka jest potrzebna, 

aby zadany element zaklasyfikować do jednej z tych klas. (Argumenty 

funkcji Entr oznaczają liczbę elementów w zbiorach tworzących układ).

{0}    {1}    {2}    {3}    {4}    {5}    {6}    {7} 

>0

>5

>2

>1

>4

>6

>3

1

0

0

0

1

1

0

0

0

0

1

1

1

1

background image

17

Entropia uk

Entropia uk

ł

ł

adu

adu

{0}    {1}    {2}    {3}    {4}    {5}    {6}    {7} 

>0

>5

>2

>1

>4

>6

>3

1

0

0

0

1

1

0

0

0

0

1

1

1

1

Komunikat, że obiekt należy do klasy {i} 

niesie w sobie

(

zawiera, przekazuje

) 3 bity 

informacji. 

Prawdopodobieństwo wyboru klasy {i} wynosi 1/8. 

Zatem średnia ważona (entropia) całego układu, a więc średnia ilość informacji 

(bitów informacji) przekazywana w komunikacie, że obiekt należy do klasy {i} 

jest równa ilości informacji potrzebnej do zaklasyfikowania obiektu do klasy {i} 

wyraża się wzorem:

3

8

1

8

1

8

8

1

1

1

1

1

1

1

1

1

2

8

1

2

8

1

=

=

=

=

=

log

log

)

,

,

,

,

,

,

,

(

Entr

i

i

18

Entropia uk

Entropia uk

ł

ł

adu

adu

{0,1}           {2,3}          {4,5}           {6,7} 

>5

>1

>3

1

0

0

0

1

1

2

4

1

4

1

4

4

1

2

2

2

2

2

4

1

2

4

1

=

=

=

=

=

log

log

)

,

,

,

(

Entr

i

i

Dla rozważanego przykładu utwórzmy klasy 2-elementowe. 

Wówczas:

Komunikat, że obiekt należy do określonej klasy 

niesie: 

log

2

8/2 = 2 bity informacji. 

Prawdopodobieństwo wyboru każdej klasy wynosi 2/8. 

Zatem entropia układu, a więc średnia ilość informacji (bitów informacji) 

potrzebnej do zaklasyfikowania obiektu do klasy wyraża się wzorem:

19

Entropia uk

Entropia uk

ł

ł

adu

adu

Utwórzmy teraz 3 klasy, które zawierają odpowiednio: 1, 2 i 5 elementów.
Zauważmy, że wówczas:

ilość informacji potrzebnej do zaklasyfikowania obiektu do każdej z 

tych klas wynosi odpowiednio:

log

2

8 = 3, log

2

4 = 2, log

2

8/5 = 0,678

prawdopodobieństwo, że obiekt zaklasyfikowany zostanie do każdej z 

grup wynosi odpowiednio:

1/8, 1/4, 5/8

entropia tego układu (średnia ilość informacji potrzebna do 

zaklasyfikowania obiektu do klasy) jest więc równa:

{0}          {1, 2}          {3, 4, 5, 6, 7} 

30

1

5

8

8

5

4

4

1

8

8

1

5

2

1

2

2

2

,

log

log

log

)

,

,

(

Entr

=

+

+

=

Entropia dla przyk

Entropia dla przyk

ł

ł

adowych uk

adowych uk

ł

ł

ad

ad

ó

ó

w

w

14

1,585

4

4

4

13

1,555

5

4

3

12

1,500

6

3

3

11

1,483

5

5

2

10

1,459

6

4

2

9

1,384

7

3

2

6

1,252

8

2

2

8

1,325

6

5

1

7

1,281

7

4

1

5

1,189

8

3

1

4

1,041

9

2

1

3

0,817

10

1

1

2

0,414

11

1

0

1

0,000

12

0

0

Entropia

Klasa3

Klasa2

Klasa1

Entropia dla trzech klas zawierających 12 elementów

i

i

i

p

log

p

)

p

,

p

,

p

(

E

2

3

1

3

2

1

=

=

(Argumentami funkcji E są prawdopodobieństwa przynależności elementów do 
poszczególnych zbiorów tworzących układ.)  

background image

21

Entropia 

Entropia 

podsumowanie 

podsumowanie 

1.

Entropia układu jednostkowego złożonego ze zbioru A o 
prawdopodobieństwie p:

E(p) = – log

2

(p)

2.

Entropia układu jednostkowego złożonego ze zbioru o 
prawdopodobieństwie 1 jest równa 0

E(1) = 0

3.

Entropia układu jednostkowego złożonego ze zbioru będącego 
sumą zbiorów rozłącznych o prawdopodobieństwach odpowiednio 
p

A

i p

B

, jest równa entropii układu jednostkowego złożonego ze 

zbioru o prawdopodobieństwie p

A

+ p

B

:

E(p

A

∪ B

) = E(p

A

+ p

B

4.

Entropia układu złożonego z n zbiorów o prawdopodobieństwach 
odpowiednio p

1

, …, p

n

, jest średnią ważoną entropii n układów 

jednostkowych złożonych z każdego z tych zbiorów:

E(p

1

,…,p

n

) = – (p

1

E(p

1

) + … + p

n

E(p

n

))

22

Analiza informacyjna 

Analiza informacyjna 

miara ilo

miara ilo

ś

ś

ci informacji

ci informacji

s1

s2

p1

p2

I(s1,s2)

h=log(N/s;2)

1,0000

13,0000

0,0714

0,9286

0,3712

3,8074

2,0000

12,0000

0,1429

0,8571

0,5917

2,8074

3,0000

11,0000

0,2143

0,7857

0,7496

2,2224

4,0000

10,0000

0,2857

0,7143

0,8631

1,8074

5,0000

9,0000

0,3571

0,6429

0,9403

1,4854

6,0000

8,0000

0,4286

0,5714

0,9852

1,2224

7,0000

7,0000

0,5000

0,5000

1,0000

1,0000

8,0000

6,0000

0,5714

0,4286

0,9852

0,8074

9,0000

5,0000

0,6429

0,3571

0,9403

0,6374

10,0000

4,0000

0,7143

0,2857

0,8631

0,4854

11,0000

3,0000

0,7857

0,2143

0,7496

0,3479

12,0000

2,0000

0,8571

0,1429

0,5917

0,2224

13,0000

1,0000

0,9286

0,0714

0,3712

0,1069

14,0000

0,0000

1,0000

0,0000

0,0000

0,0000

h = log

2

(N/s) = log

2

(1/p) = -log

2

(p) – wysokość binarnego drzewa poszukiwań obiektu,

= ilość bitów informacji potrzebna do klasyfikacji obiektu do klasy o prawdopodob. 

p

,

= ilość informacji, jaką posiadamy wiedząc, że obiekt należy do klasy o prawdop. 

p

,

I(s

1

, s

2

) = średnia ważona klasyfikacji obiektu do jednej z dwóch klas (entropia układu!)

(c) T. Pankowski,  Drzewa 

decyzyjne

23

Entropia 

Entropia 

miara ilo

miara ilo

ś

ś

ci informacji

ci informacji

1. Powyższy wzór wyraża entropię układu składającego się z 

rozłącznych klas (podzbiorów): 

C

1

C

2

, ..., 

C

m

o liczebnościach, 

odpowiednio s

1

,…, s

m

; s

1

+…+ s

m

= s. 

2. Prawdopodobieństwo zaklasyfikowania obiektu do klasy 

C

i

wynosi 

p

i

p

i

= s

i

/s, 0 < 

p

i

< 1, 

i

= 1,2, ..., 

m

.

3. Wzór wyraża oczekiwaną ilość informacji potrzebną do 

zaklasyfikowania podanego obiektu do jednej z klas.

4. Entropia osiąga wartość maksymalną przy jednakowym rozkładzie, tj. 

gdy klasy są jednakowo prawdopodobne, tej samej wielkości.

5. Im większe zróżnicowanie układy tym mniejsza entropia. 

Entropia:

i

m

i

i

m

p

log

p

)

p

,...,

p

(

E

2

1

1

=

=

(c) T. Pankowski,  Drzewa 

decyzyjne

24

Ocena informacyjna wa

Ocena informacyjna wa

ż

ż

no

no

ś

ś

ci atrybut

ci atrybut

ó

ó

w

w

1. W zadaniach eksploracji danych, a przede wszystkim w 

problemach klasyfikacji istotna jest analiza istotności 

atrybutów (

attribute relevance analysis

).

2. W wyniku tej analiza uzyskujemy uporządkowanie zbioru 

atrybutów od najbardziej do najmniej istotnych z punktu 

widzenia klasyfikacji obiektów do zadanych klas.

3. Atrybut jest tym bardziej istotny (z punktu widzenia 

klasyfikacji obiektów) im mniejsza jest jego entropia.

4. Wyniki analizy istotności atrybutów mają zastosowanie 

do charakterystyki opisowej i dyskryminacyjnej klas 

obiektów, a także podczas budowy drzew decyzyjnych.

background image

25

Analiza istotno

Analiza istotno

ś

ś

ci atrybut

ci atrybut

ó

ó

w w zadaniach 

w w zadaniach 

klasyfikacji

klasyfikacji

• S – zbiór obiektów podzielony na m klas C

1

,...,C

m

, gdzie s

i

oznacza liczbę

obiektów w klasie C

i

, i = 1,...,m, a s liczbę wszystkich obiektów.

Niech  A  będzie atrybutem opisującym obiekty ze zbioru S i niech 

{a

1

, ..., a

n

) będzie zbiorem wartości atrybutu A.

• Niech 

s

i,k

– liczba obiektów klasy i, dla których atrybut A ma wartość a

k

.

Wówczas wartość a

k

atrybutu A wyznacza układ m klas określony za 

pomocą wektora liczebności tych klas:

(s

1,k

,… ,s

m,k

)

• Entropię tego układu nazywamy 

entropią wartości a

k

atrybutu A

,

p

log

p

)

p

,...,

p

(

E

)

a

,

A

(

r

EntrWartAt

k

,

i

m

i

k

,

i

k

,

m

k

,

k

2

1

1

=

=

=

gdzie p

i,k

oznacza prawdopodobieństwo przynależności obiektu do klasy 

C

i

, gdy wartość atrybutu A tego obiektu jest równa a

k

k

,

m

k

,

k

,

i

k

,

i

s

...

s

s

p

+

+

=

1

26

Analiza istotno

Analiza istotno

ś

ś

ci atrybut

ci atrybut

ó

ó

w w zadaniach 

w w zadaniach 

klasyfikacji

klasyfikacji

Entropią atrybutu A

nazywamy średnią ważoną entropii wszystkich 

wartości tego atrybutu

),

a

,

A

(

r

EntrWartAt

)

A

(

w

)

A

(

EntrAtr

k

n

k

a

k

=

=

1

gdzie waga entropii wartości a

k

atrybutu A, w

ak

(A), jest równa 

prawdopodobieństwu tego, że wartość atrybutu A dla rozważanego 
zbioru obiektów jest równa a

k

.   

,

s

s

...

s

)

A

(

w

k

,

m

k

,

a

k

+

+

=

1

27

Analiza istotno

Analiza istotno

ś

ś

ci atrybut

ci atrybut

ó

ó

w w zadaniach 

w w zadaniach 

klasyfikacji

klasyfikacji

1.

Za najbardziej istotny uważany jest ten atrybut, którego wartość

entropii 

EntrAtr

(

A

) względem podziału {

C

1

,...,

C

m

} jest 

najmniejsza

.

2.

Najistotniejszy atrybut maksymalizuje funkcję

zysk informacji

(

information gain

):

Gain

(

A

) = E(

p

1

, ..., 

p

m

) –

EntrAtr

(

A

).

3.

W analizie istotności atrybutów obliczamy zysk informacji każdego 

atrybutu opisującego obiekty w zbiorze treningowym.

4.

Atrybut o największej wartości zysku informacji jest atrybutem 

najbardziej dyskryminującym (rozróżniającym).

5. Gain

(

A

) opisuje różnicę między ilością informacji potrzebnej do 

klasyfikacji obiektu ze zbioru S, a klasyfikacją tego obiektu, gdy 

wartość atrybutu 

A

ma ustaloną wartość.

6. Gain

(

A

) określa więc 

zysk informacji

przy wyborze atrybutu 

A

. Im jest 

on większy, tym mniejsze będzie „zaszumienie” w zbiorach powstałych 

w wyniku podziału S względem wartości atrybutu 

A

.

28

Budowa drzewa decyzyjnego 

Budowa drzewa decyzyjnego 

wyb

wyb

ó

ó

r atrybutu 

r atrybutu 

pierwszego poziomu

pierwszego poziomu

Zbiór treningowy:

Ocena atrybutu Wiek:

C

1

= nie, 

C

2

= tak

E(5/14, 9/14)  = – (5/14*log

2

(5/14) + 

9/14*log

2

(9/14)) = 0.9403

EntrWartAtr(Wiek,<=30) =
= E(3/5, 2/5)  = – (3/5*log

2

(3/5) + 2/5*log

2

(2/5)) = 0.9710

EntrWartAtr(Wiek,31..40) = E(0/4, 4/4)  = = 0.0
EntrWartAtr(Wiek,>40) = E(2/5, 3/5) =  0.9710

w

<=30

(Wiek) = 5/14, 

w

31..40

(Wiek) = 4/14, 

w

>40

(Wiek) = 5/14,

EntrAtr(Wiek) = 

w

<=30

(Wiek) * EntrWartAtr (Wiek,<=30) +

+ w

31..40

(Wiek) * EntrWartAtr(Wiek,31..40) +

+ w

>40

(Wiek) * EntrWartAtr(Wiek,>40) = 0,6935

Gain(Wiek) = E(5/14,9/14) – EntrAtr(Wiek) = 0.2467

k =

<=30

31..40

>40

s1k =

3,0000

0,0000

2,0000

s2k =

2,0000

4,0000

3,0000

5,0000

4,0000

5,0000

background image

29

Budowa drzewa decyzyjnego 

Budowa drzewa decyzyjnego 

wyb

wyb

ó

ó

r atrybutu 

r atrybutu 

pierwszego poziomu

pierwszego poziomu

Zbiór treningowy:

Ocena atrybutu Dochód:

C

1

= nie, 

C

2

= tak

E(5/14, 9/14)  = – (5/14*log

2

(5/14) + 

9/14*log

2

(9/14)) = 0.9403

EntWartAtr(Dochód, niski) = E(1/4,3/4)  = 0.8113
EntWartAtr(Dochód, średni) = E(2/6,4/6) = 0.9183
EntWartAtr(Dochód, wysoki) = E(2/4,2/4) = 1.0000

w

niski

= 4/14, 

w

ś

redni

= 6/14, 

w

wysoki

= 4/14,

EntrAtr(Dochód) = 

w

niski

* EntWartAtr(Dochód, niski) + 

w

ś

redni

* EntWartAtr(Dochód, średni) +

w

wysoki

* EntWartAtr(Dochód, wysoki) = 0.9111

Gain(Dochód) = E(5/14,9/14) – EntrAtr(Dochód) = 0.0292

k =

niski

ś

redni

wysoki

s1k =

1,0000

2,0000

2,0000

s2k =

3,0000

4,0000

2,0000

4,0000

6,0000

4,0000

(c) T. Pankowski,  Drzewa 

decyzyjne

30

Budowa drzewa decyzyjnego 

Budowa drzewa decyzyjnego 

wyb

wyb

ó

ó

r atrybutu 

r atrybutu 

pierwszego poziomu

pierwszego poziomu

Zbiór treningowy:

Ocena atrybutu Studia:

C

1

= nie, 

C

2

= tak

E(5/14, 9/14)  = – (5/14*log

2

(5/14) + 

9/14*log

2

(9/14)) = 0.9403

EntWartAtr(Studia, tak) = E(1/7,6/7) = 0.5917
EntWartAtr(Studia, nie) = E(4/7,3/7) = 0.9852

w

tak

= 7/14, 

w

nie

= 7/14,

EntrAtr(Studia) = 

w

tak

* EntWartAtr(Studia, tak) + 

w

nie

* EntWartAtr(Studia, nie) = 0.7885

Gain(Studia) = E(5/14,9/14) – EntrAtr(Studia) = 0.1518

k =

tak

nie

s1k =

1,0000

4,0000

s2k =

6,0000

3,0000

7,0000

7,0000

Budowa drzewa decyzyjnego 

Budowa drzewa decyzyjnego 

wyb

wyb

ó

ó

r atrybutu 

r atrybutu 

pierwszego poziomu

pierwszego poziomu

Zbiór treningowy:

Ocena atrybutu OcenaKred:

C

1

= nie, 

C

2

= tak

E(5/14, 9/14)  = 
– (5/14*log

2

(5/14) + 9/14*log

2

(9/14))

= 0.9403

EntrWartAtr(OcenaKred,dobra) = 0.8113
EntrWartAtr(OcenaKred,znakomita) = 1.0000

w

dobra

= 8/14, 

w

znakomita

= 6/14,

EntrAtr(OcenaKred) = 

w

dobra

* E(2/8, 6/8) + 

w

znakomita

* E(3/6, 3/6) = 0.8922

Gain(Studia) = E(5/14,9/14) – EntrAtr(OcenaKred) = 0.0481

k =

dobra

znakomita

s1k =

2,0000

3,0000

s2k =

6,0000

3,0000

8,0000

6,0000

Analiza istotno

Analiza istotno

ś

ś

ci atrybut

ci atrybut

ó

ó

podsumowanie

podsumowanie

OcenaKred: Gain(OcenaKred) = 0.0481

k =

dobra

znakomita

s1k =

2,0000

3,0000

s2k =

6,0000

3,0000

8,0000

6,0000

Studia: Gain(Studia) = 0.1518

k =

tak

nie

s1k =

1,0000

4,0000

s2k =

6,0000

3,0000

7,0000

7,0000

Dochód: Gain(Dochód) = 0.0292

k =

niski

ś

redni

wysoki

s1k =

1,0000

2,0000

2,0000

s2k =

3,0000

4,0000

2,0000

4,0000

6,0000

4,0000

Wiek: Gain(Wiek) = 0.2467

k =

<=30

31..40

>40

s1k =

3,0000

0,0000

2,0000

s2k =

2,0000

4,0000

3,0000

5,0000

4,0000

5,0000

¾

Analiza istotności atrybutów wykazała, że z punktu widzenia klasyfikacji 
związanej z rozważanym zbiorem treningowym, najbardziej istotny jest 
atrybut Wiek. Atrybut ten powinien więc być jako pierwszy brany pod uwagę
przy budowie drzewa decyzyjnego.

¾

Wiedza o wartości atrybutu Wiek najbardziej pomaga w procesie klasyfikacji. 
Ma on właściwość największego różnicowania obiektów z punktu widzenia 
rozważanego zadania klasyfikacji. 

background image

Algorytm ID3: Decision_tree

(

S

U

).

Wej

ś

cie:

S – zbiór treningowy obiektów; 

U

– zbiór atrybutów o dyskretnych wartościach opisujących obiekty z 

S

.

Wyj

ś

cie:

Drzewo decyzyjne. 

Kroki:

1. Utwórz wierzchołek N;
2.

if

wszystkie obiekty z 

S

należą tej samej klasy 

then

return

liść N z etykietą

C

stop

;

3.

if U

jest pusty 

then

return

liść etykietowany najczęstszą klasą w 

S

stop

;

4. 

A

– atrybut z 

U

o najmniejszej entropii (największym zysku informacji);

wierzchołkowi 

N

przypisz etykietę

A

;

5. 

for each

wartości 

a

atrybutu 

begin

a) utwórz krawędź wychodzącą z 

N

dla warunku 

A

a;

b) niech 

S’

będzie zbiorem obiektów w zbiorze 

S

, dla których 

A

a;

c) końcem krawędzi jest wierzchołek zwrócony przez 

Decision_tree

(

S’

U

– {

A

})

end;