用 Random Forest 做分類

Tidyverse 的 Machine Learning

Dmitriy (Dima) Gorenshteyn

Lead Data Scientist, Memorial Sloan Kettering Cancer Center

用 ranger() 做分類

cv_tune <- cv_data %>%
  crossing(mtry = c(2, 4, 8, 16)) 

cv_models_rf <- cv_tune %>% 
  mutate(model = map2(train, mtry, ~ranger(formula = Attrition~., 
                                           data = .x, mtry = .y,
                                           num.trees = 100, seed = 42)))
Tidyverse 的 Machine Learning

1)準備實際類別

離職 類別
Yes TRUE
No FALSE
validate$Attrition
No  No  No  No  No  Yes No  Yes ... No  No  No
validate_actual <- validate$Attrition == "Yes"
validate_actual 
FALSE FALSE FALSE FALSE FALSE  TRUE FALSE  TRUE ... FALSE FALSE FALSE
Tidyverse 的 Machine Learning

2)準備預測類別

P(離職) 類別
Yes TRUE
No FALSE
validate_classes <- predict(rf_model, rf_validate)$predictions
validate_classes
No  No  No  No  No  Yes No  No ... No  No  No
validate_predicted <- validate_classes == "Yes"
validate_predicted
FALSE FALSE FALSE FALSE FALSE  TRUE FALSE FALSE ... FALSE FALSE FALSE
Tidyverse 的 Machine Learning

建立最佳離職模型

Tidyverse 的 Machine Learning

Preparing Video For Download...