Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CTIC BA Modelos Predictivos Nombre
CTIC BA Modelos Predictivos Nombre
Noviembre, 2021
1
Introducción
Este proyecto tiene como objetivo principal determinar el mejor modelo para poder identificar a los clientes
más propensos a la toma del producto, de tal manera, que puedan emprenderse campañas particulares para
impulsar el consumo de la tarjeta de crédito.
Marco de análisis
Objetivos del Negocio
Identificar a los clientes más propensos a adquirir una Tarjeta de Crédito. Conocer el perfil de los clientes
con mayor propensión a adquirir el producto.
Metodología de trabajo
En este proyecto vamos a trabajar de la siguiente manera:
2
Descripción del conjunto de datos (variables)
El conjunto de datos tiene 2000 observaciones con 10 variables.
De las 10 variables tenemos 9 variables independientes y una variable dependiente o variable objetivo
(dicotómica) Acepta_TC
Variables:
• Identificamos que los clientes más jovenes prefieren una TC, a comparación de los clientes que no toman
TC.
• Con el análisis de correlación hemos decartado la variable Ptge_Endeudamiento ya que se correlaciona
con las variables Edad y Personas_Dependientes_Hogar
• Respecto a los outlaiers detectatos en la variable Edad, no entran al análisis clintes con edades menores
de 18 y mayores de 77 años.
3
Precisión AUC
Modelo Regresión Logística Binaria 63.4% 60.7%
Modelo Árboles de Decisión 71.2% 67.7%
Modelo K Vecinos más Cercanos 70.0% 38.5%
Modelo Naive Bayes 64.0% 65.3%
Conclusiones
Luego del análisis también se llegó a la conclusión de que el modelo de Naive Bayes, también se puede utilizar
en este caso (AUC: 65.3%), a pesar de que tenemos pocas variables, sin embargo, se logra una clasificación
importante de los clientes que no tomarían un TC, por consiguiente, podemos ofrecerles un crédito personal,
previo evaluación de su perfil para asegurarnos que son clientes que solo toman préstamos personales. Por
otro lado, cuando trabajamos con el modelo de regresión logística binario (AUC: 60.7%), los coeficientes de
las variables edad y antigüedad del cliente, presentan un nivel estadísticamente significativo, y es sabido en la
banca que los modelos de regresión logística por su simplicidad, versatilidad y precisión es uno de los modelos
que permite construir scores de clientes, los cuales podemos incluirlos en las bases para enviar a la fuerza de
ventas para campañas direccionadas de créditos personales.
Finalmente, nos quedamos con el modelo de Árboles de Decisión. se recomienda, previo al despliegue se
de volver a perfilar a los clientes, considerar abrir por los principales drivers (Lima y provincia, canal de
venta, oferta y mejor horario de contacto), esperando que la suma de todas las consideraciones de negocio y
la aplicación de la analítica nos permitan mejorar nuestros resultados.
Principales drivers que permiten identificar a un cliente que hace uso son:
• Clientes menores de 49 años con uso frecuente de TC
• Oferta de la línea de crédito el doble del ingreso del cliente
• La oferta debe ser mejor al del Sistema financiero
• La máxima de línea de crédito del SSFF menor a 500 dólares.
• Clientes que no cuentan con tarjeta de crédito en el SSFF
4
Oportunidades:
• Mejorar la efectividad de Campañas, homologar acciones correctivas de agentes externos (Calls)
• Incrementar ratios de uso (1er consumo y Compras)
• Diferenciación de oferta comercial por perfil
• Venta vía flujo regular
• Asignación de líneas competitivas
5
Bibliografia
• Aprendizaje Automático - Carlos Véliz Capuñay, PUCP 2018
• R and Data Mining - Yanchang Zhao, ELSEIVER 2013
• http://uc-r.github.io/2018/06/14/gbm-regression/
6
Anexos:
Análisis exploratorio y limpieza de datos
A continuación vamos a tratar de comprender las dimensiones del conjunto de datos y analizaremos las
variables visualmente.Con el objetivo de comprender la naturaleza de los datos en términos de distribución
de las variables individuales y la relación entre ellas.
7
## [1] 2000 10
Identificamos que los clientes más jovenes prefieren una TC, a comparación de los clientes que no toman TC:
8
Análisis de correlación de variables
Personas_Dependientes_Hogar
Ptge_Endeudamiento
Numero_Prestamos
Numero_Productos
Antig_meses
Ingresos
Edad
1
Edad 0.8
Antig_meses 0.6
0.4
Numero_Productos
0.2
Ptge_Endeudamiento 0
−0.2
Numero_Prestamos
−0.4
Personas_Dependientes_Hogar −0.6
Ingresos −0.8
−1
Identificación de Ouliers
Acepta_TC vs Ptge_Endeudamiento
80
Ptge_Endeudamiento
60
40
20
No Si
Acepta_TC
9
Acepta_TC vs Ingresos
80000
60000
Ingresos
40000
20000
No Si
Acepta_TC
##
## No Si
## 0.654 0.346
10
##
## 0 1
## 0.6539663 0.3460337
##
## 0 1
## 0.6541353 0.3458647
##
## Call:
## glm(formula = Acepta_TC ~ Edad + Antig_meses + Numero_Productos +
## Ptge_Endeudamiento + Numero_Prestamos + Personas_Dependientes_Hogar +
## Ingresos, family = binomial(link = "logit"), data = training)
##
## Deviance Residuals:
## Min 1Q Median 3Q Max
## -1.3716 -0.9364 -0.7471 1.2800 1.9834
##
## Coefficients: (1 not defined because of singularities)
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) -1.422e+00 3.300e-01 -4.309 1.64e-05 ***
## Edad 1.236e-02 4.540e-03 2.723 0.00647 **
## Antig_meses 2.963e-02 3.770e-03 7.859 3.89e-15 ***
## Numero_Productos -8.604e-03 8.716e-03 -0.987 0.32353
## Ptge_Endeudamiento NA NA NA NA
## Numero_Prestamos -1.354e-03 3.855e-02 -0.035 0.97197
## Personas_Dependientes_Hogar -3.306e-03 3.086e-02 -0.107 0.91468
11
## Ingresos -8.710e-06 4.703e-06 -1.852 0.06401 .
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 2065.2 on 1600 degrees of freedom
## Residual deviance: 1987.3 on 1594 degrees of freedom
## AIC: 2001.3
##
## Number of Fisher Scoring iterations: 4
##
## Call:
## glm(formula = Acepta_TC ~ Edad + Antig_meses + Numero_Productos,
## family = binomial(link = "logit"), data = training)
##
## Deviance Residuals:
## Min 1Q Median 3Q Max
## -1.3381 -0.9325 -0.7542 1.2845 1.9351
##
## Coefficients:
## Estimate Std. Error z value Pr(>|z|)
## (Intercept) -1.878061 0.214164 -8.769 < 2e-16 ***
## Edad 0.012329 0.004444 2.774 0.00554 **
## Antig_meses 0.029950 0.003763 7.959 1.73e-15 ***
## Numero_Productos -0.007733 0.008685 -0.890 0.37327
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## (Dispersion parameter for binomial family taken to be 1)
##
## Null deviance: 2065.2 on 1600 degrees of freedom
## Residual deviance: 1990.8 on 1597 degrees of freedom
## AIC: 1998.8
##
## Number of Fisher Scoring iterations: 4
12
Area Bajo la Curva = 60.73 %
1.0
0.8
True positive rate
0.6
0.4
0.2
0.0
13
## Pos Pred Value : 0.6584
## Neg Pred Value : 0.3889
## Prevalence : 0.6541
## Detection Rate : 0.5990
## Detection Prevalence : 0.9098
## Balanced Accuracy : 0.5086
##
## 'Positive' Class : 0
##
Lift Chart
1.5
1.0
Lift
0.5
0.0
% Populations
14
• De los resultados nos quedamos con el modelo mylogit2 (AUC: 60.73%)
15
1
Antig_meses
< 30 ≥ 30 3
Edad
Ingresos
< 47359.5
≥ 47359.5
No
No
No
No
0.8 0.8 0.8 0.8 0.8
0.6 0.6 0.6 0.6 0.6
0.4 0.4 0.4 0.4 0.4
0.2 0.2 0.2 0.2 0.2
Si
Si
Si
Si
Si
0 0 0 0 0
16
1
No
.65 .35
100%
yes Antig_meses < 30 no
3
No
.51 .49
41%
Edad < 33
7
Si
.43 .57
30%
Edad >= 40
14
Si
.49 .51
19%
Ingresos < 47e+3
2 6 28 29 15
No No No Si Si
.76 .24 .72 .28 .57 .43 .42 .58 .33 .67
59% 11% 8% 11% 11%
17
No
0.35
100%
yes Antig_meses < 30 no
No
0.49
41%
Edad < 33
Si
0.57
30%
Edad >= 40
Si
0.51
19%
Ingresos < 47e+3
No No No Si Si
0.24 0.28 0.43 0.58 0.67
59% 11% 8% 11% 11%
18
## Pos Pred Value : 0.6538
## Neg Pred Value : 0.7273
## Prevalence : 0.3497
## Detection Rate : 0.1321
## Detection Prevalence : 0.2021
## Balanced Accuracy : 0.6351
##
## 'Positive' Class : Si
##
## [1] 67.65826
## [1] 35.31651
19
Area Bajo la Curva = 67.66 %
1.0
0.8
True positive rate
0.6
0.4
0.2
0.0
##
## Attaching package: 'scales'
20
## The following object is masked from 'package:purrr':
##
## discard
## [1] 80 8
21
## 0 40 17
## 1 14 9
## ------------------------------
## Matriz de confusión para k = 2
## ==============================
## Predichos
## Actual 0 1
## 0 36 21
## 1 12 11
## ------------------------------
## Matriz de confusión para k = 3
## ==============================
## Predichos
## Actual 0 1
## 0 39 18
## 1 14 9
## ------------------------------
## Matriz de confusión para k = 4
## ==============================
## Predichos
## Actual 0 1
## 0 45 12
## 1 14 9
## ------------------------------
## Matriz de confusión para k = 5
## ==============================
## Predichos
## Actual 0 1
## 0 44 13
## 1 13 10
## ------------------------------
## Matriz de confusión para k = 6
## ==============================
## Predichos
## Actual 0 1
## 0 45 12
## 1 14 9
## ------------------------------
## Matriz de confusión para k = 7
## ==============================
## Predichos
## Actual 0 1
## 0 44 13
## 1 14 9
## ------------------------------
## Matriz de confusión para k = 8
## ==============================
## Predichos
## Actual 0 1
## 0 45 12
## 1 13 10
## ------------------------------
## Matriz de confusión para k = 9
## ==============================
22
## Predichos
## Actual 0 1
## 0 44 13
## 1 13 10
## ------------------------------
## Matriz de confusión para k = 10
## ==============================
## Predichos
## Actual 0 1
## 0 45 12
## 1 13 10
## ------------------------------
## Predichos
## Actual 0 1
## 0 46 11
## 1 13 10
23
## No Information Rate : 0.7125
## P-Value [Acc > NIR] : 0.6500
##
## Kappa : 0.2482
##
## Mcnemar's Test P-Value : 0.8383
##
## Sensitivity : 0.8070
## Specificity : 0.4348
## Pos Pred Value : 0.7797
## Neg Pred Value : 0.4762
## Prevalence : 0.7125
## Detection Rate : 0.5750
## Detection Prevalence : 0.7375
## Balanced Accuracy : 0.6209
##
## 'Positive' Class : 0
##
## [1] 0.66
## [1] 0.34
24
## Setting levels: control = 0, case = 1
##
## Call:
## roc.default(response = test_n$Acepta_TC, predictor = attributes(mod)$prob)
##
## Data: attributes(mod)$prob in 268 controls (test_n$Acepta_TC 0) < 132 cases (test_n$Acepta_TC 1).
## Area under the curve: 0.3845
25
1.0
−Inf (0.000, 1.000)
0.8
0.6
Sensitivity
AUC: 0.385
0.4
0.2
0.0
26
Modelo Naive Bayes
##
## pred4_Est No Si
## No 227 115
## Si 24 20
27
## [1] 65.33569
## [1] 30.67139
28
Area Bajo la Curva = 65.34 %
1.0
0.8
True positive rate
0.6
0.4
0.2
0.0
29