Bem-vindo/a ao curso!

Machine Learning com modelos baseados em árvores em R

Sandro Raabe

Data Scientist

Visão geral do curso

 

  • Capítulo 1: Árvores de classificação
  • Capítulo 2: Árvores de regressão, validação cruzada, trade-off viés-variância
  • Capítulo 3: Ajuste de hiperparâmetros, bagging, random forests
  • Capítulo 4: Árvores com boosting
Machine Learning com modelos baseados em árvores em R

Árvores de decisão são fluxogramas

fluxograma_de_animais

1 https://aca.edu.au/resources/decision-trees-classifying-animals/decision-trees.pdf
Machine Learning com modelos baseados em árvores em R

Vantagens dos modelos baseados em árvores

  • Fáceis de explicar e entender
  • Capturam relações não lineares
  • Não exigem normalização ou padronização de variáveis numéricas
  • Dispensa criar variáveis dummies
  • Robustas a outliers
  • Rápidas em conjuntos de dados grandes
Machine Learning com modelos baseados em árvores em R

Desvantagens dos modelos baseados em árvores

  • Difíceis de interpretar quando grandes, profundas ou em ensemble
  • Alta variância: árvores complexas tendem a overfitting
Machine Learning com modelos baseados em árvores em R

captura_tidymodels

Machine Learning com modelos baseados em árvores em R

O pacote 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
Machine Learning com modelos baseados em árvores em R

Crie uma árvore de decisão

Especificação / design funcional

 1. Escolha uma classe de modelo

library(tidymodels)

decision_tree()
Decision Tree Model Specification (unknown)
Machine Learning com modelos baseados em árvores em R

Crie uma árvore de decisão

 2. Defina o engine que executa seu modelo

library(tidymodels)

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

Computational engine: rpart
Machine Learning com modelos baseados em árvores em R

Crie uma árvore de decisão

 3. Defina o modo (classificação ou regressão)

library(tidymodels)

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

Computational engine: rpart
Machine Learning com modelos baseados em árvores em R

De uma especificação a um modelo real

A especificação é um esqueleto e precisa de dados para treinar
library(tidymodels)
tree_spec <- decision_tree() %>% 
               set_engine("rpart") %>% 
               set_mode("classification")
# Uma especificação de modelo é ajustada usando uma fórmula e dados de treino
tree_spec %>%           
  fit(formula = outcome ~ age + bmi,  
      data = diabetes)
parsnip model object
Fit time: 19 ms 
n = 652
Machine Learning com modelos baseados em árvores em R

Vamos criar um modelo!

Machine Learning com modelos baseados em árvores em R

Preparing Video For Download...