Regresión logística en Python: pruebas

Necesitamos probar el clasificador creado anteriormente antes de ponerlo en producción. Si la prueba revela que el modelo no cumple con la precisión deseada, tendremos que volver al proceso anterior, seleccionar otro conjunto de características (campos de datos), construir el modelo nuevamente y probarlo. Este será un paso iterativo hasta que el clasificador cumpla con su requisito de precisión deseada. Así que probemos nuestro clasificador.

Predicción de datos de prueba

Para probar el clasificador, utilizamos los datos de prueba generados en la etapa anterior. Llamamos alpredict en el objeto creado y pasar el X matriz de los datos de prueba como se muestra en el siguiente comando:

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

Esto genera una matriz unidimensional para todo el conjunto de datos de entrenamiento que proporciona la predicción para cada fila en la matriz X. Puede examinar esta matriz utilizando el siguiente comando:

In [25]: predicted_y

La siguiente es la salida tras la ejecución de los dos comandos anteriores:

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

El resultado indica que los primeros y últimos tres clientes no son los candidatos potenciales para el Term Deposit. Puede examinar toda la matriz para clasificar los clientes potenciales. Para hacerlo, use el siguiente fragmento de código de Python:

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

El resultado de ejecutar el código anterior se muestra a continuación:

La salida muestra los índices de todas las filas que son probables candidatos para suscribirse a TD. Ahora puede entregar este resultado al equipo de marketing del banco, quien recogería los datos de contacto de cada cliente en la fila seleccionada y continuaría con su trabajo.

Antes de poner este modelo en producción, debemos verificar la precisión de la predicción.

Verificación de la precisión

Para probar la precisión del modelo, utilice el método de puntuación en el clasificador como se muestra a continuación:

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

La salida de pantalla de ejecutar este comando se muestra a continuación:

Accuracy: 0.90

Muestra que la precisión de nuestro modelo es del 90%, lo que se considera muy bueno en la mayoría de las aplicaciones. Por lo tanto, no se requiere ningún ajuste adicional. Ahora, nuestro cliente está listo para ejecutar la próxima campaña, obtener la lista de clientes potenciales y perseguirlos para abrir el TD con una probabilidad alta de éxito.