Prediktera och utvärdera

Maskininlärning med trädbaserade modeller i R

Sandro Raabe

Data Scientist

Prediktera på ny data

Generellt anrop:
predict(model, new_data, type)
Argument:
  1. Tränad modell
  2. Datamängd att prediktera på
  3. Prediktionstyp: etiketter eller sannolikheter
Maskininlärning med trädbaserade modeller i R

Prediktera på ny data

predict(model, new_data = test_data, 
               type = "class")
  .pred_class
  <fct>      
1 no         
2 no         
3 yes        
4 no
predict(model, new_data = test_data, 
               type = "prob")
     .pred_no  .pred_yes
     <dbl>     <dbl>
1    0.866     0.134
2    0.956     0.044
3    0.672     0.328
4    0.877     0.123
Maskininlärning med trädbaserade modeller i R

Konfusionsmatris

confusion_matrix_1

  • Visar hur ofta modellen förväxlar klasser
Maskininlärning med trädbaserade modeller i R

Konfusionsmatris

confusion_matrix_2

Maskininlärning med trädbaserade modeller i R

Konfusionsmatris

confusion_matrix_3

Maskininlärning med trädbaserade modeller i R

Konfusionsmatris

confusion_matrix_4

  • Diagonal: korrekta prediktioner
  • Utanför diagonalen: felaktiga prediktioner
Maskininlärning med trädbaserade modeller i R

Konfusionsmatris

 

  • TP: prediktion är yes, sanning är yes
  • TN: prediktion är no, sanning är no
  • FP: prediktion är yes, sanning är no
  • FN: prediktion är no, sanning är yes

confusion_matrix_4

Maskininlärning med trädbaserade modeller i R

Skapa konfusionsmatrisen

# Combine predictions and truth values
pred_combined <- predictions %>% 
   mutate(true_class = test_data$outcome)

pred_combined
  .pred_class  true_class
  <fct>        <fct>     
1 no           no        
2 no           yes       
3 no           no        
4 yes          yes
# Calculate the confusion matrix
conf_mat(data = pred_combined,

estimate = .pred_class,
truth = true_class)
             Truth
Prediction    no   yes
        no   116    31
       yes    12    40
Maskininlärning med trädbaserade modeller i R

Noggrannhet

  $$\text{accuracy} = \frac{\text{n of correct predictions}}{\text{n of total predictions}}$$

  • Funktionsnamn: accuracy()
  • Samma argument som conf_mat()
    • data, estimate och truth
    • Gemensam struktur i yardstick
accuracy(pred_combined,
         estimate = .pred_class,
         truth = true_class)
  .metric     .estimate
  <chr>           <dbl>
1 accuracy        0.708
Maskininlärning med trädbaserade modeller i R

Nu kör vi en övning!

Maskininlärning med trädbaserade modeller i R

Preparing Video For Download...