Reto Predictive Modelling

¿Qué clientes contratan un préstamo personal?

Uno de los retos a los que se enfrentan las entidades es predecir qué clientes están interesados en solicitar un préstamo personal, ¿quiénes son estos clientes y en qué momento de su ciclo de vida se plantean contratar un préstamo personal?

En este desafío dispondrás de 100 características anónimas que te permitirán definir y predecir la probabilidad de que cada cliente contrate o no un préstamo personal.

EL OBJETIVO

Te retamos a que encuentres el mejor modelo de clasificación mediante el desarrollo de un modelo predictivo que asigne con precisión la propensión de contratar o no un préstamo personal.

Para ello puedes utilizar las distintas técnicas de Machine Learning disponibles para este tipo de problemas: Árboles de decisión, Random Forest, SVM, regresión logística, etc.

LOS DATASETS

Información contenida

  • train.txt – en el dataset de entrenamiento, contiene los valores de respuesta.
  • test.txt – en el dataset de test, se debe predecir la variable de respuesta para todas las filas de este archivo.

En este dataset, se le proporciona más de cien variables que describen los atributos de los solicitantes de un préstamo personal del Grupo Cajamar durante el año 2015. El desafío consiste en predecir la variable "respuesta" para cada Id en el test de envió. La columna "TARGET" es la variable a predecir, tomara el valor 0 para los clientes que no contratan y 1 para los si contratan.



Registros
Dataset training: El número total de registros es de 471.839 con 100 variables por registro.
Dataset test: El número total de registros es de 202.517 con 99 variables por registro. Este dataset deberá ser devuelto con la variable de respuesta (target) asignada a cada registro para evaluar la solución.



Variables
Id: Identificador de cliente.
Socio_Demo_01-05: Variables sociodemográficas relacionadas con el cliente.
Imp_Cons_01-17: Importe de consumos habituales del cliente en base a sus operaciones con tarjetas.
Imp_Sal_01-21: Importe de los saldos de los distintos productos financieros.
Ind_prod_01-23: Tenencia de los distintos productos financieros.
Ind_Tend_01-09: Tendencia de los saldos en los principales productos financieros.
Num_Oper_01-23: Número de operaciones a través de los distintos productos financieros.
Target: Variable objetivo, es una variable ordinal y determina la contratación, valor 1 o no del producto, valor 0.

Las siguientes variables son continuas:

  • Desde Imp_Cons_01 hasta Imp_Cons_17.
  • Desde Imp_Sal_01 hasta Imp_Sal_21.
  • Desde Num_Oper_01 hasta Num_Oper_23.

Las siguientes variables son categóricas (nominales):

  • Desde Ind_prod_01 hasta Ind_prod_23.
  • Ind_Tend_01 hasta Ind_Tend_09.
  • Target.

Las siguientes variables son discretas:

  • Socio_Demo_03, Socio_Demo_04 y Socio_Demo_05.


Ámbito geográfico
El análisis dispone de información de clientes de todo el territorio español.



Ventana temporal
Se han tenido en cuenta todas las operaciones realizadas entre 2015-01-01 y 2015-12-31.



Formato y estructura
El dataset "train" se encuentra en formato txt, comprimido en un zip. La estructura del mismo es la siguiente:

  • Nombres de campo: Incluidos.
  • Separador: Se ha usado como separador el símbolo pipe "|".
  • Codificación: UTF-8.
  • Indicador de símbolo decimal: Como símbolo decimal se ha considerado la coma ",".
  • Comillas para los símbolos: No se ha usado indicador para los símbolos.

El dataset "test" debe generarse en formato txt con la siguiente estructura::

  • Nombres de campos:
    Id: Identificador de cliente
    Respuesta: Variable respuesta, variable ordinal con valores 1 contrata y 0 o no contrata préstamo personal.
  • Separador: Se ha usado como separador el símbolo pipe "|".
  • Codificación: UTF-8.
  • Indicador de símbolo decimal: Como símbolo decimal se ha considerado la coma ",".
  • Comillas para los símbolos: No se ha usado indicador para los símbolos.

Predictive Modelling Datasets

  • 471.839

    registros para el training
  • 202.517

    registros para el testing
  • 100

    variables por registro
SE VALORARÁ

 

  • Comunicación
    Que los resultados del Proyecto se transmitan de forma clara y concisa, la documentación interna aportada (códigos, comentarios) esté correctamente expresada y estructurada, y sea reproducible.
  • La calidad del modelo
    mediante su capacidad predictiva, comparando objetivamente los valores reales frente a los valores predichos por el modelo, validaciones a través de indicadores como: Sensibilidad, Especificidad, Curva ROC, etc.
  • Técnica utilizada
    Así como su correcta aplicación al problema planteado.
AYUDAS AL DESARROLLO DEL RETO

De cara a abordar el reto, y centrándonos en los dos principales lenguajes de programación que nos permiten realizar analítica avanzada, Python y R, os mostramos algunas librerías que os pueden servir de ayuda:

Librerias en Python

Numpy
Manejo de matrices y la realización de operaciones matriciales y vectoriales de forma sencilla y eficiente.

Matplotlib
Gráficas muy completas para mostrar los resultados de tus pruebas.

Scikit-learn
Librería centrada en machine learning: de clasificadores o regresores, hasta selección automática de modelos y análisis de resultados.

Librerias en R

dplyr/ data.table
El paquete dplyr/data.table es una gran herramienta para la exploración y manipulación de datos.

ggplot2
Librería muy completa que nos permite representar una gran balería de gráficos. Mejora las funciones habituales de R para gráficos pudiendo incluir más capas y especificaciones.

caret
Incluye sencillas herramientas para analizar la calidad de los datos, selección de características y construcción de modelos predictivos.

BigML
BigML es una plataforma de Machine Learning, programable y escalable que hace que sea fácil resolver y automatizar la clasificación, regresión, clustering, detección de anomalías y Association Discovery. BigML está ayudando a miles de analistas, desarrolladores de software, científicos y académicos de todo el mundo a resolver tareas Machine Learning "end-to-end".
Si quieres puedes apoyarte en la cuenta PRO de BigML valorada en 300$ que se facilitará a todos los equipos participantes en la Cajamar PythonHack 2016.