IniziaInizia gratis

Valutare un modello con train/test split

Ora testerai il modello mpg_model sui dati di test, mpg_test. Per comodità sono state fornite le funzioni rmse() e r_squared() per calcolare RMSE e R-squared:

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

dove:

  • predcol: i valori predetti
  • ycol: l'output effettivo

Tracerai anche un grafico delle predizioni rispetto all'output.

In generale, le prestazioni del modello sono migliori sui dati di training rispetto ai dati di test (anche se a volte il test set "ha fortuna"). Una piccola differenza nelle prestazioni va bene; se le prestazioni sul training sono significativamente migliori, c'è un problema.

I data frame mpg_train e mpg_test, e il modello mpg_model sono già stati caricati, insieme alle funzioni rmse() e r_squared().

Questo esercizio fa parte del corso

Supervised Learning in R: Regression

Visualizza il corso

Istruzioni dell'esercizio

  • Predici l'efficienza nei consumi in città a partire da hwy sui dati mpg_train. Assegna le predizioni alla colonna pred.
  • Predici l'efficienza nei consumi in città a partire da hwy sui dati mpg_test. Assegna le predizioni alla colonna pred.
  • Usa rmse() per valutare l'RMSE sia per il test set sia per il training set. Confronta. Le prestazioni sono simili?
  • Fai lo stesso con r_squared(). Le prestazioni sono simili?
  • Usa ggplot2 per tracciare le predizioni contro cty sui dati di test.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# 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()
Modifica ed esegui il codice