Uso del algoritmo Adaboost y la regresión logística para la predicción
de fuga de clientes en una empresa de telefonía móvil
Using the Adaboost algorithm and logistic regression to predict customer churn in a
mobile phone company
DOI: http://dx.doi.org/10.21704/ne.v5i2.1610
* Autor de correspondencia: Aldo Richard Meza Rodríguez. Email: earmeza@lamolina.edu.pe
© Facultad de Economía y Planicación, Universidad Nacional Agraria La Molina, Lima, Perú.
Forma de citar el artículo: Meza, A.; Chue, J. 2020. Uso del algoritmo Adaboost y la regresión logística para la
predicción de fuga de clientes en una empresa de telefonía móvil. Natura@economía 5(2):102-117 (2020). http://
dx.doi.org/10.21704/ne.v5i2.1610
Aldo Richard Meza Rodríguez
1*
; Jorge Chue Gallardo
2
1
Dpto. Estadística e Informática. Facultad de Economía y Planicación. Universidad Nacional Agraria la Molina,
Apartado postal 12-056 - La Molina, Lima, Perú. Email: armeza@lamolina.edu.pe; jchue@lamolina.edu.pe
Recepción: 20/06/2020; Aceptación: 15/12/2020
Resumen
El objetivo de esta investigación tiene como propósito comparar un modelo de predicción
de fuga de clientes en una empresa de telefonía móvil. El modelo propuesto fue el algoritmo
Adaboost, el cual se desarrolla a través de aprendizaje adaptativo. Para probar su eciencia
se comparó con la regresión logística desde la perspectiva de la minería de datos. Como la
variable objetivo de respuesta era desbalanceada se utilizó procedimientos de muestreo para
equilibrar los datos (sub-muestreo, sobre-muestreo y SMOTE). Las medidas de desempeño
para elegir el modelo fueron la precisión, el recall (sensibilidad), el F-mesausre y el AUC
(curvas ROC). La precisión, el recall y el F-mesuare arrojaron rendimientos superiores a
favor del algoritmo Adaboost, también la medida principal de desempeño dio un AUC=0,93
para el Adaboost, frente a un AUC=0,86 para la regresión logística. Realizadas todas las
comparaciones, la validación y las medidas de desempeño, en conclusión, el modelo óptimo
para la predicción de fuga de clientes en la empresa de telefonía móvil es el algoritmo
Adaboost. Finalmente, con este algoritmo se detectó que las variables más importantes para
entender el patrón de fuga de los clientes fueron el tipo de reclamo, rol del cliente, comunidad
(relación del cliente con otros contactos), tipo de cliente, número de reclamos, número de
llamadas, nota del cliente y MOU.
Palabras clave: Algoritmo Adaboost; regresión logística; datos desbalanceados; medidas de
desempeño; curva roc; validación cruzada; fuga de clientes.
Natura@economía
ISSN 2226-9479 (Versión electrónica)
Website: http://revistas.lamolina.edu.pe/index.php/neu
Natura@economía 5(2): 102-117(2020)
ARTÍCULO ORIGINAL
103
Meza & Chue / Natura@economía 5(2):102-117(2020)
Julio - Diciembre 2020
Abstract
The objective of this research is to compare a customer churn prediction model in a mobile
phone company. The proposed model is the Adaboost algorithm, which is developed through
adaptive learning. To test its eectiveness, it was compared with logistic regression from the
perspective of data mining. As the objective response variable was unbalanced, sampling
procedures were used to balance the data (subsampling, oversampling and SMOTE). The
performance measures for choosing the model were precision, recall (sensitivity), F-mesausre
and AUC (ROC curves). The precision, the recall and the F-mesuare yielded superior returns
in favor of the Adaboost algorithm, also the main performance measure gave an AUC = 0,93
for the Adaboost, compared to an AUC = 0,86 in the logistic regression. After carrying out
all the comparisons, the validation and the performance measures, it was concluded that the
optimal model for predicting customer churn in the mobile phone company is the Adaboost
algorithm. Finally, with this algorithm it was detected that the most important variables to
understand the pattern of customer leakage were the type of claim, role of the customer,
community (customer relationship with other contacts), type of customer, number of claims,
number call, customer note and MOU.
Keywords: Adaboost algorithm; Logistic regression; unbalanced data; performance
measures; roc curve; cross validation; churn.
1. Introducción
La fuga de clientes (Churn en inglés), es un
problema frecuente, presente en las empresas,
industrias, banca, telecomunicaciones, etc.
El abandono o deserción de los clientes se
da en presencia de agresivas estrategias de
marketing, las cuales buscan captar clientes
ofreciendo nuevos y mejores productos
y servicios. Según Barrientos (2012), las
causas principales de la fuga de clientes en el
área de telefonía están relacionadas a factores
generados por el servicio de la empresa,
tales como la calidad de la cobertura, señal,
precio, atención al cliente, etc.
Según cifras de Osiptel (2019), entre julio
del 2014 y marzo del 2019, se han realizado
16’648’547 cambios de operador, siendo
Entel quien lidera la lista con 1’244’507
líneas ganadas, seguido de Claro con
617’453 clientes obtenidos. Meza (2018)
describe que “Ante la necesidad de prever e
identicar a los posibles clientes que fugan,
los modelos de predicción son herramientas
y soporte clave para identicarlos y entender
el patrón y el motivo que les lleva a prescindir
del servicio”.
Entre las diferentes alternativas para
identicar las causas y los patrones
determinantes para la toma de decisión
de fuga, se encuentran los modelos de
predicción (Ahmad et al., 2019). Diferentes
investigadores en el área de la minería de datos
han desarrollado constantemente nuevos
modelos de clasicación y predicción, tales
como el algoritmo Adaboost, la regresión
logística, árboles de clasicación, entre otros.
Por ejemplo, Pérez (2014) describió que el
algoritmo Adaboost tiene la gran capacidad
de mejorar el rendimiento y minimizar el
error de predicción. Por su parte Escobar
& Loas (2015) probaron una variedad
de técnicas de predicción en detección
temprana de fuga o deserción de estudiantes,
encontrando que el algoritmo Adaboost
fue el de mejor rendimiento, obteniendo la
menor tasa de error. Además, al realizar un
torneo en predicción de modelos de fuga
de clientes, donde se evaluaron 33 modelos
de predicción, la regresión logística y los
árboles de clasicación tuvieron la mejor
exactitud predictiva y mejor desempeño
(Neslin et al. 2006).
Uso del algoritmo Adaboost y la regresión logística para la predicción de fuga de clientes en una empresa de
telefonía móvil
104
Julio - Diciembre 2020
Uno de los problemas al crear modelos
de clasicación es la distribución o balance
de los datos (Mao et al., 2017). El desbalance
se da cuando una de las categorías es
muy inferior en comparación con la otra,
causando grandes efectos negativos sobre
los resultados, ocasionando sesgos en el
desempeño de la clasicación (Hadad et al.,
2009). Ante ello, se debe buscar una técnica
que equilibre los datos para luego identicar
entre el algoritmo Adaboost y la regresión
logística, aquel modelo que tenga la mayor
precisión en la predicción, evaluando su
capacidad predictiva e identicando las
variables que mejor se correlacionen a la
fuga de clientes.
Finalmente, esta investigación busca
conocer con precisión a través de los
modelos porqué los clientes deciden
retirarse denitivamente o migrar hacia
otros operadores, de tal manera que los
responsables de la toma de decisiones en
la empresa logren minimizar esfuerzos
en la retención y focalizarse en atacar las
verdaderas causas de la fuga.
2. Materiales y métodos
Materiales
La presente investigación se desarrolló con
información de una empresa de telefonía
móvil en el área de postpago (por motivos
de políticas y privacidad propias de la
empresa de telefonía, se mantiene en reserva
el nombre) con un conjunto de datos de los
registros de los últimos 6 meses del año 2017
(pudiendo adaptarse a los datos actuales),
con una muestra total de 80’300 registros
(Tabal 1).
Para el procesamiento de datos fue
indispensable el uso del software R, en su
interface Rstudio y en su versión 4.0.2,
utilizando diferentes funciones, las cuales
están formalmente en diferentes librerías.
Metodología
Fuga de clientes (Churn)
En el marco de las telecomunicaciones, el
Churn se dene como “la acción de cancelar
el servicio prestado por la compañía” (Pérez,
2014), o como “la propensión de clientes a
efectuar el cese de los negocios que tenga
con una compañía en un periodo de tiempo
determinado” (Lejenue, 2001). En esta
cancelación, el cliente decide renunciar a la
empresa (voluntaria) o en todo caso la empresa
puede expulsarlo por algunas irregularidades
o por no cumplir con las obligaciones o
pagos acordados (involuntaria). Para Hu
(2019), un cliente puede considerase pasivo
o activo, dependiendo si la baja es directa o
no, por ejemplo, para los pasivos, si se acaba
el periodo de suscripción, estos no renuevan
o pierden interés en el producto o servicio;
los activos en cambio deciden terminar
su suscripción y buscan los mecanismos
formales para prescindir del servicio o darse
de baja.
El modelo de regresión logística binario
La regresión logística formula un modelo
para predecir una variable categórica en
función a una o más variables predictoras,
la cual está inmersa en el grupo de familias
que usa una función de enlace llamada logit
(Hosmer y Lemeshow, 2000).
El logit de las probabilidades binomiales
desconocidas forman el modelo general,
bajo la siguiente función lineal:
logit = log = X
T
i
La probabilidad aproximada de
pertenencia a cualquiera de las dos
categorías en el suceso se aproxima a través
de una función logística de la siguiente
manera:
-1
1
logit ( )=
11
i
e
p
ee
η
ηη
η
= =
++
105
Meza & Chue / Natura@economía 5(2):102-117(2020)
Julio - Diciembre 2020
Tabla 1. Descripción de las variables usadas en los modelos
Variable
Tipo de
variable
Descripción de la variable
Churn Cual. nominal
Abandono del cliente, el cual puede ser por voluntad
propia, o porque la empresa decidió cancelarle el contrato
(1: Fugado, 2: no fugado)
Minutos de uso (MOU) Cuant. continua Ratio de tiempo hablado mensual y/o datos
Días de deuda Cuant. discreta
Nº de días promedio por mes que adeuda el cliente en los
últimos 6 meses.
Reclamos Cuant. discreta Nº de reclamos mensual
Tipo de Reclamos Cuant. continua Tipo de reclamo más frecuente
Sexo Cual. nominal Género del cliente
Edad Cuant. continua Edad en años
Procedencia Cual. nominal Lugar de procedencia (1: Lima, 2: Provincia)
Rol Cual. nominal
Líder, seguidor o marginal (se calcula en base a mensajes,
llamadas, transferencias entre los usuarios de la misma
empresa)
Comunidad
Cual.
jerárquica
Representada por niveles según el porcentaje de relación
del cliente con todos sus contactos, calculado en función
a las redes, seguidores, llamadas, etc., con clientes de la
empresa (internos), ejemplo: grado 1 (0-25%), grado 2
(26-50%), grado 3 (51-75%), grado 4 (76-100%)
Plan renuncia Cuant. discreta
Cantidad de planes renunciados del usuario durante su
periodo de vida
Antigüedad Cuant. continua Tiempo de aliación del cliente
Canal Cuant. discreta
Medio mediante el cual se vendió el plan al cliente (1:
empresa, 2: vendedor individual, 3: Ejecutivo de la
compañía, 4: no identicado)
Tipo cliente
Cual.
jerárquica
Valoración que la empresa da al cliente, (1: bajo, 2: medio
bajo, 3: medio, 4: medio alto , 5: alto)
Número mensajes Cuant. discreta Nº de mensajes mensual
Llamadas Cuant. discreta Nº de llamadas mensual
Kilovatios Cuant. continua
Cantidad de Kilovatios de uso mensual (uso de datos,
correo, internet, etc.)
Ingresos (ARPU) Cuant. continua Gasto promedio de usuario con el servicio
Nota de pago Cuant. continua
Nota mensual en función a su comportamiento de pago y
el tiempo que demora en pagar sus cuentas
Esta función es óptima cuando los datos
son simétricos, es decir, cuando la variable
dependiente categórica tiene una cantidad
equilibrada de “ceros” y “unos”, lo que en
muchas situaciones prácticas no se cumple,
tal es el caso de esta investigación sobre
la fuga de clientes, donde hay una gran
diferencia entre los que fugan y los que se
mantienen con el servicio.
El algoritmo Adaboost
Adaboost o Adaptative Boosting es un
algoritmo de aprendizaje automático
utilizado para regresión y clasicación
(Freund & Schapire, 1996). Existen variadas
versiones tales como Adaboost, Adaboost.
M1, Adaboost.M2, entre otras (Obregón,
2016), cuya metodología consiste en
entrenar en forma iterativa una serie de
Uso del algoritmo Adaboost y la regresión logística para la predicción de fuga de clientes en una empresa de
telefonía móvil
106
Julio - Diciembre 2020
clasicadores débiles tal que cada nuevo
clasicador dé mayor importancia a los
datos mal clasicados en los entrenamientos
anteriores, para luego combinar todo el
conjunto de clasicadores débiles y obtener
un clasicador cuyo rendimiento sea fuerte.
Este algoritmo utiliza funciones que
ponderan la importancia en relación a cada
dato en el proceso del entrenamiento del
clasicador, de esta manera, los datos que
se han clasicado correctamente pierden
peso a favor de los que fueron clasicados
erróneamente, intentando conseguir que
los nuevos clasicadores se enfoquen en
aquellos datos clasicados erróneamente
(Figura 1).
En la Figura 2 se aprecia el mecanismo
del algoritmo Adaboost, cada clasicador
débil asume un peso “W” mayor en
diferentes iteraciones, al nal en conjunto se
forma el clasicador fuerte.
Datos desbalanceados
Un problema en los modelos de clasicación
es el desbalance de datos, esto ocurre
cuando una clase o categoría es sesgada
(hacia la clase positiva o negativa), por
ejemplo, si una empresa cuenta con 10,000
clientes, de los cuales solo 500 han fugado,
entonces la categoría “Si fuga” tendría solo
el 5%, mientras que la categoría “no fuga”
tendría el 95% de los datos. El problema
del desbalance es que la clase mayoritaria
abruma a los modelos u algoritmos y desvían
su rendimiento, los resultados pueden
ser muy engañosos puesto que, las clases
minoritarias tendrían un efecto mínimo en la
precisión, es decir el desempeño de la clase
mayoritaria superaría al pobre desempeño de
la clase minoritaria (Fernández et al., 2017).
Dicho de otra manera, los modelos serían
adecuados para predecir a los clientes que
no fugan, pero tendría un desempeño bajo al
identicar a los que si fugan.
Métodos para equilibrar datos
desbalanceados (asimétricos)
Algunos métodos para contrarrestar el efecto
de los datos desequilibrados son conocidos
como “Métodos de muestreo” (Brownlee,
2015), los cuales equilibran la distribución
mediante algún mecanismo propio. Kunal
(2016) menciona que los métodos más
recomendados para el tratamiento de
conjuntos de datos desbalanceados, son el
sub-muestreo, el sobre muestreo y el sobre
muestreo en minorías sintéticas.
El sub-muetreo: Este método elimina los
datos de la clase mayoritaria reduciendo el
número de observaciones hasta equilibrar
los datos, mejorando el tiempo de ejecución
y almacenamiento (Haibo & Yunqian, 2013).
Según Liu et al. (2006) el sub-muestreo
produce buenos resultados, siendo un
método que utiliza algoritmos sencillos y
fáciles de entender, combinando resultados
y entrenando secuencialmente a los
clasicadores. Una posible desventaja de
este método es que, al eliminar datos, puede
haber cierta pérdida de información.
El sobre-muestreo: Este método replica
las observaciones de la clase minoritaria, es
decir, aumenta en forma aleatoria (realizando
muestreo con reemplazo) las observaciones
del grupo minoritario. Este proceso se repite
hasta que las observaciones de la clase
minoritaria y mayoritaria se equilibren. Una
ventaja de este método es que no hay pérdida
de información, sin embargo, al haber datos
duplicados puede ocasionar un posible
sobreajuste en el modelo (Kunal, 2016).
Sobre muestreo de minorías sintéticas
(SMOTE): Este método utiliza inclusión
de nuevas observaciones, creando
arbitrariamente nuevas observaciones de la
clase minoritaria a partir de los vecinos más
cercanos de la clase menor. Esta técnica no
107
Meza & Chue / Natura@economía 5(2):102-117(2020)
Julio - Diciembre 2020
replica las observaciones, sino que erradica
el desequilibrio mediante inclusión de datos
articiales, la cual se puede integrar con
los algoritmos de clasicación mejorando
el rendimiento de la predicción (Ijaz et al.,
2018).
Figura 1. Formación de 3 clasicadores débiles con el algoritmo
Adaboost.
Fuente: Freund & Schapire (1996)
Figura 2. Mecanismo del Adaboost.
Fuente: Bhatia & Chiu (2017)
En la Figura 2 se aprecia el mecanismo
del algoritmo Adaboost, cada clasicador
débil asume un peso “W” mayor en
diferentes iteraciones, al nal en conjunto se
forma el clasicador fuerte.
Uso del algoritmo Adaboost y la regresión logística para la predicción de fuga de clientes en una empresa de
telefonía móvil
108
Julio - Diciembre 2020
Validación cruzada
Una de las partes fundamentales y más
complicadas en la creación de modelos es la
evaluación de los clasicadores, puesto que
muchos modelos pueden ajustarse muy bien
a los datos con los cuales fueron creados,
pero al intentar replicar e implementar el
modelo con nuevos datos, estos muestran
sobreajuste (el patrón de comportamiento
no se puede generalizar) o errores en la
clasicación (Obregón, 2016).
Una de las herramientas para detectar
el sobreajuste es la técnica de validación
cruzada de K iteraciones, la cual consiste
en dividir las observaciones en varios
subconjuntos, seleccionando aleatoriamente
a uno de ellos como prueba y utilizando
los demás para entrenar el modelo de
clasicación, repitiendo el proceso hasta
evaluar cada sub conjunto de datos y así
al nal se halla la media aritmética de las
evaluaciones en cada iteración, obteniendo
un solo resultado (Valavi et al., 2019). Una
de las desventajas de este método es el
costo computacional, puesto que, a mayor
número de iteraciones, mayor será el tiempo
de procesamiento; en la práctica la elección
de la cantidad de iteraciones depende del
tamaño del conjunto de datos, siendo lo más
frecuente usar 10 iteraciones (10-fold cross-
validation).
Medidas para evaluar el rendimiento de
los modelos en datos desbalanceados
La medida más utilizada para evaluar el
desempeño de un modelo de clasicación
es el accuracy (tasa de error), sin embargo,
cuando los datos son desbalanceados, el
accuracy no es una métrica apropiada, puesto
que esta medida puede ser engañosa. Las
medidas de desempeño más recomendadas
para datos desbalanceados son Recall,
Precisión, F-Measure, la ROC y AUC (Wu
et al., 2018).
• Precisión: Es una medida de la corrección
o exactitud obtenida en la predicción
positiva, se calcula como el porcentaje de
eventos que fueron pronosticados positivos,
siendo estos realmente positivas (Powers,
2008).
• Recall (sensibilidad): Es una medida
que avalúa el porcentaje de observaciones
reales que se predicen correctamente o
cantidad de observaciones de clase positiva
que se predicen correctamente (Chicco &
Jurman, 2020).
• F-measure (medida F): Es la media
armónica ponderada entre el Recall y la
precisión (Wu et al., 2018).
• Curva ROC (Receiver Operating
Characteristic): Es una de las métricas
principales para evaluar modelos con datos
desbalanceados, la cual se forma trazando la
sensibilidad (tasa de verdaderos positivos)
y la especicidad (tasa de falsos positivos).
Uno de los indicadores para comparar las
diferentes curvas ROC es el AUC (área
bajo la curva), donde el modelo que tenga
mayor AUC será posiblemente el de mayor
desempeño (Tharwat, 2018).
Matriz de confusión
Esta matriz valora la capacidad predictiva
de un modelo y se construye cruzando los
datos reales de la variable de respuesta con
los datos que fueron predichos en el modelo,
en la diagonal se encuentran los valores
correctamente clasicados (tanto para la
clase positiva como negativa) y fuera de
la diagonal las clasicaciones incorrectas.
En la matriz de confusión se muestran
los verdaderos positivos (VP), los falsos
positivos (FV), los verdaderos negativos
(VN) y los falsos negativos (FV), los
cuales se utilizan para hallar las medidas de
desempeño (Hair et al., 1999).