始める無料で始める

混同行列を計算する

混同行列confusion table と呼ばれることもあります)は、カテゴリカルな応答(ロジスティック回帰など)を持つモデルのあらゆる評価指標の基礎になります。これは、実際の応答と予測された応答の各組み合わせの件数を含みます。ここでは、可能な応答が 2 つ(解約する/解約しない)なので、結果は全部で 4 通りです。

  1. True positive: 顧客は解約し、モデルも解約すると予測した。
  2. False positive: 顧客は解約しなかったが、モデルは解約すると予測した。
  3. True negative: 顧客は解約せず、モデルも解約しないと予測した。
  4. False negative: 顧客は解約したが、モデルは解約しないと予測した。

churnmdl_churn_vs_relationship を利用できます。

この演習はコースの一部です

Pythonで学ぶstatsmodelsによる回帰入門

コースを見る

演習の手順

  • データセットの has_churned 列を抽出して実際の応答を取得し、actual_response に代入します。
  • モデルから「最もありそうな」予測応答を取得し、predicted_response に代入します。
  • actual_responsepredicted_response から DataFrame を作成し、outcomes に代入します。
  • outcomes を件数の表(混同行列)として表示します。これはすでに用意されています。

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Get the actual responses
actual_response = ____

# Get the predicted responses
predicted_response = ____

# Create outcomes as a DataFrame of both Series
outcomes = pd.DataFrame({____,
                         ____})

# Print the outcomes
print(outcomes.value_counts(sort = False))
コードを編集して実行