Mierzenie wydajności krzyżowej walidacji

Uczenie maszynowe w tidyverse

Dmitriy (Dima) Gorenshteyn

Lead Data Scientist, Memorial Sloan Kettering Cancer Center

Mierzenie wydajności

Uczenie maszynowe w tidyverse

Mierzenie wydajności – prawda

Uczenie maszynowe w tidyverse

Mierzenie wydajności – prawda

Uczenie maszynowe w tidyverse

Mierzenie wydajności – prawda

Uczenie maszynowe w tidyverse

Mierzenie wydajności – prognozowanie

Uczenie maszynowe w tidyverse

Mierzenie wydajności – prognozowanie

Uczenie maszynowe w tidyverse

Mierzenie wydajności – prognozowanie

Uczenie maszynowe w tidyverse

Mierzenie wydajności

Uczenie maszynowe w tidyverse

Średni błąd bezwzględny

Uczenie maszynowe w tidyverse

Składniki pomiaru wydajności

1) Rzeczywiste wartości life_expectancy
2) Przewidywane wartości life_expectancy
3) Metryka do porównania 1) i 2)

Uczenie maszynowe w tidyverse

1) Wyodrębnienie wartości rzeczywistych

cv_prep_lm <- cv_models_lm %>% 
  mutate(validate_actual = map(validate, ~.x$life_expectancy))
Uczenie maszynowe w tidyverse

Funkcje predict() i map2()

predict(model, data)
map2(.x = model, .y = data, .f = ~predict(.x, .y))
Uczenie maszynowe w tidyverse

2) Przygotowanie wartości przewidywanych

cv_prep_lm <- cv_eval_lm %>% 
  mutate(validate_actual = map(validate, ~.x$life_expectancy),
         validate_predicted = map2(model, validate, ~predict(.x, .y)))
Uczenie maszynowe w tidyverse

3) Obliczanie MAE

library(Metrics)
cv_eval_lm <- cv_prep_lm %>% 
  mutate(validate_mae = map2_dbl(validate_actual, validate_predicted, 
                                ~mae(actual = .x, predicted = .y)))

cv_eval_lm
#  5-fold cross-validation 
# A tibble: 5 x 8
splits       id    train validate model validate_a. validate_p validate_mae
<S3: rsplit> Fold1 <tib. <tib.   <S3.   <dbl.       <dbl.       1.47
<S3: rsplit> Fold2 <tib. <tib.   <S3.   <dbl.       <dbl.       1.51
<S3: rsplit> Fold3 <tib. <tib.   <S3.   <dbl.       <dbl.       1.44
<S3: rsplit> Fold4 <tib. <tib.   <S3.   <dbl.       <dbl.       1.48
<S3: rsplit> Fold5 <tib. <tib.   <S3.   <dbl.       <dbl.       1.68
Uczenie maszynowe w tidyverse

Czas na ćwiczenia!

Uczenie maszynowe w tidyverse

Preparing Video For Download...