RMSE ve kök-ortalama-karesel Bağıl Hatanın karşılaştırılması
Bu egzersizde, modellemeden önce parasal bir çıktıyı log dönüşümüne tabi tutmanın, parasal çıktıyı doğrudan modellemeye kıyasla ortalama bağıl hatayı iyileştirdiğini (ancak RMSE'yi artırdığını) göstereceksin. Önceki egzersizdeki model.log sonuçlarını, geliri doğrudan uyduran (model.abs) bir modelle karşılaştıracaksın.
income_train ve income_test veri kümeleri, modelin model.log ile birlikte önceden yüklendi.
Ayrıca mevcut:
model.abs: geliri girdilere aşağıdaki formülle doğrudan uyduran bir modelIncome2005 ~ Arith + Word + Parag + Math + AFQT
Bu egzersiz, kursun bir parçasıdır
R'de Supervised Learning: Regresyon
Egzersiz talimatları
- Modellerden gelen tahminleri
income_test'e eklemek için boşlukları doldur.- Log dönüşümünü geri almak için
model.log'dan gelen tahminlerin üstelini almayı unutma!
- Log dönüşümünü geri almak için
- Tahminleri
pivot_longer()ile dönüştürmek ve artıklar ile bağıl hatayı hesaplamak için boşlukları doldur. - Tahminler için RMSE ve bağıl RMSE'yi hesaplamak üzere boşlukları doldur.
- Hangi modelin mutlak hatası daha büyük? Bağıl hatası daha büyük?
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# 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