Rodzaje warunków

Ta jednostka obejmuje różne typy conditions używanych do tworzenia drzew decyzyjnych.

Warunki wyrównane względem osi a warunki skośne

Warunek wyrównany do osi obejmuje tylko jedną cechę. Warunek ukośny obejmuje wiele cech. Na przykład taki warunek jest wyrównany do osi:

num_legs ≥ 2

Warunek skośny jest jednak taki:

num_legs ≥ num_fingers

Często drzewa decyzyjne są trenowane tylko za pomocą warunków wyrównanych do osi. Podziały ukośne są jednak skuteczniejsze, ponieważ mogą przedstawiać bardziej złożone wzorce. Podziały skośne czasem dają lepsze wyniki kosztem wyższych kosztów trenowania i wnioskowania.

Kod YDF
W YDF drzewa decyzyjne są domyślnie trenowane z warunkiem wyrównania do osi. Drzewa decyzyjne ukośne możesz włączyć za pomocą parametru split_axis="SPARSE_OBLIQUE".

Warunek wyrównania do osi to „liczba_etapów >= 3”. Warunek ukośny to „liczba_etapów + waga * 5 >= 12”.

Rysunek 4. Przykłady warunku wyrównanego do osi i warunku ukośnego.

 

Na wykresie 2 poprzednich warunków powstaje taki podział przestrzeni cech:

Wykres wagi i liczby_etapów. Warunek wyrównania do osi nie ignoruje wagi i jest tylko pionową linią. Warunek ukośny pokazuje ujemnie nachyloną linię.

Rysunek 5. Rozdzielenie spacji cech w warunkach opisanych na Rysunku 4.

 

Warunki binarne i niebinarne

Warunki z 2 możliwymi wynikami (np. prawda lub fałsz) są nazywane warunkami binarnymi. Drzewa decyzyjne zawierające tylko warunki binarne są nazywane drzewami decyzyjnymi binarnymi.

Warunki niebinarne mają więcej niż 2 możliwe wyniki. Dlatego warunki niebinarne mają większą moc dyskryminacyjną niż warunki binarne. Decyzje zawierające co najmniej 1 warunek niebinarny są nazywane niebinarnymi drzewami decyzyjnymi.

Porównanie drzew decyzyjnych binarnych i niebinarnych. Binarne drzewo decyzyjne zawiera 2 warunki binarne, a niebinarne drzewo decyzyjne zawiera jeden warunek niebinarny.

Rysunek 6. Drzewa decyzyjne binarne i niebinarne.

 

W warunkach o zbyt dużej mocy może się też okazać, że będzie ona ponad pojemność. Z tego powodu w lasach decyzyjnych stosowane są zazwyczaj drzewa decyzyjne binarne, więc w tym kursie skupimy się właśnie na nich.

Najczęstszym typem warunku jest warunek progowy, który ma postać:

featurethreshold

Na przykład:

num_legs ≥ 2

Istnieją też inne typy warunków. Oto inne często używane typy warunków binarnych:

 

Tabela 2. Typowe rodzaje warunków binarnych.

funkcji Warunek Przykład
warunek progowy $\mathrm{feature}_i \geq \mathrm{threshold}$ $\mathrm{num\_legs} \geq 2$
warunek równości $\mathrm{feature}_i = \mathrm{value}$ $\mathrm{species} = ``kot"$
warunek w zestawie $\mathrm{feature}_i \in \mathrm{collection}$ $\mathrm{species} \in \{``kot", ``pies", ``ptak"\}$
warunek skośny $\sum_{i} \mathrm{weight}_i \mathrm{feature}_i \geq \mathrm{threshold}$ 5 USD \ \mathrm{num\_legs} + 2 \ \mathrm{num\_eyes} \geq 10$
brak funkcji $\mathrm{feature}_i \mathrm{is} \mathrm{brak}$ $\mathrm{num\_legs} \mathrm{is} \mathrm{brak}$