Compártelo
image

Reto Microsoft Predictive Modelling

¿Podrías recomendar a los clientes su cesta de productos financieros ideal?

Poder disponer de un análisis de cesta de productos financieros eficaz supone un reto a la hora de satisfacer las necesidades de los clientes dentro de su ciclo de vida de relación con la entidad. El resultado final se traduce en un motor de recomendación que nos permita cubrir tanto la parte de up-selling como cross-selling.

En este desafío dispondrás de las contrataciones históricas realizadas por clientes durante su relación con la Entidad y una serie de atributos socio demográficos adicionales que te permitirá ajustar aún más el perfil de contratación. A través de esta información tendrás que predecir la probabilidad de que cada cliente contrate un nuevo producto/s financieros.

EL OBJETIVO

Mediante la senda de contratación histórica del cliente en la Entidad, podrás analizar sus contrataciones habituales con el objetivo de ver qué productos se venden conjuntamente, y cuáles son los siguientes productos a contratar.

Se parte de una cesta de productos inicial y el resultado será una serie de productos a contratar, que conformará la cesta futura.

El análisis de la cesta de productos permite optimizar las estrategias de Cross y Up Selling.

Te retamos a construir el mejor modelo de Association Rules a través de Market Basket Analysis de tal forma que te permita disponer de un motor de recomendación de contratación de productos. ¿Serás capaz de predecir cuál será el próximo producto financiero a contratar por el cliente?.

Para ello puedes utilizar las distintas técnicas de Machine Learning disponibles para este tipo de problemas: Reglas de asociación, modelos de clasificación, etc…

Nota: Este Dataset no es representativo de la base de clientes del Grupo Cooperativo Cajamar.

EL DATASET

Se proporciona la secuencia de contratación histórica de un grupo clientes, particulares y autónomos, del Grupo Cajamar a través de 94 modalidades de productos incluyendo atributos socio demográficos. El desafío consiste en predecir el siguiente producto/s a contratar por el cliente y que formaría su cesta futura ideal de productos financieros.



Registros
Train.txt (Dataset Training): El número total de registros es de 3.350.601 con 8 variables por registro. Con el fichero de Train deberás construir un modelo predictivo que permita determinar el siguiente producto a contratar por el cliente, para ello dispones de este fichero transaccional donde cada registro muestra la contratación de un producto financiero por cliente, tendremos tantos registros como contrataciones históricas tenga el cliente. El fichero a descargar se denomina train2.txt (fichero actualizado el 24 de febrero).

Test.txt (Dataset Test): El número total de registros es de 1.147.687 con 8 variables por registro. El modelo generado con los datos de Train.txt lo aplicarás a los datos del fichero Test.txt, de modo que asignarás a cada cliente el siguiente producto que contrataría en base a sus productos anteriormente contratados y sus variables sociodemográficas. El fichero a descargar se denomina test2.txt (fichero actualizado el 24 de febrero).

Test_Mission.txt (Dataset Entrega): A cada cliente de Test.txt se le asignará un único siguiente producto sugerido a contratar. El dataset incluirá exclusivamente 258.989 registros (258.990 con la cabecera) y 2 variables por registro, ID_Customer y Cod_Prod, donde cada registro identificará a un cliente del Test.txt y el siguiente producto sugerido por el modelo.
El resultado predicho se validará en la Fase Nacional con el resultado real de contratación, tomando como éxito el número de productos coincidentes. El fichero a enviar se denominará Test_Mission.txt, para este dataset se utilizará codificación UTF-8 y como separador el símbolo pipe "|".



Variables
ID_Customer: Identificador de cliente.
Cod_Prod: Código de la modalidad de producto contratado.
Cod_Fecha: Fecha de contratación de la modalidad de producto.
Socio_Demo_01-05: Variables socio demográficas relacionadas con el cliente.

Las siguientes variables son categóricas (nominales):

  • Socio_Demo_01.
    • 1: Edad < 18 años
    • 2: Edad >= 18 años y Edad < 30 años
    • 3: Edad >= 30 años y Edad < 45 años
    • 4: Edad >= 45 años y Edad < 65 años
    • 5: Edad >= 65 años
  • Socio_Demo_02.
    • 1: Antigüedad < 1 año
    • 2: Antigüedad >=1 año y Antigüedad < 5 años
    • 3: Antigüedad >= 5 años y Antigüedad < 10 años
    • 4: Antigüedad >= 10 años y Antigüedad < 20 años
    • 5: Antigüedad >= 20 años
  • Socio_Demo_03.
    • 1: Ingresos < 6.000 €
    • 2: Ingresos >= 6.000 € and Ingresos < 12.000 €
    • 3: Ingresos >= 12.000 € and Ingresos < 24.000 €
    • 4: Ingresos >= 24.000 € and Ingresos < 32.000 €
    • 5: Ingresos >= 32.000 €

Las siguientes variables son categóricas (nominales):

  • Cod_Prod.: Código de la modalidad de producto contratado.
  • Socio_Demo_04: Sexo (1: Hombre, 2: Mujer)
  • Socio_Demo_05: Segmento (00: Particular | 01:Agricultor | 02:Comercio | 03:Autónomo)

La siguiente variable es fecha:

  • Cod_Fecha: Formato YYYY-MM


Á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 contrataciones de productos financieros realizadas por el cliente durante su relación con la Entidad.



Formato y estructura
Ambos datasets tienen formato txt, comprimido en un zip. La estructura del mismo es la siguiente:

  • Nombres de campo: Incluidos en la cabecera.
  • Separador: Se ha usado como separador el símbolo pipe "|".
  • Codificación: UTF-8.
  • Indicador de símbolo decimal: Considerar la coma ",".

Microsoft Predictive Modelling

3.350.601

registros para el training

1.147.687

registros para el testing

8

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 los correspondiente parámetro de validación en función de la técnica analítica utilizada y comparando objetivamente los valores reales frente a los valores predichos por el modelo en el Test.
  • Técnica utilizada
    Así como su correcta aplicación al problema planteado.

AYUDAS AL DESARROLLO DEL RETO

  • Librerías de análisis de datos y visualización

    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:

    Librerías 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.


    arules
    Proporciona la infraestructura para representar, manipular y analizar datos de transacciones (conjunto de elementos frecuentes y reglas de asocacición). Destacan los algoritmos A priori y Eclat


    arulesSequences
    Utiliza el algoritomo cSPADE para tratar la minería de patrones secuenciales frecuentes.

    Librerías 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.

  • Herramientas

    Recuerda que puedes utilizar las herramientas y/o lenguaje de programación con los que te sientas más cómodo para enfrentarte a la Cajamar UniversityHack 2017.

    MICROSOFT
    Microsoft ha transformado constantemente la forma en la que la gente vive, trabaja, juega y se conecta a través de una gran tecnología.
    Descubre las herramientas de Data Science de Microsoft: SQL Azure, Azure Storage, DocumentDB, Azure Stream Analytics, Microsoft Power BI, Azure Machine Learning Studio, Visual Studio Dev Essentials y Microsoft Imagine.


    IBM
    IBM es la mayor empresa tecnológica y consultora del mundo, atendiendo a clientes en 170 países. En esta nueva era de Cognitive Bussiness, IBM está ayudando a transformar la industria con su experiencia en Cloud, Analytics, Security, Móvil e Internet de las Cosas.
    Descubre las herramientas de Data Science de IBM: Data Science Experience, Watson Analytics, SPSS Modeler y DashDB Analytics.


    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".