La base de datos: base_prueba_tecnica_modelamiento contiene 24003 filas y los siguientes campos:

El objetivo es plantear un modelo que ayude a explicar la variable dependiente Y en función de las diferentes variables explicativas que están en la base. La variable dependiente es una variable binaria.

Base de datos

A continuación se muestran parámetros estadísticos de las variables numéricas y tablas de fercuencia para las variables categóricas:

summary(base)
##    CODIGO_ID     MarcaMora_Tarjeta ORIGEN_APROBACION FORMA_PAGO
##  Min.   :    1   0:23128           Proactivo:18655   No:17921  
##  1st Qu.: 6002   1:  875           Demanda  : 5348   Si: 6082  
##  Median :12002                                                 
##  Mean   :12002                                                 
##  3rd Qu.:18003                                                 
##  Max.   :24003                                                 
##                                                                
##  SALDO_TOTAL_TARJETA CUPO_PROMEDIO_TARJETA SALDO_UTILIZ_PROM_CLIENTE
##  Min.   :    0.0     Min.   :    0         Min.   :    0.0          
##  1st Qu.:  410.9     1st Qu.:  900         1st Qu.:  311.4          
##  Median :  958.5     Median : 2167         Median :  808.5          
##  Mean   : 1482.6     Mean   : 2814         Mean   : 1275.5          
##  3rd Qu.: 1992.8     3rd Qu.: 3000         3rd Qu.: 1769.2          
##  Max.   :45392.8     Max.   :50000         Max.   :32850.1          
##                      NA's   :1038                                   
##  CANTIDAD_TOTAL_AVANCES ANTIGUEDAD_TARJETA_ANIOS
##  Min.   : 0.000         Min.   : 0.000          
##  1st Qu.: 0.000         1st Qu.: 2.000          
##  Median : 0.000         Median : 3.000          
##  Mean   : 1.024         Mean   : 4.247          
##  3rd Qu.: 0.000         3rd Qu.: 7.000          
##  Max.   :79.000         Max.   :12.000          
##                         NA's   :1038            
##  PROMEDIO_MENSUAL_CONSUMOS_LOCALES MAXIMO_NUM_DIAS_VENCIDO
##  Min.   :    0.0                   Min.   : 0.00          
##  1st Qu.:    0.0                   1st Qu.: 0.00          
##  Median :   40.0                   Median : 4.00          
##  Mean   :  196.6                   Mean   :10.74          
##  3rd Qu.:  185.2                   3rd Qu.:18.00          
##  Max.   :35956.0                   Max.   :87.00          
##                                                           
##  NUMERO_OPERACIONES_TITULAR PROMEDIO_DIAS_SOBREGIRO_CC
##  Min.   : 0.000             Min.   :  0.0000          
##  1st Qu.: 2.000             1st Qu.:  0.0000          
##  Median : 3.000             Median :  0.0000          
##  Mean   : 3.009             Mean   :  0.6212          
##  3rd Qu.: 4.000             3rd Qu.:  0.0000          
##  Max.   :13.000             Max.   :221.0000          
##                             NA's   :1038              
##  PROMEDIO_MENSUAL_SALDO_CUENTA_PASIVO MARCA_CUENTA_CORRIENTE
##  Min.   :-58423.4                     No  :10983            
##  1st Qu.:     0.0                     Si  :11982            
##  Median :    86.0                     NA's: 1038            
##  Mean   :  2794.1                                           
##  3rd Qu.:   868.7                                           
##  Max.   :873976.0                                           
##                                                             
##  MARCA_CUENTA_AHORROS RIESGO_CLIENTE_TOTAL_GFP VALOR_DEPOSITO_A_PLAZO
##  No  :10983           Min.   :      0.0        Min.   :      0       
##  Si  :11982           1st Qu.:    471.4        1st Qu.:      0       
##  NA's: 1038           Median :   1158.3        Median :      0       
##                       Mean   :   4177.8        Mean   :   1796       
##                       3rd Qu.:   2515.4        3rd Qu.:      0       
##                       Max.   :1715176.4        Max.   :2281686       
##                                                                      
##  SEGMENTO_RIESGO      SUCURSAL          EDAD        GENERO     
##  A   :20824      QUITO    :12482   Min.   :23.00   FEM : 9625  
##  B   : 1262      GUAYAQUIL: 6789   1st Qu.:29.00   MAS :13340  
##  C   :  256      AMBATO   :  898   Median :36.00   NA's: 1038  
##  D   :  228      CUENCA   :  794   Mean   :36.41               
##  E   :  395      IBARRA   :  493   3rd Qu.:43.00               
##  NA's: 1038      (Other)  : 1509   Max.   :50.00               
##                  NA's     : 1038   NA's   :1038                
##  INSTRUCCION NUM_TC_SIST_FIM SUCURSAL_ESMERALDASoMANTA
##  N/E: 1038   Min.   :0.0     No:23361                 
##  PRI: 4347   1st Qu.:1.0     Si:  642                 
##  SEC:12863   Median :3.0                              
##  TEC:  455   Mean   :2.5                              
##  UNI: 5300   3rd Qu.:4.0                              
##              Max.   :5.0                              
## 

