Örnek-dışı (out-of-sample) model uyumunu değerlendirme
Artık örnek-içi (in-sample) uyuma bakmaktansa örnek-dışı (out-of-sample) model uyumuna bakmanın daha mantıklı olduğunu biliyorsun. Bu egzersizde bu yüzden örnek-dışı bir doğruluk ölçüsü elde etmek istiyorsun.
Bundan önce, bazı hazırlık adımlarını yapman gerekecek. defaultData’yı tekrar kullan. logitModelNew ortamına zaten yüklenmiş durumda.
Tam bir analiz için her zaman farklı model adaylarını da (özellikle) örnek-dışı verilerle karşılaştırman gerektiğini unutma.
Örnek-içi doğruluk — 0.3’lük optimal eşik değeri kullanıldığında — 0.7922901.
Aşırı uyum (overfitting) olup olmadığını anladığından emin ol.
Bu egzersiz
R ile Pazarlama Analitiği için Machine Learning
kursunun bir parçasıdırEgzersiz talimatları
İlk olarak, veri kümesini rastgele eğitim ve test kümelerine ayır. Eğitim kümesi toplam verinin 2/3’ünü içermelidir.
Sonra, modeli hızlıca çalıştır ve adını
logitTrainNewkoy. Verilen formülü kullan.Test kümesi üzerinde tahminler yap ve ardından bir karmaşıklık matrisi yardımıyla örnek-dışı doğruluğu hesapla.
SDMToolsartık CRAN’dan indirilemiyor. Kendi bilgisayarın için bunun yerineremotes::install_version("SDMTools", "1.1-221.2")ile kur.Örnek-dışı doğruluğu, yukarıda verilen örnek-içi değerle karşılaştır.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# Split data in train and test set
set.seed(534381)
defaultData$isTrain <- rbinom(nrow(defaultData), 1, 0.66)
train <- subset(defaultData, ___ == 1)
test <- subset(defaultData, ___ == 0)
logitTrainNew <- glm(formulaLogit, family = binomial, data = ___) # Modeling
test$predNew <- predict(logitTrainNew, type = "response", newdata = ___) # Predictions
# Out-of-sample confusion matrix and accuracy
confMatrixModelNew <- confusion.matrix(___, ___, threshold = 0.3)
sum(diag(confMatrixModelNew)) / sum(confMatrixModelNew) # Compare this value to the in-sample accuracy