Reutilizando um trainControl

Machine Learning com caret em R

Max Kuhn

Software Engineer at RStudio and creator of caret

Um exemplo do mundo real

  • Dados: churn de clientes em uma operadora
  • Treinar vários modelos e escolher o melhor
  • Modelos devem usar os mesmos splits de treino/teste
  • Criar um objeto trainControl compartilhado
Machine Learning com caret em R

Exemplo: dados de churn de clientes

# Summarize the target variables
library(caret)
library(C50)
data(churn)
table(churnTrain$churn) / nrow(churnTrain)
      yes        no 
0.1449145 0.8550855 
Machine Learning com caret em R

Exemplo: dados de churn de clientes

# Create train/test indexes
set.seed(42)
myFolds <- createFolds(churnTrain$churn, k = 5)
# Compare class distribution
i <- myFolds$Fold1
table(churnTrain$churn[i]) / length(i)
      yes        no 
0.1441441 0.8558559
Machine Learning com caret em R

Exemplo: dados de churn de clientes

myControl <- trainControl(
  summaryFunction = twoClassSummary,
  classProbs = TRUE,
  verboseIter = TRUE,
  savePredictions = TRUE,
  index = myFolds
)
  • Usar os folds para criar um objeto trainControl
  • Exatamente os mesmos folds de validação cruzada para cada modelo
Machine Learning com caret em R

Vamos praticar!

Machine Learning com caret em R

Preparing Video For Download...