Generalização do modelo: bootstrapping e validação cruzada

Praticando perguntas de entrevista de Machine Learning em Python

Lisa Stuart

Data Scientist

Visão geral do Capítulo 4

  • Bootstrapping/validação cruzada --> generalização do modelo
  • Classes desbalanceadas
  • Features correlacionadas
  • Seleção de modelo em ensemble
Praticando perguntas de entrevista de Machine Learning em Python

Generalização do modelo

  • Capacidade de um modelo de ML de ir bem em dados não vistos
    • conjunto de teste
    • dados futuros
  • Métricas de treino $\approx$ métricas de teste
  • Modelos overfit não generalizam
Praticando perguntas de entrevista de Machine Learning em Python

Árvore de decisão

Gráfico de árvore de decisão

1 https://medium.com/@rnbrown/creating-and-visualizing-decision-trees-with-python-f8e8fa394176
Praticando perguntas de entrevista de Machine Learning em Python

Nós da árvore de decisão

Nó raiz da árvore de decisão

Praticando perguntas de entrevista de Machine Learning em Python

Vantagens vs desvantagens

Gráfico de árvore de decisão

  • Vantagens:
    • Fácil de entender
    • Fácil de visualizar
  • Desvantagens:
    • Overfit com facilidade
    • Considerada gananciosa
    • Tendenciosa em casos de desbalanceamento de classes
Praticando perguntas de entrevista de Machine Learning em Python

Random Forest

Random Forest

1 https://www.researchgate.net/figure/Random-Forest-visualization_fig11_326560291
Praticando perguntas de entrevista de Machine Learning em Python

Validação cruzada k-fold

Validação cruzada k-fold

1 https://scikit-learn.org/stable/modules/cross_validation.html
Praticando perguntas de entrevista de Machine Learning em Python

Funções

# decision tree
`sklearn.tree.DecisionTreeClassifier` 

# random forest 
`sklearn.ensemble.RandomForestClassifier`

# cross-validated grid search
`sklearn.model_selection.GridSearchCV` 

# model accuracy
`sklearn.metrics.accuracy_score` 

# train/test split function
`sklearn.model_selection.train_test_split`

# Parameters that gave best results
`cross-val_model.best_params_`

# Mean cross-validated score of 
# estimator with best params 
`cross-val_model.best_score_`
Praticando perguntas de entrevista de Machine Learning em Python

GridSearchCV vs RandomSearchCV

Busca em grade

Praticando perguntas de entrevista de Machine Learning em Python

Vamos praticar!

Praticando perguntas de entrevista de Machine Learning em Python

Preparing Video For Download...