Użycie

Wymogi dotyczące danych

Algorytm może obsługiwać zarówno atrybuty numeryczne jak i kategoryczne. Nie jest wymagana binaryzacja czy standaryzacja danych przed budową drzewa. Jedynym ograniczeniem jest liczba wartości zmiennej kategorycznej. Zazwyczaj, liczba ta nie może przekraczać 100.

Braki danych są w pełni obsługiwane.

Budowa i testowanie modelu

Funciton Settings

Tylko niektóre z dostępnych typów użycia (ról) atrybutów są możliwe do zastosowania w module Drzew Decyzyjnych. Wśród nich wyróżniamy: active, target, inactive oraz weight. Tylko jeden atrybut z rolą target może być wybrany.

Poniższe filmy pokazują proces tworzenia modelu drzewa klasyfikacyjnego w AdvancedMiner:

Algorithm Settings

Pełna specyfikacja ustawień modelu obejmuje elementy General Algorithm Settings i Transformation Settings.

Klasą odpowiadającą za dostarczenie algorytmowi ustawień specyficznych dla Drzew Klasyfikacyjnych (Classification Trees) jest TreeSettings. Por. javadoc w celu zapoznania się ze szczegółami dot. implementacji w Gythonie.

Tabela 19.1. Parametry TreeSettings

OpcjaOpisMożliwe wartościWartość domyślna
Min Node Size minimalna liczba obserwacji wymagana do utworzenia węzła, opcja jest nieaktywna gdy opcja MinNodeSizePrc jest używana Nieujemne liczby całkowite1
Min Node Size Prc minimalna liczba obserwacji wymagana do utworzenia węzła, wyrażona jako procent wielkości zbioru treningowego Liczby rzeczywiste z przedziału [0.0, 100.0). Opcja jest nieaktywna gdy jest ustawiona na 0 5
Max Tree Depthmaksymalna głębokość drzewa

Nieujemne liczby całkowite, 0 oznacza brak ograniczeń

10
Confidence Factor poziom ufności wykorzystywany przy przycinaniu drzewaLiczby rzeczywiste z przedziału [0.0, 0.5)0.40
Prune Treeopcja włączenia przycinania drzewa po jego zbudowaniuprawda / fałszfałsz
Split Evaluation kryterium oceny podziałuentropia / współczynnik przyrostu / ginigini
Max Node Rank maksymalna liczba węzłów potomnych dla każdego węzłaLiczby całkowite >= 22
Max Number of Best Predicates maksymalna liczba najlepszych predyktorów w każdym węźle Liczby całkowite >= 05
Nominal Attribute Grouping określa czy algorytm ma próbować grupować kategorie podczas tworzenia testu na zmiennej kategorycznej prawda / fałszfałsz
Homogeneous Density najmniejsze stężenie targetu w węźle uprawniające do zamiany go w liść Liczby rzeczywiste z przedziału (0.0, 1.0]1.0
Min Split Evaluation Gain minimalny przyrost wartości oceny podziału wymagany do kontynuacji podziału węzła Liczby rzeczywiste z przedziału [0.0, 1.0]0.0
Number of Histogram Quantiles liczba kwantyli histogramu tworzonego przy podziale atrybutu Liczby całkowite >= 180
Smooth Histograms określa czy histogram tworzony przy podziale atrybutu ma być wygładzany prawda / fałszfałsz
Calculate Split Statistics określa czy statystyki podziału mają być wyliczane prawda / fałszprawda
Null values strategy Określa strategię obsługi braków danych przez algorytm weighted / largest / left / best largest
Null Test Allowed (WERSJA EKSPERYMENTALNA) Opcja w wersji eksperymentalnej. Jeśli włączona, wówczas algorytm spróbuje użyć testu podziału "zmienna jest brakiem danych" prawda / fałszfałsz
Prune Oversampled (WERSJA EKSPERYMENTALNA) Opcja w wersji eksperymentalnej. Jeśli włączona, wówczas proces przycinania będzie wykonywany na an oversampled target distribution prawda / fałszfałsz
Prune Continuous Jeśli włączona, błąd dla przycinania określany będzie jako różnica pomiędzy prawdopodobieństwem obserwowanym a predykowanym, jeśli wyłączona, wówczas błąd określony będzie jako liczba błędnych klasyfikacji przy cut-off równym 0.5 prawda / fałszfałsz
Evaluation Null Correction (WERSJA EKSPERYMENTALNA) Opcja w wersji eksperymentalnej. Jeśli włączona, wówczas podział dla atrybutów posiadających braki danych jest oceniany jako gorszy w porównaniu z podziałem dla atrybutu bez braków danych prawda / fałszfałsz

