Logistic Regression In Python 简明教程

Logistic Regression in Python - Testing

我们需要在将上述创建的分类器投入生产使用之前对其进行测试。如果测试显示模型未达到所需精度,我们必须回到上述流程中,选择另一组特征(数据字段),重新构建模型并对其进行测试。这将是一个迭代步骤,直到分类器满足所需的精度要求。因此,让我们测试我们的分类器。

Predicting Test Data

为了测试分类器,我们使用前面阶段中生成测试数据。我们对创建对象调用 predict 方法,并将测试数据 X 数组传递给下列命令:

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

这将为整个训练数据集生成一个一维数组,提供 X 数组中每一行预测。你可使用以下命令检查此数组:

In [25]: predicted_y

以下是执行以上两个命令的输出:

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

输出表明第一个和最后三个客户并不是 Term Deposit 的潜在候选人。你可以检查整个数组以找出潜在客户。为此,请使用以下 Python 代码段:

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

运行以上代码的输出显示如下:

term deposit

输出显示所有行的索引,这些行是订阅定期存款的潜在候选人。你现在可以将此输出交给银行的营销团队,由该团队获取所选行中每个客户的联系方式并继续其工作。

在我们把这个模型投入生产之前,我们需要验证预测精度。

Verifying Accuracy

要测试模型的精度,请在分类器上使用以下所示的得分方法:

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

运行此命令的屏幕输出如下所示:

Accuracy: 0.90

它显示我们模型的精度为 90%,在大多数应用程序中这被认为非常好。因此,不需要进一步调整。现在,我们的客户已准备好运行下一个活动,获得潜在客户列表,并追逐他们开设定期存款,成功率可能很高。