Xây dựng và đánh giá mô hình với tidymodels

Giảm Chiều Dữ Liệu với R

Matt Pickard

Owner, Pickard Predictives, LLC

Quy trình huấn luyện mô hình

bước đầu của huấn luyện là tách dữ liệu

Giảm Chiều Dữ Liệu với R

Quy trình huấn luyện mô hình

bước hai của huấn luyện là chuẩn bị dữ liệu

Giảm Chiều Dữ Liệu với R

Quy trình huấn luyện mô hình

bước ba của huấn luyện là khớp mô hình

Giảm Chiều Dữ Liệu với R

Quy trình huấn luyện mô hình

bước bốn của huấn luyện là đánh giá mô hình

Giảm Chiều Dữ Liệu với R

Huấn luyện mô hình với tidymodels

tidymodels có hàm để tách dữ liệu thành tập train và test

Giảm Chiều Dữ Liệu với R

Huấn luyện mô hình với tidymodels

các recipe của tidymodels có hàm tạo các bước tiền xử lý dữ liệu

Giảm Chiều Dữ Liệu với R

Huấn luyện mô hình với tidymodels

tidymodels có hàm để khớp nhiều mô hình khác nhau trong workflow

Giảm Chiều Dữ Liệu với R

Tách tập train và test

split <- initial_split(credit_df, prop = 0.8, strata = credit_score)


train <- split %>% training()
test <- split %>% testing()
Giảm Chiều Dữ Liệu với R

Tạo recipe và mô hình

feature_selection_recipe <- 
  recipe(credit_score ~ ., data = train) %>%

step_filter_missing(all_predictors(), threshold = 0.5) %>%
step_scale(all_numeric_predictors()) %>%
step_nzv(all_predictors()) %>%
prep()
lr_model <- logistic_reg() %>%

set_engine("glm")
Giảm Chiều Dữ Liệu với R

Tạo và khớp workflow

credit_wflow <- workflow() %>%

add_recipe(feature_selection_recipe) %>%
add_model(lr_model)
credit_fit <- credit_wflow %>% fit(data = train)
Giảm Chiều Dữ Liệu với R

Đánh giá mô hình

# Dự đoán trên tập test
credit_pred_df <- predict(credit_fit, test) %>% 
  bind_cols(test %>% select(credit_score))


# Đánh giá F score f_meas(credit_pred_df, credit_score, .pred_class)
# A tibble: 1 × 3
  .metric .estimator .estimate
  <chr>   <chr>          <dbl>
1 f_meas  macro          0.519
Giảm Chiều Dữ Liệu với R

Khám phá recipe với tidy()

tidy(feature_selection_recipe, number = 1)
# A tibble: 2 × 2
  terms            id                  
  <chr>            <chr>               
1 age              filter_missing_gVVfc
2 outstanding_debt filter_missing_gVVfc
Giảm Chiều Dữ Liệu với R

Khám phá mô hình với tidy()

# Hiển thị ước lượng mô hình
tidy(credit_fit)
# A tibble: 44 × 5
   term                estimate std.error statistic p.value
   <chr>                  <dbl>     <dbl>     <dbl>   <dbl>
 1 (Intercept)           2.88       0.918    3.13   0.00173
 2 monthAugust          -0.449      0.236   -1.91   0.0565 
 3 monthFebruary        17.7      677.       0.0262 0.979  
 4 monthJanuary         17.7      661.       0.0268 0.979  
 ...                    ...       ...        ...    ... 
Giảm Chiều Dữ Liệu với R

Hãy thực hành!

Giảm Chiều Dữ Liệu với R

Preparing Video For Download...