Rysunek 19.6. Okno Tree Settings Properties

Okno Tree Settings Properties
Min Node Size

Parametr ten określa minimalną liczbę obserwacji w węźle. Dany węzeł jest dzielony, jeśli wszystkie jego węzły potomne będą mogły osiągnąć przynajmniej Min Node Size obserwacji. W efekcie, konstruowane drzewo nie posiada żadnego węzła, gdy jest mniej niż Min Node Size obserwacji. To ograniczenie obowiązuje w fazie budowy, ale nie musi obowiązywać po przycięciu drzewa.

Max Tree Depth

Parametr ten określa maksymalną głębokość drzewa. Drzewo w fazie budowy, przed przycinaniem, będzie zawierać co najwyżej liczbę poziomów określoną przez ten parametr. Wartość 0 oznacza brak ograniczeń dla głębokości drzewa.

Confidence Factor

Parametr ten ustawia poziom istotności używany przy estymacji błędu wnoszonego przez drzewo podczas procesu przycinania. Jest on wykorzystywany przy przycinaniu z pesymistycznym określaniem błędu, gdy włączona jest opcja przycinania drzewa. Im mniejsza jest wartość tego parametru, tym częściej poddrzewa będą zastępowane przez liście, ostatecznie prowadząc do zmniejszenia rozmiarów drzewa.

Split Evaluation

Opcja ta pozwala na wybór funkcji oceny podziału używanej przez algorytm klasyfyfikacyjny. Wpływa na sposób w jaki obserwacje są dzielone w każdym węźle. Gdy opcja ta jest włączona, oddziałuje także na sposób grupowania zmiennych kategorycznych.

Dopuszczalne wartości to:

Max Node Rank

Parametr ten określa maksymalną liczbę węzłów potomnych jaką może mieć węzeł. Ustawienia te dotyczą tylko zmiennych kategorycznych, dla zmiennych numerycznych test zawsze ma binarny wynik.

Znaczenie tego parametru zależy od tego, czy opcja Nominal Attribute Grouping jest włączona czy wyłączona.

Nominal attribute grouping jest włączona: Najpierw algorytm próbuje pogrupować wartości atrybutu, łącząc w każdym kroku dwie najlepsze kategorie. Proces zatrzymuje się, gdy każda następna próba łączenia zmniejszałaby wartość oceny podziału. Jeśli ostatecznie wartości są podzielone na nie więcej niż Max Node Rank podzbiorów, dla każdego z nich tworzony jest węzeł potomny. W przeciwnym przypadku używany jest podział binarny.

Nominal attribute grouping jest wyłączona: Jeśli liczba możliwych wartości atrybutu nie przekracza Max Node Rank, używany jest podział wielowartościowy. W przeciwnym przypadku używany jest podział binarny.

Nominal Attribute Grouping

Opcja ta określa czy atrybuty kategoryczne powinny być grupowane w każdym węźle. Na przykład, jeśli zmienna może przyjmomwać wartości {A,B,C,D,E}, możliwe jest wykonanie testu binarnego określającego wynik "równy/nie równy B". Inną możliwością jest stworzenie oddzielnego węzła potomnego dla każdej wartości. Jednak, po włączeniu opcji Nominal Attribute Grouping, wartości atrybutu mogą być łączone w podzbiory, na przykład {A,E} oraz {B,C,D}. Wynik grupowania jest uzyskiwany niezależnie dla każdego węzła. Włączenie tej opcji ma znaczący wpływ na czas trwania fazy budowania drzewa.

Szczegóły dotyczące algorytmu grupowania wartości znajdują się w JR Quinlan. C4.5 Programs for machine learning, rozdział "Grouping Attribute Values"

