信用モデルのクロスバリデーション
クレジットローンとそのデータは時間とともに変化し、現在のテストセットに読み込まれているものと常に同じとは限りません。そこで、元の X_train と y_train から作られた、より小さな学習・テストセットを複数試すためにクロスバリデーションを使います。
XGBoost の関数 cv() を使ってクロスバリデーションを実行してください。テストデータで使うために、cv() のパラメータをすべて設定する必要があります。
ワークスペースにはデータセット X_train、y_train、学習済みモデル gbt、そして演習の読み込み時に表示されるパラメータ辞書 params が用意されています。
この演習はコースの一部です
Pythonで学ぶクレジットリスクモデリング
演習の手順
- 分割数を
5、早期終了を10に設定し、それぞれn_folds、early_stoppingとして保存します。 - 学習データを使って行列オブジェクト
DTrainを作成します。 params、分割数、早期終了のオブジェクトを指定してcv()を実行し、結果をcv_dfに保存します。cv_dfの中身を出力します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Set the values for number of folds and stopping iterations
____ = ____
____ = ____
# Create the DTrain matrix for XGBoost
____ = xgb.____(____, label = ____)
# Create the data frame of cross validations
____ = xgb.cv(____, ____, num_boost_round = 5, nfold=____,
early_stopping_rounds=____)
# Print the cross validations data frame
____(____)