Post on 17-Jul-2015
Machine Learning en el mundo real De los Datos a las Predicciones
Un caso práctico del sector turístico
Andrés González Responsable Área Big Data
andresg@clevertask.com Twitter: @data_lytics
CleverTask Solutions SL - Big Data Business Unit 2
Agenda Necesidad de negocio1
“Cocinar” la predicción2
Recogida de ingredientes3
Limpieza y Transformaciones4
La receta (el modelo)5
Probar el plato6
CleverTask Solutions SL - Big Data Business Unit 3
Agenda Necesidad de negocio1
“Cocinar” la predicción2
Recogida de ingredientes3
Limpieza y Transformaciones4
La receta (el modelo)5
Probar el plato6
CleverTask Solutions SL - Big Data Business Unit 4
Sector hotelero
• % ocupación de hoteles.
• Riesgo de cancelación de reservas.
• Ingresos.
CleverTask Solutions SL - Big Data Business Unit 5
Necesidad de negocio
Predecir la NACIONALIDAD de los clientes
ANTES de llegar al hotel
CleverTask Solutions SL - Big Data Business Unit 10
… los detalles marcan la diferencia
En definitiva, porque…
CleverTask Solutions SL - Big Data Business Unit 11
Agenda Necesidad de negocio1
“Cocinar” la predicción2
Recogida de ingredientes3
Limpieza y Transformaciones4
La receta (el modelo)5
Probar el plato6
CleverTask Solutions SL - Big Data Business Unit 13
Machine Learning básico
¿Puedes encontrar patrones en estos datos?
CleverTask Solutions SL - Big Data Business Unit
14
Machine Learning básico
Datos históricos Entrenamiento Predicción
Nuevos datos Re-entrenamiento
CleverTask Solutions SL - Big Data Business Unit 15
“Cocinar” la predicción2
Ir al mercado a por los ingredientes
Limpiarlos
Transformarlos
Cocinar
Probar el plato
CleverTask Solutions SL - Big Data Business Unit 16
“Cocinar” la predicción2
Ir al mercado a por los ingredientes
Limpiarlos
Transformarlos
Cocinar
Probar el plato
Recogida de Datos en “crudo”
Limpieza de Datos
Transformación y Feature Engineering
Aprendizaje y Entrenamiento del Modelo
Evaluación de calidad de las predicciones
CleverTask Solutions SL - Big Data Business Unit 17
Agenda Necesidad de negocio1
“Cocinar” la predicción2
Recogida de ingredientes3
Limpieza y Transformaciones4
La receta (el modelo)5
Probar el plato6
CleverTask Solutions SL - Big Data Business Unit 18
De dónde vienen los datos
Web propia
Webs de Partners
Datos en crudo RAW
CleverTask Solutions SL - Big Data Business Unit 19
Datos RAW
Fichero .xlsx con histórico de
1 año de reservas
Un registro por cada reserva
Características •260.000 reservas •80 campos
•57 categóricos •9 numéricos •10 tipo fecha •3 tipo texto •1 campo erróneo
•Tamaño: 150 MB
CleverTask Solutions SL - Big Data Business Unit 21
Agenda Necesidad de negocio1
“Cocinar” la predicción2
Recogida de ingredientes3
Limpieza y Transformaciones4
La receta (el modelo)5
Probar el plato6
CleverTask Solutions SL - Big Data Business Unit 22
Proceso
Datos en crudo
Nuevos campos
1 3 4Datos RAW
Transformay Feature
Engineering
Datos limpios
Campos calculados
2Limpieza Modelo
CleverTask Solutions SL - Big Data Business Unit 24
Limpieza de datos
Borrado de filas
• Reservas sin check-in • Reservas canceladas • Registros con errores
Borrado de columnas
• Identificadores vs nombres
• Columnas con pocos datos
Otras acciones
• Dar formato a las fechas • Eliminar acentos • Transformar de .xlsx
a .csv
CleverTask Solutions SL - Big Data Business Unit 25
Dataset limpio
Limpio
•150.000 reservas •46 campos •26 categóricos •9 numéricos •10 tipo fecha •1 tipo texto
•Tamaño: 75MB
Sucio
•260.000 reservas •80 campos
•57 categóricos •9 numéricos •10 tipo fecha •3 tipo texto •1 campo erróneo
•Tamaño: 150 MB
CleverTask Solutions SL - Big Data Business Unit 26
Proceso
Datos en crudo
Nuevos campos
1 3 4Datos RAW
Transformaciones y Feature
Engineering
Datos limpios
Campos calculados
2Limpieza Modelo
CleverTask Solutions SL - Big Data Business Unit 27
Transformaciones
Agrupación de países
•Muchos países a predecir (210)
•Algunos países tienen muy pocas instancias
•Objetivo de cada agrupación: mín. 1% del total de instancias
•Total grupos: 20
Nuevos campos
• ANTELACIÓN_RESERVA (calculado): fecha reserva-fecha entrada
• PAIS_HOTEL (nombre de país)
• ESTRELLAS_HOTEL (1-5)
CleverTask Solutions SL - Big Data Business Unit 28
Dataset limpio
Limpio •150.000 reservas •46 campos •Tamaño: 75MB
Sucio •260.000 reservas •80 campos •Tamaño: 150 MB
Transformado •150.000 registros •49 campos •Tamaño: 80MB
CleverTask Solutions SL - Big Data Business Unit 29
Qué es Feature Engineering
Extraer la señal del ruido
CleverTask Solutions SL - Big Data Business Unit 30
Técnicas de Feature Engineering
• Detectar los campos (features) que son predictores (señal) y eliminar los que no (ruido)
• Campos dependientes (pax, días, pax*días) • Campos supérfluos (número de reserva) • Campos con pocos datos • Campos aleatorios (minuto y segundo de la reserva)
• Conocimiento del sector • Experiencia • Ciclo recursivo
CleverTask Solutions SL - Big Data Business Unit 32
Dataset limpio
Limpio •150.000 reservas •46 campos •Tamaño: 75MB
Sucio •260.000 reservas •80 campos •Tamaño: 150 MB
Transformado •150.000 registros •49 campos •Tamaño: 80MB
Dataset Final •150.000 registros •10 campos
•7 categóricos •2 numéricos •1 fecha
•Tamaño: 55MB
CleverTask Solutions SL - Big Data Business Unit 33
Agenda Necesidad de negocio1
“Cocinar” la predicción2
Recogida de ingredientes3
Limpieza y Transformaciones4
La receta (el modelo)5
Probar el plato6
CleverTask Solutions SL - Big Data Business Unit 34
Proceso
Datos en crudo
Nuevos campos
1 3 4Datos RAW
Transformaciones y Feature
Engineering
Datos limpios
Campos calculados
2Limpieza Modelo
CleverTask Solutions SL - Big Data Business Unit 37
Agenda Necesidad de negocio1
“Cocinar” la predicción2
Recogida de ingredientes3
Limpieza y Transformaciones4
La receta (el modelo)5
Probar el plato6
CleverTask Solutions SL - Big Data Business Unit 39
Calidad del modelo
80%
20% Evaluación
Training
TestDataset 100%
Modelo
CleverTask Solutions SL - Big Data Business Unit 40
Calidad del modelo
Tasa de acierto Matriz de confusión
CleverTask Solutions SL - Big Data Business Unit 42
Ir al mercado a por los ingredientes
Limpiarlos
Transformarlos
Cocinar
Probar el plato
Recogida de Datos en “crudo” (RAW)
Limpieza de Datos
Transformación y Feature Engineering
Aprendizaje y Entrenamiento del Modelo
Evaluación de calidad de las predicciones
Cocinar una predicción
80%
20%
CleverTask Solutions SL - Big Data Business Unit 43
Otras técnicasEnsembles Clústers
Análisis de pesos Detección de anomalías