Notatka

Opcja ta powiązana jest z parametrem Max Node Rank. Jeśli utworzony podział wykorzystujący grupowanie wygeneruje więcej węzłów potomnych, niż wspomniany parametr, wówczas utworzony podział nie będzie użyty.

Homogeneous Density

Parametr ten określa najmniejsze stężenie targetu w węźle pozwalające na zamianę go w liść. Węzeł, dla którego częstość danej kategorii targetu osiąga ustaloną wartość maksymalną uważa się za jednorodny, t.j. nie są konieczne kolejne podziały. Taki węzeł przekształcany jest w liść.

Jeśli paramtetr przyjmuje wartość 1.0, węzeł uważa się za jednorodny tylko wtedy, gdy wszystkie obserwacje w danym węźle mają taką samą wartość targetu. Wartością domyślną jest 0.0, co oznacza, że to kryterium zatrzymania algorytmu jest nieaktywne.

Min Split Evaluation Gain

Parametr ten określa minimalny przyrost wartości oceny podziału, wymagany do wykonania podziału węzła. Ocena podziału dokonywana jest z użyciem funkcji ustawionej przez parametr splitEvaluation.

Węzeł jest dzielony tylko wtedy, gdy ocena podziału jest większa lub równa minimalnemu dopuszczalnemu przyrostowi . wartości oceny podziału. W przeciwnym przypadku tworzony jest liść.

Null values strategy

Parametr ten określa jak braki danych pojawiające się w zbiorze danych są traktowane przez algorytm:

weighted - obserwacja jest propagowana od korzenia do liścia i za każdym razem, gdy sprawdzany jest warunek podziału na obserwacji z brakiem danych tworzone są dwie obserwacje o mniejszych wagach;

largest - za każdym razem, gdy sprawdzany jest warunek podziału na obserwacji z brakiem danych obserwacja ta jest przypisywana do największego poddrzewa;

left - za każdym razem, gdy sprawdzany jest warunek podziału na obserwacji z brakiem danych obserwacja ta jest przypisywana do lewego poddrzewa;

best - za każdym razem, gdy sprawdzany jest warunek podziału na obserwacji z brakiem danych obserwacja ta jest przypisywana do najlepszego poddrzewa;

Dodatkowo poza ustawieniami specyficznymi dla algorytmu drzew klasyfikacyjnych analityk może użyć Transformation Settings - by kontrolować sposób transformacji danych; ustawienia te opisane są w rozdziale Transformations.

Proces budowy drzewa

Gdy wszystkie obiekty metadanych są przygotowane i specyfikacja zadania budowy drzewa jest poprawna, użytkownik może uruchomić zadanie. Wykonanie zadania składa się z trzech etapów:

  1. Załadowanie danych wejściowych do pamięci

    Na wskaźniku postępu zadania w oknie Remote Processes, proces ten odpowiada przedziałowi wartości od 0% do 20%.

  2. Budowa drzewa

    Na wskaźniku postępu zadania w oknie Remote Processes, proces ten odpowiada przedziałowi wartości od 20% do 100%.

  3. Przycinanie drzewa. Proces nie jest odzwierciedlany na wskaźniku postępu zadania.

Wszystkie kroki są rejestrowane w pliku log na poziomie INFO.

Na każdym kroku użytkownik może przerwać działanie zadania. Jeśli zadanie jest przerwane, model nie zostanie stworzony.

Zastosowanie modelu

Moduł Drzew Klasyfikacyjnych jest w stanie stworzyć trzy typy rezultatów gdy klasyfikuje dostarczone dane. Szczegóły jak stosować model do danych znajdują się w rozdziale Stosowanie modeli w AdvancedMiner oraz w podrozdziale Klasyfikacja rozdziału Stosowanie modeli dla różnych funkcji ekstrakcji danych .

Używając modułu Drzew Klasyfikacyjnych można uzyskać trzy możliwe wyniki: category, probability, oraz (przy pewnych ograniczeniach) nodeid. Tabela poniżej przedstawia możliwe kombinacje i ich opis.

