Se emplea el algoritmo de árboles de decisión para predecir la clasificación de sujetos en dos muestras (train y test) como churn o no churn (abandono).
Introducción al análisis de Árboles de decisión
Los métodos basados en árboles de decisión son algoritmos que estratifican el espacio del predictor en un número simple de regiones, observando en cada una de ellas la media o moda. Esto hace que la estructura resultante sea asemejada a un árbol, similar a un diagrama de flujo, donde caben destacar los siguientes conceptos:
Nodo raíz: que representa a toda la población a partir de al cual se comenzará a dividir en grupos homogéneos.
División: proceso mediante el cual un nodo se divide en dos o más nodos en función de una característica determinada.
Nodo terminal o nodo hoja: son los nodos sin hijos donde se termina le proceso e división.
Poda: proceso mediante el que vamos especificando condiciones para reducir la profundidad del árbol. Lo normal es que empecemos solicitando un árbol muy profundo, sin restricciones y posteriormente vayamos aplicando el proceso de poda, entre otras cosas, para que sea más interpretable.
Rama o subárbol: cada subsección del árbol de decisión.
Nodo principal: nodo a partir del cual se divide en otros subnodos.
Nodos hijo: subnodos que nacen de un nodo principal.
Frente a otros modelos caben destacar dos ventajas:
Los AD tiene considerables ventajas frente a los modelos lineales (como regresión lineal o regresión logística).
Es realmente sencilla su interpretación frente a los modelos de ensemble, como randon forest, baaging o boosting.
Hay dos tipos de algoritmos para árboles de decisión: los de regresión y los de clasificación.
Los AD de regresión predicen una TARGET cuantitativa.
Mientras que los AD de clasificación predicen la probabilidad de que un caso pertenecerá a una categoría determinada (esto es, la TARGET es categórica).
Características del caso
El caso empleado en este análisis es el 'Telco Customer Churn', 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 prepardo 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) la empresa. La explicación de esta conducta estará basada en toda una serie de variables predictoras que se pueden clasificar en cuatro grupos:
Churn: la variable TARGET, con puntuaciones de 0 (no abandonó la empresa) y 1 (sí abandonó la empresa)
Servicios contratados: phone, multiple lines, internet, online security, online backup, device protection, tech support, and streaming TV and movies.
Información sobre cuentas dle cliente: how long they’ve been a customer, contract, payment method, paperless billing, monthly charges, and total charges.
Variables demográficas: gender, age range, and if they have partners and dependents
Tras estudiar el peso predictivo de estas variables sobre la TARGET, finalmente se redujo el número de predictores a 6: Internet Service, Contract, Payment Method, tenure, Monthly Charges y Total Charges.
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. Modelización
Se preparará lo necesario para modelizar con el análisis de RL, como es:
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 con árboles de decisión
Por motivos didácticos, se dividirá en seis pasos:
Paso 1. Primer modelo
Paso 2. Segundo modelo
Paso 3. Interpretación del árbol*
Paso 4. Predict
Paso 5. Umbrales
Paso 6. Matriz de confusión
Paso 7. Métricas definitivas
Para ver el código en R y los resultados:
En HTML: RPubs
En pdf: GitHub
コメント