Aan de slagGa gratis aan de slag

Evalueer een model met een train/test-split

Nu ga je het model mpg_model testen op de testdata, mpg_test. De functies rmse() en r_squared() om RMSE en R-squared te berekenen zijn voor het gemak beschikbaar gesteld:

rmse(predcol, ycol)
r_squared(predcol, ycol)

waarbij:

  • predcol: de voorspelde waarden
  • ycol: de daadwerkelijke uitkomst

Je maakt ook een plot van de voorspellingen versus de uitkomst.

Over het algemeen presteren modellen beter op de trainingsdata dan op de testdata (al kan de testset soms "geluk" hebben). Een klein verschil in performance is prima; als de performance op training veel beter is, is er een probleem.

De dataframes mpg_train en mpg_test, en het model mpg_model zijn al vooraf geladen, net als de functies rmse() en r_squared().

Deze oefening maakt deel uit van de cursus

Supervised Learning in R: Regressie

Cursus bekijken

Oefeninstructies

  • Voorspel de stadsbrandstofefficiëntie uit hwy op de data mpg_train. Sla de voorspellingen op in de kolom pred.
  • Voorspel de stadsbrandstofefficiëntie uit hwy op de data mpg_test. Sla de voorspellingen op in de kolom pred.
  • Gebruik rmse() om de RMSE voor zowel de test- als trainingset te evalueren. Vergelijk. Lijken de prestaties op elkaar?
  • Doe hetzelfde met r_squared(). Lijken de prestaties op elkaar?
  • Gebruik ggplot2 om de voorspellingen uit te zetten tegen cty op de test-data.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Examine the objects that have been loaded
ls.str()

# predict cty from hwy for the training set
mpg_train$pred <- ___

# predict cty from hwy for the test set
mpg_test$pred <- ___

# Evaluate the rmse on both training and test data and print them
(rmse_train <- ___)
(rmse_test <- ___)


# Evaluate the r-squared on both training and test data.and print them
(rsq_train <- ___)
(rsq_test <- ___)

# Plot the predictions (on the x-axis) against the outcome (cty) on the test data
ggplot(___, aes(x = ___, y = ___)) + 
  geom_point() + 
  geom_abline()
Code bewerken en uitvoeren