Tabela 19.2. Elementy wyjściowe i ich kombinacje

Output typeOutput item typeDescription
probabilityrankzwraca prawdopodobieństwo n-tej najlepszej kategorii
probabilitycategoryzwraca prawdopodobieństwo klasyfikacji przy zadanej kategorii
categoryrankzwraca n-tą najlepszą kategorię
categorycategorynie wspierane
nodeIDcategorynie wspierane
nodeIDrankzwraca id liścia, do którego wejściowe przypadki zostały przypisane

Prawdopodobieństwo jest obliczane z wykorzystaniem stężenia wybranej kategorii targetu w liściu do którego obserwacja jest przypisana. Jeśli jest rozmiarem liścia natomiast liczbą obserwacji z wybraną wartością targetu wówczas zwracane prawdopodobieństwo jest równe

Statystyki modelu

Po wykonaniu zadania budowy drzewa, model drzewa jest zapisywany w repozytorium. Model zawiera informacje o strukturze drzewa, poziomach targetu i liczbie obserwacji w każdym węźle. Model może być przeglądany w Tree Visualization Component, struktura może być także kontrolowana w Oknie Projektu przez przeglądanie obiektów.

Tree Visualization Component

Wizualizacja dla modelu Drzewa Klasyfikacyjnego jest tworzona w środowisku graficznym, które pozwala przesuwać i zmieniać rozmiary obiektu. Ilość informacji wyświetlanej na diagramie drzewa zwiększa się wraz z poziomem powiększenia obiektu.

Wizualizacja drzewa może być kontrolowana za pomocą myszy i/lub klawiatury.

Kontrola za pomocą myszy: 

  • przesuwanie - naciśnij lewy klawisz myszy i przesuń mysz by przesunąć drzewo w wybranym kierunku;

  • powiększenie - zaznacz punkt, który będzie w centrum powiększania poprzez przyciśnięcie prawego klawisza myszy i, przytrzymując go, przesuń w prawo by zwiększyć lub w lewo by zmniejszyć widok. Odległość w poziomie (oś X) pomiędzy zaznaczonym punktem i aktualną pozycją kursora określa szybkość zmiany rozmiaru obiektu. Jeśli aktualna pozycja kursora ma tę samą współrzędną X jak zaznaczony punkt, obiekt nie zmieni rozmiaru. Im bardziej kursor przesunięty jest w lewo, tym szybciej następuje zmniejszanie obiektu. Im bardziej kursor przesunięty jest w prawo, tym szybciej następuje zwiększenie obiektu.

  • przywrócenie widoku - jeśli drzewo zostało przesunięte z poprzedniego położenia podwójnie naciśnij lewy klawisz myszy by spowodować, ponowne pojawienie się korzenia drzewa (powrót do pozycji początkowej).

  • szybkie powiększenie - przytrzymaj klawisz shift i jednocześnie naciśnij lewy klawisz myszy na węźle by zwiększyć lub zmniejszyć widok, w zależności od aktualej skali;

  • wybór węzła - naciśnij lewy klawisz myszy na węźle; aby odznaczyć go, zaznacz inny węzeł lub kliknij obszar wokół węzła; Za każdym razem, gdy węzeł jest wybierany, właściwości tego węzła pokazane są w oknie właściwości. Zobacz także animację Właściwości węzła.

Kontrola za pomocą klawiatury: 

  • szybkie powiększenie wybranego węzła - wciśnij klawisz "Enter", gdy drzewo jest pomniejszone lub klawisz "Backspace" gdy drzewo jest powiększone;

  • zmiana wyboru węzła - użyj klawiszy strzałek: w dół - aby przejść do pierwszego (z lewej) węzła potomnego; w górę - aby przejść poziom wyżej; lewo/prawo - aby przejść w lewo lub w prawo na tym samym poziomie drzewa;

Animacje: Nawigacja za pomocą myszy. Nawigacja za pomocą myszy część II.

