MulaiMulai sekarang secara gratis

Membandingkan fungsi taut untuk sebuah cut-off tertentu

Pada latihan terakhir ini, Anda akan memasang model menggunakan masing-masing dari tiga fungsi taut (logit, probit, dan cloglog), membuat prediksi untuk himpunan uji, mengklasifikasikan prediksi ke grup yang sesuai (gagal bayar versus tidak gagal bayar) untuk sebuah nilai cut-off tertentu, membuat confusion matrix, serta menghitung akurasi dan sensitivitas untuk masing-masing model berdasarkan nilai cut-off tersebut! Wah, sejauh ini Anda telah banyak belajar. Terakhir, Anda akan mencoba mengidentifikasi model yang berkinerja terbaik dari sisi akurasi untuk nilai cut-off tersebut!

Penting untuk diketahui bahwa perbedaan antar model umumnya akan sangat kecil, dan sekali lagi, hasilnya akan bergantung pada nilai cut-off yang dipilih. Hasil aktual (gagal bayar versus tidak gagal bayar) tersimpan dalam true_val di konsol.

Latihan ini adalah bagian dari kursus

Pemodelan Risiko Kredit di R

Lihat Kursus

Petunjuk latihan

  • Pasang tiga model regresi logistik menggunakan link logit, probit, dan cloglog. Sebagian kode telah diberikan. Gunakan age, emp_cat, ir_cat, dan loan_amnt sebagai prediktor.
  • Buat prediksi untuk semua model menggunakan test_set.
  • Gunakan nilai cut-off sebesar 14% untuk membuat prediksi bagi tiap model, agar kinerjanya dapat dievaluasi.
  • Buat confusion matrix untuk ketiga model.
  • Terakhir, hitung akurasi klasifikasi untuk ketiga model.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Fit the logit, probit and cloglog-link logistic regression models
log_model_logit <- glm(loan_status ~ age + emp_cat + ir_cat + loan_amnt,
                       family = binomial(link = logit), data = training_set)
log_model_probit <- 

log_model_cloglog <-  
  
# Make predictions for all models using the test set
predictions_logit <- predict(log_model_logit, newdata = test_set, type = "response")
predictions_probit <- 
predictions_cloglog <- 
  
# Use a cut-off of 14% to make binary predictions-vectors
cutoff <- 0.14
class_pred_logit <- ifelse(predictions_logit > cutoff, 1, 0)
class_pred_probit <- 
class_pred_cloglog <- 
  
# Make a confusion matrix for the three models
tab_class_logit <- table(true_val,class_pred_logit)
tab_class_probit <- 
tab_class_cloglog <- 
  
# Compute the classification accuracy for all three models
acc_logit <- sum(diag(tab_class_logit)) / nrow(test_set)
acc_probit <- 
acc_cloglog <- 
Edit dan Jalankan Kode