モデルの評価と実装

Pythonで学ぶクレジットリスクモデリング

Michael Crabtree

Data Scientist, Ford Motor Company

分類レポートの比較

  • classification_report()でレポートを作成し、比較する

ロジスティック回帰と勾配ブースティング木の分類レポート

F1スコアとMacro平均F1の式

Pythonで学ぶクレジットリスクモデリング

ROCとAUCの分析

  • 性能が高いモデルほどリフトが大きい
  • リフトが大きいほどAUCが高い

2つのモデルのROCチャート例

Pythonで学ぶクレジットリスクモデリング

モデルの較正

  • 既定確率がモデルの確信度を正確に表すことが望ましい
    • 既定確率の予測には不確実性がある
  • ローン標本の予測既定確率の平均は、その標本の実際の既定割合に近いべき
ローン標本 予測PD平均 実際の既定割合 較正済み?
10 0.12 0.12 はい
10 0.25 0.65 いいえ
1 http://datascienceassn.org/sites/default/files/Predicting%20good%20probabilities%20with%20supervised%20learning.pdf
Pythonで学ぶクレジットリスクモデリング

較正の計算

  • 各予測確率に対する真の既定割合を表示
  • 実質的には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]))
Pythonで学ぶクレジットリスクモデリング

較正曲線のプロット

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

較正曲線の例

Pythonで学ぶクレジットリスクモデリング

較正曲線の確認

  • 例として、完全一致線の上と下の2点を選択

未較正予測の2例を示す較正曲線

Pythonで学ぶクレジットリスクモデリング

較正曲線の解釈

上側の例を示す較正曲線

Pythonで学ぶクレジットリスクモデリング

較正曲線の解釈

下側の例を示す較正曲線

Pythonで学ぶクレジットリスクモデリング

演習に進みましょう!

Pythonで学ぶクレジットリスクモデリング

Preparing Video For Download...