Poza zmianą rozmiaru i położenia drzewa, istnieje wiele opcji, które zmieniają widok. Wszystkie są zgrupowane w obszarze 'Właściwości' i są dostępne gdy dany komponent struktury drzewa jest aktywny.

  • Visibility. Ta grupa parametrów określa, które elementy są widoczne:

    • Flow - przepływ obserwacji ze zbioru danych,

    • Histogram - histogram wartości zmiennej objaśnianej (target) dla węzła,

    • Legend - kolor legendy dla wartości zmiennej objaśnianej (target);

    • Node Size - liczba obserwacji, które znajdują się w węźle,

    • Split Attribute - nazwa zmiennej użytej do podziału,

    • Split Value - wartość, przy której następuje podział,

    • Target Values - nazwa zmiennej objaśnianej (target).

  • Properties. Znajdują się tu ogólne parametry wizualizacji:

    • Color Code - [ Purity, Size, None] określenie co ma być zakodowane przy użyciu kolorów: Purity - poziom (wartość) zmiennej objaśnianej, Size - jak dużo obserwacji znalazło się w węźle, None - brak użycia kolorów,

    • Cut - [Hidden, Shown] widok dla ręcznego przycinania węzłów: Hidden - wszystkie węzły są ukryte, Shown - przycięte poddrzewa są widoczne, ale przycięty obszar jest zaznaczony szarą linią,

    • Display - [ Full, Leaf] określenie, które węzły są widoczne: Full - wszystkie węzły są widoczne, Leaf - tylko liście są widoczne,

    • Flow Content - [Validation diff, Observations count] rodzaj obserwacji prezentowanej przez kolor krawędzi: Validation diff - różnica pomiędzy statystyką dla zbioru treningowego i walidacyjnego, Observations count - liczba obserwacji w węźle,

    • Limit categorical - jeśli opcja jest włączona, wówczas zmienne kategoryczne będą ograniczane tylko do najczęstszych wartości.

    • Color Scales - w obecnej wersji jest tylko jedna skala kolorów, używana do wizualizacji przepływów. Edytor dostosowujący skalę kolorów jest dostępny i pozwala na precyzyjne zdefiniowanie gradientu koloru.

  • Target Visibility - określa, które wartości zmiennej objaśnianej (target) są widoczne;

Rysunek 19.7. Wizualizacja struktury drzewa i jej właściwości.

Wizualizacja struktury drzewa i jej właściwości.
  1. wartość target,

  2. wartość podziału,

  3. kolor dla przepływu,

  4. histogram,

  5. rozmiar węzła,

  6. atrybut użyty do podziału.

Rysunek 19.8. Wizualizacja węzła w drzewie

Wizualizacja węzła w drzewie
  1. wartość target,

  2. rozkład targetu dla danych treningowych (graficznie)

  3. rozkład targetu dla danych walidacyjnych (graficznie)

  4. rozkład targetu dla danych treningowych

  5. rozkład targetu dla danych walidacyjnych

  6. liczba obserwacji w zbiorze treningowym

  7. liczba obserwacji w zbiorze walidacyjnym

Poniższe animacje ilustrują pracę z edytorem właściwości drzewa część I - przepływ, część II - pokazywanie i ukrywanie informacji dodatkowych, część III - zmiana wizualizacji z trybu "całe drzewo" do tybu "tylko liście".

Rysunek poniżej pokazuje edytor podziału drzewa. Dostęp do edytora następuje poprzez wciśnięcie przycisku znajdującego się z prawej strony nazwy atrybutu (1). Zgodnie z typem zmiennej używanej do podziału, edytor jest numeryczny (po lewej) lub kategoryczny (po prawej). Edytor posiada dwa obszary:

  • 2 - najlepsze zmienne dzielące. Zawiera on listę N najlepszych zmiennych do podziału. Są one uszeregowane według wartości oceny podziału od najlepszego (na górze) do najgorszego (na dole). Dla każdej zmiennej dzielącej wyświetlana jest jej nazwa oraz wartość oceny podziału. Aktywny podział jest pogrubiony.

  • 3 - edytor wartości podziału. Istnieje możliwość sprawdzenia i modyfikacji wartości na której następuje podział.

Rysunek 19.9. Edytor podziału drzewa

Edytor podziału drzewa

Animacja: Interaktywna edycja drzewa - zmiana predyktorów podziału i przebudowywanie drzewa.

