始める無料で始める

Machine Learning の分類で不正検知に挑戦

この演習では、クレジットカードのデータに対してシンプルな Machine Learning モデルを使うとどうなるかを確認します。

前の結果を上回れると思いますか?これまでに「50件中22件」の不正を検知し、「16件」の誤検知がありました。

それでは、この点を踏まえて Logistic Regression モデルを実装しましょう。Python の教師あり学習のクラスを受講済みなら、このモデルには馴染みがあるはずです。そうでない場合は、ここで少し復習してもよいでしょう。心配はいりません。これから Machine Learning モデルの流れを順を追って案内します。

Xy の変数はワークスペースに用意されています。

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

Pythonで学ぶ不正検知

コースを見る

演習の手順

  • Xy を学習用とテスト用に分割し、データの30%をテスト用に確保します。
  • 学習データにモデルを当てはめます。
  • X_test に対して model.predict を実行し、モデルの予測ラベルを取得します。
  • y_testpredicted を比較して分類結果を取得し、与えられた混同行列で結果を確認します。

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

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

# Create the training and testing sets
X_train, X_test, y_train, y_test = train_test_split(____, ____, test_size=____, random_state=0)

# Fit a logistic regression model to our data
model = LogisticRegression()
model.fit(____, ____)

# Obtain model predictions
predicted = model.predict(____)

# Print the classifcation report and confusion matrix
print('Classification report:\n', classification_report(____, ____))
conf_mat = confusion_matrix(y_true=y_test, y_pred=predicted)
print('Confusion matrix:\n', conf_mat)
コードを編集して実行