Pythonでのロジスティック回帰-テスト

上記で作成した分類子を本番環境で使用する前にテストする必要があります。テストの結果、モデルが目的の精度を満たしていないことが判明した場合は、上記のプロセスに戻り、別の機能セット(データフィールド)を選択して、モデルを再構築し、テストする必要があります。これは、分類子が目的の精度の要件を満たすまでの反復ステップになります。それでは、分類器をテストしましょう。

テストデータの予測

分類器をテストするには、前の段階で生成されたテストデータを使用します。私たちはpredict 作成されたオブジェクトのメソッドを渡し、 X 次のコマンドに示すようなテストデータの配列-

In [24]: predicted_y = classifier.predict(X_test)

これにより、トレーニングデータセット全体に対して1次元配列が生成され、X配列の各行の予測が得られます。次のコマンドを使用して、この配列を調べることができます-

In [25]: predicted_y

以下は、上記の2つのコマンドを実行したときの出力です。

Out[25]: array([0, 0, 0, ..., 0, 0, 0])

出力は、最初と最後の3人の顧客が候補者ではないことを示しています。 Term Deposit。アレイ全体を調べて、潜在的な顧客を分類できます。これを行うには、次のPythonコードスニペットを使用します-

In [26]: for x in range(len(predicted_y)):
   if (predicted_y[x] == 1):
      print(x, end="\t")

上記のコードを実行した結果を以下に示します-

出力には、TDにサブスクライブする可能性のあるすべての行のインデックスが表示されます。これで、この出力を銀行のマーケティングチームに渡して、選択した行の各顧客の連絡先の詳細を取得し、仕事を進めることができます。

このモデルを本番環境に導入する前に、予測の精度を検証する必要があります。

精度の検証

モデルの精度をテストするには、以下に示すように分類器でスコア法を使用します。

In [27]: print('Accuracy: {:.2f}'.format(classifier.score(X_test, Y_test)))

このコマンドを実行したときの画面出力を以下に示します。

Accuracy: 0.90

これは、モデルの精度が90%であることを示しています。これは、ほとんどのアプリケーションで非常に優れていると考えられています。したがって、それ以上の調整は必要ありません。これで、お客様は次のキャンペーンを実行し、潜在的なお客様のリストを取得して、高い成功率でTDを開くためにそれらを追跡する準備が整いました。