Lift dla drzewa

Jeśli zbiór walidacyjny jest używany przy budowie drzewa, statystyki modelu pokazują lift dla drzewa. Komponent ten można otworzyć z poziomu menu głównego Window | Lift for Tree. Prezentowany jest diagram lift dla dwóch zbiorów: treningowego i walidacyjnego. Lift dla zbioru walidacyjnego jest zaznaczony pogrubioną linią (2.), a poziom lift dla zbioru treningowego oznaczony jest niebieską krawędzią (1.). Niebieski obszar określa różnicę poziomu lift dla danego węzła między zbiorem treningowym i walidacyjnym.

Rysunek 19.10. Diagram lift dla drzewa

Diagram lift dla drzewa

Diagram lift dla drzewa jest interaktywny. Może być używany w procesie przycinania i rozwijania drzewa oraz do zaznaczania węzłów i liści. Zobacz animacje: Praca z lift dla drzewa, przycinanie drzewa z pomocą diagramu lift.

Rysunek 19.11. Wybór liścia

Wybór liścia

Gdy liść jest wybrany, powiązane z nim liście są zaznaczone na diagramie lift. Na przykładowym rysunku zaznaczony jest liść o id=30. Każda operacja, która może być wykonana na tym liściu będzie wpływać na wszystkie węzły potomne węzła nadrzędnego do liścia o id=30. W tym przypadku zmiany będą mieć wpływ tylko liść o id=25. Na diagramie lift wybrany liść jest podświetlany na niebiesko. Linia poniżej diagramu lift łączy zaznaczony liść z powiązanymi liśćmi.

Rysunek 19.12. Wybór węzła

Wybór węzła

Możemy także wybierać węzeł. Węzły potomne danego liścia są zaznaczone kolorem czerwonym. One również są ze sobą połączone.

Rysunek 19.13. Rozwijanie liści

Rozwijanie liści

Czarny trójkąt skierowany w dół, widoczny na liściu o id=30 oznacza, że liść ten może być rozwijany. Diagram lift także może być używany do przycinania lub rozwijania liści. Aby przyciąć lub rozwinąć liść, należy kliknąć na czarny trójkąt wybranego elementu drzewa. Na diagramie lift należy wcisnąć klawisz CTRL i przesunąć kursor myszy nad wybrany węzeł. Jeśli pojawia się zielony trójkąt, możemy wcisnąć lewy klawisz myszy i w efekcie rozwinąć liść. Jeśli pojawi się symbol nożyczek, wciśnięcie lewego klawisza myszy umożliwi przycięcie drzewa na tym węźle.

Rysunek 19.14. Liść bez obserwacji w zbiorze walidacyjnym

Liść bez obserwacji w zbiorze walidacyjnym

Niektóre węzły nie mają obserwacji w zbiorze walidacyjnym. Na rysunku powyżej liść o id=50 nie posiada wyliczonych statystyk dla zbioru walidacyjnego. Zatem liście id=52 i id=49 są traktowane jako jednakowe oraz jako jeden liść na diagramie lift. Gdy węzeł o id=48 zostanie wybrany, diagram lift pokaże zaznaczone liście id=49 i id=58

Rysunek 19.15. Inny przykład liścia bez obserwacji w zbiorze walidacyjnym

Inny przykład liścia bez obserwacji w zbiorze walidacyjnym

Rysunek powyżej pokazuje podobną sytuację.

Dzięki diagramowi lift praca z drzewem jest dużo prostsza. Pokazuje on wszystkie odstające i niepożądane zachowania. Rysunek poniżej pokazuje duże drzewo którego diagram lift zawiera wiele wartości odstających

Rysunek 19.16. Drzewo i jego wstępny diagram lift

Drzewo i jego wstępny diagram lift

Następny rysunek pokazuje przycięte drzewo. Składa się ono tylko z 5 liści i diagram lift jest monotoniczny.

Rysunek 19.17. Przycięte drzewo i jego ostateczny lift

Przycięte drzewo i jego ostateczny lift

Jest kilka opcji, które pozwalają zmieniać sposób wizualizacji diagramu lift. Wszystkie są zgrupowane wewnątrz 'Właściwości' i są dostępne, gdy aktywowany zostanie element drzewa.