Hay presencia de datos faltantes en algunas variables. El siguiente diagrama muestra el porcentaje de datos perdidos por variable y su distribución en los datos:

La gráfica anterior muestra que las siguientes variables presentan un 2% de observaciones faltantes:

Las demás variables tienen sus observaciones completas. Para el ajuste del modelo vamos a considerar una submuestra de la base de datos, la cual excluye las filas que presentan datos faltanes (1038 filas).

Por tanto, la base de datos a considerarse tiene 22965 observaciones.

Ajuste: MODELO LOGIT

Un Modelo Logit estima la probabilidad de un suceso dicótomico y permite comparar un grupo de variables independientes continuas y categóricas con una variable dependiente categórica (dicotómica) como es el caso del presente estudio.

Definición

Sea la variable respuesta Y: \[ Y = \left \{ \begin{matrix} 1 & \mbox{si tiene mora en la tarjeta} \\ 0 & \mbox{si no tiene mora en la tarjeta}\end{matrix}\right. \] Si la variable Y es el resultado de un experimento de bernoulli, esto es, las observaciones son independientes, entonces la variable aleatoria tiene distribución de Bernoulli con: \[ P(Y=1|X=x)=\pi\hspace{1cm} \mbox{ y }\hspace{1cm}P(Y=0|X=x)=1-\pi \] y pueden ser calculada a partir de una distribución de probabilidad logística: \[ \begin{equation} P(Y=1|X=x)=\pi=\frac{e^{\beta_0+\beta_1 X}}{1+e^{\beta_0+\beta_1 X}} \end{equation} \] donde \(\beta_0+\beta_1 X\) es un predictor lineal y la representación como un modelo lineal generalizado, será a travéz de los Odds Ratio: \[ \begin{equation} logit(\pi)=\left(\frac{P(Y=1|X=x)}{1-P(Y=1|X=x)}\right)=\ln\left( \frac{\pi}{1-\pi}\right) =\beta_0+\beta_1 X \end{equation} \]

Ventajas / desventajas

Con la modelización Logit:

  • El resultado del modelo es la estimación de la probabilidad de que un nuevo individuo pertenezca a un grupo o a otro.

  • Crea un perfil de variables predictivas; tal que todas en una sola ecuación conjunta explican la probabilidad de alcanzar una respuesta u otra.

  • No se necesita que se cumpla el supuesto de normalidad ya que la variable dependiente es dicotómica .

  • En este modelo los coeficientes pueden ser interpretados (al ser exponenciados y luego restados en uno).

  • La desventaja es que el tamaño de muestra debe ser grande, ya que tiene como método de estimación la máxima verosimilitud..

Porqué el modelo Logit?

  • Un Modelo Probit tiene como respuesta a una variable categórica dependiente donde la la función de enlace Probit es la inversa de una distribución normal estándar.

El Modelo Probit construye una variable latente continua a diferencia del Modelo Logit, siendo ésta su ventaja más allá el calculo de probabilidades. Además sus coeficientes no tienen una interpretación directa.

  • Hay más métodos para clasificación como el Análisis Discriminante,Arboles de clasificación, K vecinos más cercanos, son soluciones diseñadas preferentemente para la predicción que para el ajuste.

Modelamiento de los datos

Train y Test Data

En modelos de aprendizaje supervisado y no supervisado generalmente dividimos nuestros datos en dos subconjuntos: datos de entrenamiento y datos de prueba.

El objetivo de seccionar la base de datos es no generar un modelo sobre ajustado.

El porcentaje planteado es del 85% (19291 observaciones) para la base de datos de entrenamiento y 15% (3674 observaciones) para la base de datos de prueba.

Ajuste del Modelo

Mediante la librería brglm de R, ajustamos un modelo logit para datos sparce. Se selecciona el mejor modelo partiendo de selección hacia atrás. El mejor modelo según el criterio de Akaike es el siguiente:

## 
## Call:
## brglm(formula = MarcaMora_Tarjeta ~ 1 + FORMA_PAGO + SALDO_TOTAL_TARJETA + 
##     CUPO_PROMEDIO_TARJETA + SALDO_UTILIZ_PROM_CLIENTE + ANTIGUEDAD_TARJETA_ANIOS + 
##     MAXIMO_NUM_DIAS_VENCIDO + PROMEDIO_MENSUAL_SALDO_CUENTA_PASIVO + 
##     SEGMENTO_RIESGO + SUCURSAL_ESMERALDASoMANTA, family = binomial(link = "logit"), 
##     data = train)
## 
## 
## Coefficients:
##                                        Estimate Std. Error z value
## (Intercept)                          -2.845e+00  8.451e-02 -33.661
## FORMA_PAGOSi                         -3.932e-01  1.046e-01  -3.758
## SALDO_TOTAL_TARJETA                   1.221e-04  3.255e-05   3.753
## CUPO_PROMEDIO_TARJETA                -2.830e-04  4.476e-05  -6.321
## SALDO_UTILIZ_PROM_CLIENTE             2.515e-04  5.614e-05   4.479
## ANTIGUEDAD_TARJETA_ANIOS             -2.265e-01  1.825e-02 -12.413
## MAXIMO_NUM_DIAS_VENCIDO               1.644e-02  2.406e-03   6.834
## PROMEDIO_MENSUAL_SALDO_CUENTA_PASIVO -9.013e-05  2.335e-05  -3.860
## SEGMENTO_RIESGOB                      1.598e+00  9.991e-02  15.997
## SEGMENTO_RIESGOC                      1.698e+00  1.967e-01   8.633
## SEGMENTO_RIESGOD                      1.903e+00  1.987e-01   9.577
## SEGMENTO_RIESGOE                      1.714e+00  1.739e-01   9.854
## SUCURSAL_ESMERALDASoMANTASi           6.859e-01  1.733e-01   3.958
##                                      Pr(>|z|)    
## (Intercept)                           < 2e-16 ***
## FORMA_PAGOSi                         0.000172 ***
## SALDO_TOTAL_TARJETA                  0.000175 ***
## CUPO_PROMEDIO_TARJETA                2.59e-10 ***
## SALDO_UTILIZ_PROM_CLIENTE            7.49e-06 ***
## ANTIGUEDAD_TARJETA_ANIOS              < 2e-16 ***
## MAXIMO_NUM_DIAS_VENCIDO              8.26e-12 ***
## PROMEDIO_MENSUAL_SALDO_CUENTA_PASIVO 0.000113 ***
## SEGMENTO_RIESGOB                      < 2e-16 ***
## SEGMENTO_RIESGOC                      < 2e-16 ***
## SEGMENTO_RIESGOD                      < 2e-16 ***
## SEGMENTO_RIESGOE                      < 2e-16 ***
## SUCURSAL_ESMERALDASoMANTASi          7.56e-05 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## (Dispersion parameter for binomial family taken to be 1)
## 
##     Null deviance: 6210.8  on 19290  degrees of freedom
## Residual deviance: 5311.4  on 19278  degrees of freedom
## Penalized deviance: 5178.769 
## AIC:  5337.4

Ecuación del modelo encontrado:

MarcaMora_Tarjeta = 0.06 + 0.67 FORMA_PAGOSi + 1 SALDO_TOTAL_TARJETA + 1 CUPO_PROMEDIO_TARJETA + 1 SALDO_UTILIZ_PROM_CLIENTE + 0.8 ANTIGUEDAD_TARJETA_ANIOS + 1.02 MAXIMO_NUM_DIAS_VENCIDO + 1 PROMEDIO_MENSUAL_SALDO_CUENTA_PASIVO + 4.94 SEGMENTO_RIESGOB + 5.46 SEGMENTO_RIESGOC + 6.71 SEGMENTO_RIESGOD + 5.55 SEGMENTO_RIESGOE + 1.99 SUCURSAL_ESMERALDASoMANTASi

Predicciones

Probemos nuestro modelo prediciendo en nuestro conjunto de datos de prueba.

## [1] "Presición:  94.61  %"
##            No  Si
## REAL     3548 126
## PREDICHO 3546 128

usando Root Mean Square Error, una medida estandarizada de cuán lejos estábamos con nuestros valores predichos.

El Root Mean Square Error (RMSE) para nuestro modelo es 0.9995, mientras más cercano a uno menor es la variabilidad de las predicciones.

Residuos

Conclusiones