ÎncepețiÎncepe gratuit

Compararea RMSE și a erorii pătratice medii relative

În acest exercițiu, vei demonstra că aplicarea transformării logaritmice asupra unei variabile de tip monetar înainte de modelare îmbunătățește eroarea relativă medie (dar crește RMSE) față de modelarea directă a valorii monetare. Vei compara rezultatele modelului model.log din exercițiul anterior cu un model (model.abs) care aproximează venitul în mod direct.

Seturile de date income_train și income_test au fost preîncărcate, împreună cu modelul tău, model.log.

Disponibil și:

  • model.abs: un model care aproximează direct venitul în funcție de variabilele de intrare, folosind formula

    Income2005 ~ Arith + Word + Parag + Math + AFQT

Acest exercițiu face parte din cursul

Învățare supervizată în R: Regresia

Vezi cursul

Instrucțiuni pentru exercițiu

  • Completează spațiile libere pentru a adăuga predicțiile modelelor în income_test.
    • Nu uita să aplici funcția exponențială predicțiilor din model.log pentru a anula transformarea logaritmică!
  • Completează spațiile libere pentru a aplica pivot_longer() predicțiilor și a calcula reziduurile și eroarea relativă.
  • Completează spațiile libere pentru a calcula RMSE și RMSE relativ pentru predicții.
    • Care model are o eroare absolută mai mare? Dar o eroare relativă mai mare?

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# fmla.abs is available
fmla.abs

# model.abs is available
summary(model.abs)

# Add predictions to the test set
income_test <- income_test %>%
  mutate(pred.absmodel = ___(___, income_test),        # predictions from model.abs
         pred.logmodel = ___(___(___, income_test)))   # predictions from model.log

# pivot_longer the predictions and calculate residuals and relative error
income_long <- income_test %>% 
  pivot_longer(names_to = 'modeltype', values_to = 'pred', cols=c('pred.absmodel', 'pred.logmodel')) %>%
  mutate(residual = ___,   # residuals
         relerr   = ___)   # relative error

# Calculate RMSE and relative RMSE and compare
income_long %>% 
  group_by(modeltype) %>%      # group by modeltype
  summarize(rmse     = ___,    # RMSE
            rmse.rel = ___)    # Root mean squared relative error
Editează și rulează codul