Rysunek 19.18. Właściwości lift

Właściwości lift

Właściwości diagramu lift: 

  • Action Preview - podgląd możliwych akcji przycinania,

  • Apriori Level Visible - wizualizacja poziomu apriori,

  • Auto Scale - skaluj lift do wartości maksymalnej,

  • Grid Visible - pokaż siatkę,

  • Label Visible - pokaż id węzła dla wybranego obszaru diagramu lift,

  • Positive Target Value - wybierz pozytywną kategorię targetu,

  • Training Set Mode - reguluje jak będzie wyświetlany lift dla zbioru treningowego.

Statystki podstawowe, węzły i predyktory

Rozdział ten pokazuje, jak istniejący model drzewa może być oglądany. Przeglądanie jest możliwe zarówno za pomocą okna właściwości jak i z użyciem języka skryptowego. W celu zapoznania się ze szczegółowym opisem wszystkich obszarów i właściwości modelu drzew, należy odwołać się do dokumentacji JavaDoc dla pakietu biz.sc.mm.dm.modelstats.tree . Stworzony model, jak każdy w AdvancedMiner, zawiera function settings, signature, oraz statystki modelu jak pokazane zostało na rysunku poniżej.

Rysunek 19.19. Utworzony model w Oknie Projektów

Utworzony model w Oknie Projektów

Każdy obiekt może być przeglądany za pomocą okna właściwości. Rysunek poniżej pokazuje statystyki dla przykładowego modelu. Obiekt zawiera informacje podsumowujące strukturę drzewa.

Rysunek 19.20. Statystki modelu

Statystki modelu

Obiekt statystyk modelu dla modelu drzew (interfejs TreeModelStatistics) posiada kilka specyficzny węzłów potomnych. Węzeł AllLeaves jest listą wszystkich węzłów końcowych w drzewie. Węzeł AllNodes zawiera wszystkie węzły pozostałe po przycięciu drzewa. Węzeł Root pozwala na dostęp do korzenia drzewa i wszystkich jego potomków.

Węzły także mają właściwości, jak zostało to pokazane na rysunku poniżej:

Rysunek 19.21. Okno właściwości dla węzła 2 z poprzedniego rysunku.

Okno właściwości dla węzła 2 z poprzedniego rysunku.

Zobacz także animację: Praca ze statystykami modelu drzewa.

Stworzony model drzewa klasyfikacyjnego jest edytowalny. Istnieje możliwość zmiany węzłów, poddrzew, i podziałów w istniejącym modelu. Zmiany te są w pełni uwzględniane podczas stosowania modelu, testowania i generowania kodu scoringowego. Poniżej znajduje się lista dostępnych operacji (nie wszystkie z nich mogą być przeprowadzone przy użyciu edytora graficznego, kilka z nich wymagają użycia języka skryptowego Gython).

  • przycinanie węzłów

  • zmiana progu podziału dla atrybutu numerycznego lub zmiana kategorii dla podziału na zmiennej kategorycznej

  • kopiowanie części drzewa z jednego modelu do drugiego

  • zmiana poziomów target dla liści (używanych jako prawdopodobieństwo aposteriori)

Statystyka istotności

Jak wspomniano we Wprowadzeniu, drzewa klasyfiakcyjne mogą pomóc w analizie istotności atrybutów. Odpowiednie statystyki mogą być odnalezione w węźle/obiekcie Signature .

Rysunek 19.22. Obiekt Signature w modelu drzewa.

Obiekt Signature w modelu drzewa.

Następujące statystyki istotności modelu są dostępne:

Dla danego atrybutu V współczynnik istotności G określany jest jako:

gdzie

- wszystkie węzły uzyskane po podziale na atrybucie V

- ilość obserwacji w i-tym węźle

- ocena wartości podziału dla i-tego węzła (np. wartość współczynnika gainRatio)

Ilość podziałów do których wykorzystano atrybut V

Średnia ilość obserwacji w węzłach uzyskanych przez podział na atrybucie V.

Średni poziom na których wykonano podział z wykorzystaniem atrybutu V.