Ocena i wdrożenie modelu

Modelowanie ryzyka kredytowego w Pythonie

Michael Crabtree

Data Scientist, Ford Motor Company

Porównywanie raportów klasyfikacji

  • Wygeneruj raporty za pomocą classification_report() i porównaj je

Raport klasyfikacji dla regresji logistycznej i drzewa gradientowego

Wzór na wynik F1 i średnią makro F1

Modelowanie ryzyka kredytowego w Pythonie

Analiza ROC i AUC

  • Modele o lepszej wydajności mają większy przyrost (lift)
  • Większy lift oznacza wyższy wynik AUC

Przykładowy wykres ROC dla dwóch modeli

Modelowanie ryzyka kredytowego w Pythonie

Kalibracja modelu

  • Prawdopodobieństwo niewykonania zobowiązania (PD) powinno odzwierciedlać poziom pewności modelu
    • PD zawiera pewien stopień niepewności w prognozach
  • Średnie prognozowane PD dla próbki pożyczek powinno być bliskie rzeczywistemu odsetkowi niewykonania zobowiązań w tej próbce
Próbka pożyczek Średnie prognozowane PD Rzeczywisty odsetek niewykonania zobowiązań Skalibrowane?
10 0.12 0.12 Tak
10 0.25 0.65 Nie
1 http://datascienceassn.org/sites/default/files/Predicting%20good%20probabilities%20with%20supervised%20learning.pdf
Modelowanie ryzyka kredytowego w Pythonie

Obliczanie kalibracji

  • Pokazuje odsetek rzeczywistych niewykonanych zobowiązań dla każdego prognozowanego prawdopodobieństwa
  • W praktyce jest to wykres liniowy wyników calibration_curve()
from sklearn.calibration import calibration_curve
calibration_curve(y_test, probabilities_of_default, n_bins = 5)
# Fraction of positives
(array([0.09602649, 0.19521012, 0.62035996, 0.67361111]),
# Average probability
 array([0.09543535, 0.29196742, 0.46898465, 0.65512207]))
Modelowanie ryzyka kredytowego w Pythonie

Rysowanie krzywych kalibracji

plt.plot(mean_predicted_value, fraction_of_positives, label="%s" % "Example Model")

Przykład krzywej kalibracji

Modelowanie ryzyka kredytowego w Pythonie

Analiza krzywych kalibracji

  • Przykładowo: dwa zdarzenia wybrane (powyżej i poniżej linii idealnej)

Krzywa kalibracji z dwoma przykładami nieskalibrowanych prognoz

Modelowanie ryzyka kredytowego w Pythonie

Interpretacja krzywej kalibracji

Krzywa kalibracji z przykładem powyżej linii

Modelowanie ryzyka kredytowego w Pythonie

Interpretacja krzywej kalibracji

Krzywa kalibracji z przykładem poniżej linii

Modelowanie ryzyka kredytowego w Pythonie

Czas na ćwiczenia!

Modelowanie ryzyka kredytowego w Pythonie

Preparing Video For Download...