最適な木を評価する
この演習では、grid_dt の最適モデルについて、テストセットの ROC AUC スコアを評価します。
そのために、まずテストセットの各観測値に対して、陽性ラベルとなる確率を求めます。sklearn の分類器の predict_proba() メソッドを使うと、負例クラスと正例クラスの確率を列ごとに格納した2次元配列を計算できます。
データセットはすでに読み込みと前処理(数値特徴量の標準化)が済んでおり、80% を学習、20% をテストに分割しています。X_test、y_test はワークスペースで利用可能です。さらに、前の演習で作成した学習済みの GridSearchCV オブジェクト grid_dt も読み込まれています。grid_dt は次のように学習されています。
grid_dt.fit(X_train, y_train)
この演習はコースの一部です
Pythonで学ぶ木ベースのMachine Learning
演習の手順
sklearn.metricsからroc_auc_scoreをインポートします。grid_dtから.best_estimator_属性を取り出し、best_modelに代入します。テストセットで陽性クラスを得る確率を
y_pred_probaとして予測します。best_modelのテストセット ROC AUC スコアtest_roc_aucを計算します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Import roc_auc_score from sklearn.metrics
____
# Extract the best estimator
best_model = ____
# Predict the test set probabilities of the positive class
y_pred_proba = ____
# Compute test_roc_auc
test_roc_auc = ____
# Print test_roc_auc
print('Test set ROC AUC score: {:.3f}'.format(test_roc_auc))