Kredi kabul oranları

Python ile Kredi Riski Modellemesi

Michael Crabtree

Data Scientist, Ford Motor Company

Eşikler ve kredi durumu

  • Önceden bir prob_default aralığı için eşik belirledik
    • Bu, kredinin tahmin edilen loan_status değerini değiştirmek için kullanıldı
preds_df['loan_status'] = preds_df['prob_default'].apply(lambda x: 1 if x > 0.4 else 0)
Loan prob_default threshold loan_status
1 0.25 0.4 0
2 0.42 0.4 1
3 0.75 0.4 1
Python ile Kredi Riski Modellemesi

Eşikler ve kabul oranı

  • Daha iyi eşikler için model tahminlerini kullanın
    • Yeni kredileri onaylamak veya reddetmek için de kullanılabilir
  • Tüm yeni kredilerde, olası temerrütleri reddetmek isteriz
    • Test verisini yeni kredilere örnek olarak kullanın
  • Kabul oranı: portföydeki temerrütleri düşük tutmak için kabul edilen yeni kredilerin yüzdesi
    • Kabul edilip temerrüde düşen krediler, yanlış negatiflere benzer etkiye sahiptir
Python ile Kredi Riski Modellemesi

Kabul oranını anlama

  • Örnek: En düşük prob_default değerine sahip kredilerin %85'ini kabul et

Tahmin olasılıklarının dağılım histogramı

Python ile Kredi Riski Modellemesi

Eşiği hesaplama

  • %85 kabul oranı için eşik değerini hesaplayın
import numpy as np
# Compute the threshold for 85% acceptance rate
threshold = np.quantile(prob_default, 0.85)
0.804
Loan prob_default Threshold Predicted loan_status Accept or Reject
1 0.65 0.804 0 Accept
2 0.85 0.804 1 Reject
Python ile Kredi Riski Modellemesi

Hesaplanan eşiği uygulama

  • Yeni eşiği kullanarak loan_status değerlerini yeniden atayın
# Compute the quantile on the probabilities of default
preds_df['loan_status'] = preds_df['prob_default'].apply(lambda x: 1 if x > 0.804 else 0)
Python ile Kredi Riski Modellemesi

Kötü Oran

  • Hesaplanan eşik olsa da, kabul edilen bazı krediler temerrüde düşer
  • Bunlar, modelimizin iyi kalibre edilmediği prob_default eşiğine yakın kredilerdir

Kötü oranı vurgulanmış kabul edilen krediler çubuğu

Python ile Kredi Riski Modellemesi

Kötü oran hesabı

Kötü oran formülü

#Calculate the bad rate
np.sum(accepted_loans['true_loan_status']) / accepted_loans['true_loan_status'].count()
  • Temerrüt değil 0, temerrüt 1 ise, sum() temerrüt sayısıdır
  • Tek bir sütunun .count() değeri, veri çerçevesinin satır sayısıyla aynıdır
Python ile Kredi Riski Modellemesi

Haydi pratik yapalım!

Python ile Kredi Riski Modellemesi

Preparing Video For Download...