Klasykacja z V-drzewem decyzyjnym

W dokumencie Metody stosowania wiedzy dziedzinowej do poprawiania jakości klasyfikatorów (Stron 98-103)

Metoda III: Ci¦cia werykuj¡ce jako realizacja idei ekspertów

6.3 Klasykacja z V-drzewem decyzyjnym

W rozdziale przedstawiono algorytm klasykowania obiektu testowego, przy wyko-rzystaniu drzewa z podziaªami werykuj¡cymi (Algorytm 6.3.1). Zaªó»my, »e kla-sykujemy obiekt u w w¦¹le, w którym wyszukano optymalne ci¦cie c = (a, v) oraz rodzin¦ ci¦¢ werykuj¡cych c1, . . . , ck. Niech przez T oznaczony b¦dzie wzorzec generowany przez ci¦cie c, a przez T1,...,Tk wzorce odpowiadaj¡ce ci¦ciom c1,...,ck, gdzie dla dowolnego i ∈ {1, . . . , k} wzorzec Ti = T L(ci) lub Ti = T R(ci), zale»nie od wzorca wyselekcjonowanego dla danego ci przez Algorytm 6.2.1. Klasykacja odbywa si¦ wedªug Algorytmu 6.3.1.

Algorytm 6.3.1: Klasykacja za pomoc¡ V-drzewa

WEJ‘CIE: Nowy (testowany) obiekt u, V-drzewo decyzyjne VT(A), wyliczone dla tablicy decyzyjnej A;

V T C(T ) ={T } ∪ {T1, ..., Tk} oznacza kolekcj¦ wzorców dla ci¦cia optymalnego oraz ci¦¢ werykuj¡cych wyznaczonych przez Algorytm 6.2.1 dla danego w¦zªa w drzewie VT(A) WYJ‘CIE: Warto±¢ decyzji dla obiektu u

begin

1 Wstaw obiekt u do korzenia drzewa

2 je»eli w¦zeª speªnia warunek stopu to

zwró¢ decyzj¦ przypisan¡ do w¦zªa drzewa i zako«cz

