4つのカテゴリを評価する
混同行列は、真陽性 (TP)、偽陽性 (FP)、真陰性 (TN)、偽陰性 (FN) の4つの結果カテゴリを確認するための最も直接的なツールです。この演習では、sklearn の標準的な決定木分類器 DecisionTreeClassifier() をサンプルのクリックデータに適用し、4つのカテゴリごとの内訳を計算します。
pandas モジュールは作業環境で pd として利用でき、サンプルの DataFrame は df に読み込まれています。特徴量は X、目的変数は y に読み込まれており、そのまま使えます。さらに、sklearn.tree から DecisionTreeClassifier が利用可能です。
この演習はコースの一部です
PythonでMachine Learningを使ってCTRを予測する
演習の手順
Xとyの学習用・テスト用の分割を作成します。- 決定木分類器を定義し、モデルを学習して予測
y_predを作成します。 - 混同行列を使い、各結果カテゴリの件数を取得します。ここで
1はポジティブ(クリック)、0はネガティブ(非クリック)を表します。 - たとえば、真陰性は
[0,0]、真陽性は[1,1]になります。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Set up classifier using training data to predict test data
X_train, X_test, y_train, y_test = ____(
X, y, test_size = .2, random_state = 0)
clf = ____
y_pred = clf.____(X_train, y_train).____(X_test)
# Define confusion matrix and four categories
conf_matrix = ____(y_test, y_pred)
tn = conf_matrix[____][____]
fp = conf_matrix[____][____]
fn = conf_matrix[____][____]
tp = conf_matrix[____][____]
print("TN: %s, FP: %s, FN: %s, TP: %s" %(tn, fp, fn, tp))