Python中的Logistic回归-测试
在将上述创建的分类器投入生产使用之前,我们需要对其进行测试。如果测试发现模型没有达到预期的准确度,我们将不得不回到上述过程中,选择另一组特征(数据字段),再次建立模型,并进行测试。这将是一个反复的步骤,直到分类器满足你所期望的准确率的要求。因此,让我们来测试我们的分类器。
预测测试数据
为了测试分类器,我们使用在前一阶段生成的测试数据。我们在创建的对象上调用 predict 方法,并传递测试数据的 X 数组,如下命令所示
In [24]: predicted_y = classifier.predict(X_test)
这将为整个训练数据集生成一个单维数组,给出X数组中每一行的预测结果。你可以使用以下命令来检查这个数组
In [25]: predicted_y
以下是执行上述两个命令后的输出结果。
Out[25]: array([0, 0, 0, ..., 0, 0, 0])
输出显示,第一个和最后三个客户不是 定期存款 的潜在候选人 。 你可以检查整个数组,以整理出潜在的客户。要做到这一点,请使用下面的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,成功率可能很高。