ComeçarComece de graça

Comparando RMSE e root-mean-squared Relative Error

Neste exercício, você vai mostrar que aplicar transformação logarítmica na variável monetária de saída antes de modelar melhora o erro relativo médio (mas aumenta o RMSE) em comparação a modelar a saída monetária diretamente. Você vai comparar os resultados de model.log, do exercício anterior, com um modelo (model.abs) que ajusta a renda diretamente.

Os conjuntos income_train e income_test já foram carregados, assim como o seu modelo model.log.

Também disponível:

  • model.abs: um modelo que ajusta a renda diretamente aos preditores usando a fórmula

    Income2005 ~ Arith + Word + Parag + Math + AFQT

Este exercício faz parte do curso

Aprendizado Supervisionado em R: Regressão

Ver curso

Instruções do exercício

  • Preencha os espaços em branco para adicionar as previsões dos modelos ao income_test.
    • Não se esqueça de aplicar a exponencial às previsões de model.log para desfazer a transformação log!
  • Preencha os espaços em branco para usar pivot_longer() nas previsões e calcular os resíduos e o erro relativo.
  • Preencha os espaços em branco para calcular o RMSE e o RMSE relativo das previsões.
    • Qual modelo tem erro absoluto maior? E erro relativo maior?

Exercício interativo prático

Experimente este exercício completando este código de exemplo.

# 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
Editar e executar o código