3 Przypisz l1 := liczba wzorców z V T C(T ), do których pasuje u Przypisz l2 := l− l1, gdzie l = card(V T C(T )

4 je»eli obiekt u pasuje do wzorca T oraz l1 = l to

po±lij u do sklasykowania przez poddrzewo skonstruowane dla tablicy A(T ), czyli rekurencyjnie wywoªaj Algorytm 6.3.1.

Otrzyman¡ warto±¢ decyzji oznaczmy przez d1, zwró¢ d1 i zako«cz.

5 inaczej je»eli obiekt u nie pasuje do wzorca T oraz l2 = l to po±lij u do sklasykowania przez poddrzewo skonstruowane dla tablicy A(¬T ), czyli rekurencyjnie wywoªaj Algorytm 6.3.1.

Otrzyman¡ warto±¢ decyzji oznaczmy przez d2, zwró¢ d2 i zako«cz.

6 inaczej

Sklasykuj u przez poddrzewo w¦zªa A(T ) otrzymuj¡c d1

Sklasykuj u przez poddrzewo w¦zªa A(¬T ) otrzymuj¡c d2 7 je»eli d1 = d2 to

zwró¢ d1

8 inaczej //Rozstrzyganie koniktów mi¦dzy d1 i d2

Przypisz p1:= (rozmiar li±cia generuj¡cego decyzj¦ d1)/|A|

Przypisz p2:= (rozmiar li±cia generuj¡cego decyzj¦ d2)/|A|

9 je»eli (ll1 · p1) > (ll2 · p2) to zwró¢ d1

10 inaczej je»eli (ll1 · p1) < (ll2 · p2) to zwró¢ d2

inaczej //Decyduje ci¦cie gªówne

11 je»eli obiekt u pasuje do wzorca T to zwró¢ d1

12 inaczej

zwró¢ d2

Opis: Algorytm rozpoczyna dziaªanie w w¦¹le, którym na pocz¡tku jest korze«

drzewa. Sprawdza si¦ tu, czy w¦zeª jest li±ciem. Je»eli tak, to do klasykowanego obiektu u przypisuje si¦ etykiet¦ klasy decyzyjnej tego w¦zªa (li±cia) i algorytm ko«czy dziaªanie. W przeciwnym przypadku, w kroku trzecim wyliczana jest liczba wzorców zdeniowanych dla w¦zªa, do których obiekt u pasuje oraz liczba wzorców, do których obiekt ten nie pasuje. Je»eli obiekt u pasuje do wszystkich wzorców w¦-zªa, w tym do wzorca wyznaczonego przez ci¦cie gªówne, wówczas posyªany jest w kroku czwartym do sklasykowania przez lewe poddrzewo i przypisywana mu jest decyzja zwracana przez lewe poddrzewo. Je»eli natomiast obiekt nie pasuje do »adnego wzorca w¦zªa, wówczas jest posyªany do sklasykowania przez prawe poddrzewo i przypisywana jest mu decyzja prawego poddrzewa. W przypadku, gdy obiekt u pasuje do cz¦±ci wzorców oraz nie pasuje do pozostaªej cz¦±ci wzorców, mamy do czynienia z rozbie»no±ci¡ wskaza« poszczególnych ci¦¢ w¦zªa. Aby roz-strzygn¡¢ taki konikt wyznaczane jest prawdopodobie«stwo decyzji z lewego jak i prawego poddrzewa (jako iloraz liczby obiektów w li±ciach, z których pochodzi de-cyzja lewego jak i prawego drzewa przez rozmiar caªej tablicy treningowej) i

okre-±lana jest tzw. siªa decyzji z poszczególnych poddrzew. Siªa decyzji wyliczana jest jako iloczyn prawdopodobie«stwa decyzji oraz odsetka ci¦¢, które wskazuj¡

dane poddrzewo. Je»eli siªa decyzji z lewego poddrzewa jest wi¦ksza od tej siªy prawego poddrzewa, wówczas zwracana jest decyzja lewego poddrzewa. W prze-ciwnym przypadku zwracana jest decyzja poddrzewa prawego. W przypadku, gdy obie siªy s¡ równe, wówczas bierze si¦ pod uwag¦ wskazanie ci¦cia gªównego.

Celem prezentacji klasykacji za pomoc¡ V-drzewa (Algorytm 6.3.1),

rozwa-»ona zostanie tablica decyzyjna A = (U, A ∪ {z}), taka »e A = {a, b, c, d, e, f}

z atrybutem decyzyjnym z o dwóch warto±ciach: 0 i 1, co daje dwie klasy de-cyzyjne: Z0 i Z1. Rysunek 6.2 przedstawia V-drzewo decyzyjne wyznaczone dla tablicy A dla k = 2 za pomoc¡ Algorytmu 6.2.1. Drzewo to skªada si¦ z korzenia N1, dwóch w¦zªów wewn¦trznych: N2 i N3 oraz czterech li±ci: N4, N5, N6 i N7. Z w¦zªem N1 zwi¡zany jest wzorzec T dotycz¡cy gªównego ci¦cia w tym w¦¹le oraz dwa wzorce T1 i T2 dotycz¡ce ci¦¢ werykuj¡cych. W w¦¹le N2 zdeniowany jest wzorzec S zwi¡zany z ci¦ciem gªównym tego w¦zªa oraz dwa wzorce S1 i S2

dotycz¡ce ci¦¢ werykuj¡cych. Natomiast do w¦zªa N3 przypisany jest wzorzec R oparty na ci¦ciu gªównym tego w¦zªa oraz dwa wzorce R1 i R2 dotycz¡ce ci¦¢

werykuj¡cych go.

Do testowania Algorytmu 6.3.1 wykorzystane zostan¡ trzy obiekty z Ta-blicy 6.1. W przykªadzie zastosowana b¦dzie prosta metoda rozstrzygania

kon-iktów mi¦dzy wskazaniami poszczególnych ci¦¢ w w¦¹le, oparta na gªosowaniu wi¦kszo±ciowym (gdy obiekt pasuje do cz¦±ci wzorców oraz nie pasuje do pozo-staªej cz¦±ci wzorców, przypisywana jest mu decyzja pochodz¡ca z poddrzewa, na które wskazuje wi¦ksza liczba wzorców w¦zªa) [12]. Klasykacja wszystkich

obiek-a ≥ 2

N1

T: a < 2 T1: c < 4 T2: e ≥ -6

N2

S: b < 3 S1: d ≥ 6 S2: f < 12

N3

R: b < 1 R1: d ≥ -2 R2: f < 4

N4

Decision: 0

N7

Decision: 0

N6

Decision: 1

N5

Decision: 1

Rysunek 6.2: Przykªadowe V-drzewo decyzyjne.

tów zaczyna si¦ w w¦¹le N1.

Obiekt testowy a b c d e f

u1 1 4 3 -7 -5 14

u2 3 0 5 -3 -7 5

u3 1 4 3 -5 -8 10

Tablica 6.1: Tablica obiektów testowych.

Obiekt u1 pasuje do wzorca T , poniewa» a(u1) = 1 < 2. Jednocze±nie obiekt u1

pasuje do wzorca T1, poniewa» c(u1) = 3 < 4 oraz pasuje do wzorca T2, poniewa»

e(u1) = −5 ≥ −6. Oznacza to, »e wzorce T , T1 i T2 sugeruj¡, aby obiekt u1

zostaª sklasykowany w w¦¹le N2. W w¦¹le N2, obiekt u1 nie pasuje do wzorca S, poniewa» b(u1) = 4 ≥ 3. Ponadto, obiekt u1 nie pasuje równie» do wzorca S1, gdy» d(u1) = −7 < 6 oraz nie pasuje do wzorca S2, poniewa» f(u1) = 14 ≥ 12.

Oznacza to, »e obiekt u1 jest kierowany do klasykacji przez w¦zeª N5 i zostaje sklasykowany do klasy decyzyjnej Z1.

Obiekt u2 nie pasuje do wzorca T , poniewa» a(u2) = 3≥ 2. Jednocze±nie obiekt u2nie pasuje do wzorca T1, gdy» c(u2) = 5≥ 4, a tak»e nie pasuje do wzorca T2, po-niewa» e(u2) =−7 < −6. Zatem wzorce T , T1 i T2 sugeruj¡, »e obiekt u1 powinien zosta¢ sklasykowany w w¦¹le N3. Zatem obiekt u2 jest kierowany do klasykacji w w¦¹le N3. W w¦¹le N3, obiekt u2 pasuje do wzorca R, poniewa» b(u2) = 0 < 1. Jednocze±nie obiekt u2 nie pasuje do wzorca R1, gdy» d(u2) = −3 < −2 oraz nie pasuje do wzorca R2, poniewa» f(u2) = 5 ≥ 4. Mamy tutaj do czynienia

z rozstrzyganiem koniktów, gdy» obiekt u pasuje do jednego z trzech wzorców, a nie pasuje do dwóch pozostaªych wzorców w¦zªa. Zatem obiekt u2 powinien by¢

skierowany do klasykacji przez obydwa w¦zªy N6 i N7. Niech liczebno±ci w¦zªów N1, N6 i N7 wynosz¡ odpowiednio 100, 25 i 40, wówczas siªa decyzji pochodz¡cej z N6 (Z1) jest równa 1/3 · 25/100 = 0.08, natomiast z w¦zªa N7 (Z0) jest równa 2/3· 40/100 = 0.26. W zwi¡zku z tym, obiekt u2 jest zaklasykowany do klasy decyzyjnej Z0.

Obiekt u3 pasuje do wzorca T , poniewa» a(u3) = 1 < 2. Jednocze±nie obiekt u3 pasuje do wzorca T1, poniewa» c(u3) = 3 < 4 oraz nie pasuje do wzorca T2, poniewa» e(u3) = −8 < −6. W zwi¡zku z pojawiaj¡cym si¦ koniktem, obiekt zostaje posªany do sklasykowania przez w¦zeª N2 jak i N3. W w¦¹le N2, obiekt u3 nie pasuje do wzorca S, gdy» b(u3) = 4≥ 3. Jednocze±nie obiekt u3 nie pasuje do wzorca S1, poniewa» d(u3) = −5 < 6 oraz pasuje do wzorca S2, poniewa»

f (u3) = 10 < 12. Zatem obiekt u3 zostanie skierowany do klasykacji przez dwa w¦zªy N4 i N5. Przy liczebno±ciach w¦zªów N4 i N5 wynosz¡cych odpowiednio 5 i 30, siªa decyzji pochodz¡cej z N4(Z0) wynosi 1/3·5/100 = 0.02, natomiast z w¦zªa N5 (Z1) jest równa 2/3 · 30/100 = 0.2. Do w¦zªa N2 zwracana jest zatem decyzja Z1. Natomiast w w¦¹le N3, obiekt u3 nie pasuje do wzorca R, gdy» b(u3) = 4≥ 1.

Jednocze±nie obiekt u3 nie pasuje do wzorca R1, poniewa» d(u3) = −5 < (−2) oraz nie pasuje do wzorca R2, poniewa» f(u3) = 10≥ 4. Zatem obiekt u3 zostanie skierowany do klasykacji przez w¦zeª N7, który zwraca do N3 decyzj¦ Z0. Siªa decyzji otrzymanej dla w¦zªa N2jest równa 2/3·30/100 = 0.2, natomiast dla w¦zªa N3jest równa 1/3·40/100 = 0.13. W zwi¡zku z tym, obiekt u2jest zaklasykowany do klasy decyzyjnej Z1.

Powy»szy algorytm klasykowania obiektu w w¦¹le, wykorzystuje jedno pod-drzewo tylko w przypadku, gdy wszystkie podziaªy werykuj¡ce tak samo

klasy-kuj¡ obiekt, jak ci¦cie gªówne c. W pozostaªych przypadkach klasykacja jest wykonywana przez obydwa poddrzewa. Nast¦pnie rozwa»ane s¡ dwa przypadki.

Pierwszy dotyczy sytuacji, gdy obydwa poddrzewa zwróciªy t¡ sam¡ warto±¢ de-cyzji. Wtedy ta warto±¢ jest zwracana jako decyzja danego w¦zªa. Natomiast drugi przypadek dotyczy sytuacji, gdy jedno z poddrzew zwróciªo jedn¡ warto±¢ decyzji, a drugie poddrzewo inn¡. Wtedy z danego w¦zªa jest zwracana decyzja pochodz¡ca z tego poddrzewa, które wi¡»e si¦ z wi¦ksz¡ siª¡ decyzji. Taka metoda stanowi pro-sty sposób na rozstrzyganie koniktów mi¦dzy decyzjami wygenerowanymi przez dwa drzewa.

Rozdziaª 7

Metoda IV: Deniowanie odlegªo±ci

W dokumencie Metody stosowania wiedzy dziedzinowej do poprawiania jakości klasyfikatorów (Stron 98-103)