Se compara la modelización mediante regresión logística y näive bayes en un caso de churn bancario.
Introducción al algoritmo de regresión logística
Mirar en otro post.
Introducción al algoritmo de näive bayés
NB es un modelo predictivo de clasificación basado en el teorema de Bayés, el cual se basa en que la probabilidad de ocurrencia de cada variable es independiente de las demás. En otras palabras, la presencia de una variable no está relacionada con la probabilidad de ocurrencia de otra variable. Pero a medida que vamos teniendo más datos podemos asociar la presencia de dicha variable (independientemente de las demás) con la característica de clasificación.
Un ejemplo muy intuitivo lo describe JacobSoft: una manzana puede ser clasificada como tal en función de una serie de características. Pero la presencia o ausencia de cada una de ellas es independiente (por ejemplo, color forma o diámetro). Es decir, cada característica contribuye de manera independiente a la probabilidad de que finalmente clasifiquemos un objeto como “manzana”.
El teorema de Bayés se representaría de la siguiente manera:
P(h|D) = P (D|h) * P(h) / P(D)
O en otros términos:
P(posteriori) = P(probabilidad condicional) * P(a priori) / P(total)
P(h) es la probabilidad a priori de obtener h sin ninguna observación.
P(D) es la probabilidad a priori de observar D, sin saber qué hipótesis se verifica.
P(h|D) es la probabilidad resultante o a posteriori de h, de que h sea cierta después de observar D.
P(D|h) es la probabilidad condicional de observar D en un universo donde se verifica la hipótesis h.
Se recomienda la lectura de:
Villalba,F. Capítulo 5. Naive Bayes- clasificación bayesiano ingenuo.
Navas,A. Algoritmo de Naive Bayes.
Características del caso
El caso empleado en este análisis es el 'Predicting Churn for Bank Customers', que puede descargarse el dataset original de Kaggle. Este dataset ha sido previamente trabajado en cuanto a:
análisis descriptivo
limpieza de anomalías, missing y outliers
peso predictivo de las variables mediante random forest
discretización de las variables continuas para facilitar la interpretación posterior
Por lo que finalmente se emplea en este caso un dataset preparado para iniciar el análisis de RL, que puede descargarse de Github.
El objetivo del caso es predecir la probabilidad de que un determinado cliente puede abandonar (churn) el Banco. La explicación de esta conducta estará basada en toda una serie de variables predictoras: RowNumber, CustomerId, Surname, CreditScore, Geography, Gender, Age, Tenure, Balance, NumOfProducts, HasCrCard, IsActiveMember, EstimatedSalary y Exited.
Posteriormente se hará una descripción de las variables seleccionadas para el análisis y su composición.
Proceso
1. Entorno
El primer punto tratará sobre la preparación del entorno, donde se mostrará la descarga de las librerías empleadas y la importación de datos.
2. Análisis descriptivo
Se mostrarán y explicarán las funciones empleadas en este paso, dividiéndolas en tres grupos: Análisis inicial, Tipología de datos y Análisis descriptivo (gráficos).
3. Preparar modelización
Se preparará lo necesario para modelizar, mediante dos pasos:
a) Preparar funciones:
- Matriz de confusión
- Métricas
- Umbrales
- Curva ROC y AUC
b) Particiones del dataset en dos grupos: training (70%) y test (30%)
4. Modelización
Por motivos didácticos, se dividirán los algoritmos seleccionados en varios pasos.
Para ver el código en R y los resultados:
En HTML: RPubs
En pdf: GitHub
Comments