- Predicción individual: El usuario puede introducir las características de un cliente de forma manual para obtener una predicción de abandono.
- Predicción en lotes: El usuario puede cargar un archivo CSV que contenga un conjunto de datos de clientes, y la aplicación realizará predicciones de abandono para cada uno de ellos.
Esta aplicación desplegada en Streamlit, es la continuacion de un análisis completo del dataset de abandono de clientes (Churn) en una compañia de telecomunicaciones.
Para hacer predicciones sobre un dataframe completo, debe tener el siguiente formato de datos:
Ver tipos de datos que recibe el modelo
- 'Gender': str
- 'Age': int
- 'Married': bool
- 'Number of Dependents': int
- 'Number of Referrals': int
- 'Tenure in Months': int
- 'Offer': bool
- 'Phone Service': bool
- 'Multiple Lines': bool
- 'Internet Service': bool
- 'Online Security': bool
- 'Online Backup': bool
- 'Device Protection Plan': bool
- 'Premium Tech Support': bool
- 'Streaming TV': bool
- 'Streaming Movies': bool
- 'Streaming Music': bool
- 'Unlimited Data': bool
- 'Paperless Billing': bool
- 'Monthly Charge': float
- 'Total Charges': float
- 'Total Refunds': float
- 'Total Extra Data Charges': float
- 'Total Long Distance Charges': float
- 'Internet Type_Cable': bool
- 'Internet Type_DSL': bool
- 'Internet Type_Fiber Optic': bool
- 'Contract_Month-to-Month': bool
- 'Contract_One Year': bool
- 'Contract_Two Year': bool
- 'Payment Method_Bank Withdrawal': bool
- 'Payment Method_Credit Card': bool
- 'Payment Method_Mailed Check': bool
Esta aplicación es la continuación de un análisis completo sobre el abandono de clientes. este otro repositorio, donde realicé el análisis de los datos y la creación de modelos de clasificación como XGBoost, LinearRegression y Random Forest. Puedes consultar ese repositorio para ver las medidas de rendimiento alcanzadas en cada modelo.
El modelo que utilice para esta aplicación es la implementación de Random Forest con los datos de Churn de Maven Analytics, el cual ha mostrado buenos resultados durante el entrenamiento.
Al utilizar la predicción por lotes, se creará un dataframe con los datos de los clientes que se consideran propensos a abandonar. Este dataframe se podrá descargar en formato CSV.
Esta funcionalidad resulta especialmente útil si deseamos tomar acciones de marketing dirigidas a estos clientes con el fin de retenerlos. Además, la aplicación puede ser utilizada para otras aplicaciones relacionadas con la segmentación de clientes.
Considero que el despliegue a través de Streamlit es una opción rápida e interesante para aprender a llevar modelos a producción y ver de manera práctica su desempeño.