Witamy na kursie!

Uczenie maszynowe z modelami drzewiastymi w R

Sandro Raabe

Data Scientist

Przegląd kursu

 

  • Rozdział 1: Drzewa klasyfikacyjne
  • Rozdział 2: Drzewa regresji, walidacja krzyżowa, kompromis obciążenie-wariancja
  • Rozdział 3: Strojenie hiperparametrów, bagging, lasy losowe
  • Rozdział 4: Drzewa wzmacniane
Uczenie maszynowe z modelami drzewiastymi w R

Drzewa decyzyjne to schematy blokowe

Schemat blokowy zwierząt

1 https://aca.edu.au/resources/decision-trees-classifying-animals/decision-trees.pdf
Uczenie maszynowe z modelami drzewiastymi w R

Zalety modeli opartych na drzewach

  • Łatwe do wyjaśnienia i zrozumienia
  • Możliwość uchwycenia nieliniowych zależności
  • Nie wymagają normalizacji ani standaryzacji cech numerycznych
  • Nie trzeba tworzyć zmiennych wskaźnikowych
  • Odporne na wartości odstające
  • Szybkie dla dużych zbiorów danych
Uczenie maszynowe z modelami drzewiastymi w R

Wady modeli opartych na drzewach

  • Trudne w interpretacji, gdy są duże, głębokie lub łączone
  • Wysoka wariancja, złożone drzewa podatne na przeuczenie
Uczenie maszynowe z modelami drzewiastymi w R

Zrzut ekranu tidymodels

Uczenie maszynowe z modelami drzewiastymi w R

Pakiet tidymodels

library(tidymodels)
-- Attaching packages -------------------- tidymodels 0.1.4 --
v parsnip   0.2.1      v rsample   0.1.1 
v dplyr     1.0.9      v tibble    3.1.7 
v yardstick 0.0.9      v tune      0.1.6
Uczenie maszynowe z modelami drzewiastymi w R

Tworzenie drzewa decyzyjnego

Specyfikacja / projekt funkcjonalny

 1. Wybór klasy modelu

library(tidymodels)

decision_tree()
Decision Tree Model Specification (unknown)
Uczenie maszynowe z modelami drzewiastymi w R

Tworzenie drzewa decyzyjnego

 2. Ustawienie silnika modelu

library(tidymodels)

decision_tree() %>% 
    set_engine("rpart")
Decision Tree Model Specification (unknown)

Computational engine: rpart
Uczenie maszynowe z modelami drzewiastymi w R

Tworzenie drzewa decyzyjnego

 3. Ustawienie trybu (klasyfikacja lub regresja)

library(tidymodels)

decision_tree() %>% 
     set_engine("rpart") %>% 
     set_mode("classification")
Decision Tree Model Specification (classification)

Computational engine: rpart
Uczenie maszynowe z modelami drzewiastymi w R

Od specyfikacji do gotowego modelu

Specyfikacja to szkielet wymagający danych do trenowania
library(tidymodels)
tree_spec <- decision_tree() %>% 
               set_engine("rpart") %>% 
               set_mode("classification")
# A model specification is fit using a formula to training data
tree_spec %>%           
  fit(formula = outcome ~ age + bmi,  
      data = diabetes)
parsnip model object
Fit time: 19 ms 
n = 652
Uczenie maszynowe z modelami drzewiastymi w R

Zbudujmy model!

Uczenie maszynowe z modelami drzewiastymi w R

Preparing Video For Download...