Construyendo tu propia bola de cristal predicción de precios con machine learning

Post on 16-Feb-2017

1.337 views 0 download

Transcript of Construyendo tu propia bola de cristal predicción de precios con machine learning

@rafbermudez#codemotion_es

● Rafael Bermúdez Míguez ● @rafbermudez● rafa@rafbermudez.com

Construyendo tu propia bola de cristal:predicción de precios con machine learning

MADRID · NOV 27-28 · 2015

@rafbermudez#codemotion_es

Bolas de los deseos

Métodos de adivinación

De qué va esta película

• Estadística• Probabilidad• Imaginación• Producto

@rafbermudez#codemotion_es

GRACIAS

ETS Asset Management Factorywww.ets.es

www.otogami.com

http://www.runnics.com/

@rafbermudez#codemotion_es

El problema• Qué

• Predecir el precio de videojuegos• Cómo

• Data science• Por qué

• Aportar más valor a los usuarios/tiendas• Abrir nuevas líneas de negocio• Aprovechar los datos históricos

@rafbermudez#codemotion_es

CLASIFICAR pintarenblancopintarenblanco

clusterización

EXPLORAR Y PREPARAR

DATOS

limpieza y filtrado

Proceso

GENERAR MODELO Y VALIDAR

selección de atributos y modelo

predictivo

@rafbermudez#codemotion_es

Por dónde empezamos

@rafbermudez#codemotion_es

MVP

• Modelo predictivo• Ajuste de tendencia• Precio mínimo

• Plataformas maduras• PS3 y Xbox360

• Series temporales completas

@rafbermudez#codemotion_es

1. Explorar y preparar datos

@rafbermudez#codemotion_es

matices

Morphing

granularidad

Simplificar

RAW DATA

o

gaps

Rellenar

Comparación

Generalizar

diversas medidas

Normalizar

temporalidad

Truncar

Explorar y preparar datosEnemigo 1 Enemigo 3

Enemigo 4 Enemigo 5 Enemigo 6

GOAL

Enemigo 2

@rafbermudez#codemotion_es

raw data

@rafbermudez#codemotion_es

Gaps: RellenarValor anteriorLibrería zoo (R)

@rafbermudez#codemotion_es

Granularidad: SimplificarAgregación

por semana

@rafbermudez#codemotion_es

Matices: Morfología matemática1. Apertura

1.1.Erosión1.2.Dilatación2. Cierre

2.1.Dilatación2.2.Erosión

@rafbermudez#codemotion_es

Temporalidad: Truncar• Truncar preorders• Truncar cola

@rafbermudez#codemotion_es

Temporalidad: Truncar• Truncada!

@rafbermudez#codemotion_es

Diversas medidas: Normalizar• Escalar serie

• serie <- serie/serie[1]

@rafbermudez#codemotion_es

Comparación : Generalizar• Aproximación

logarítmica

• LogValue: -0.2541175

• error: 0.01328662

@rafbermudez#codemotion_es

2. Clasificar

@rafbermudez#codemotion_es

Histograma: Valor de aproximación• 358 juegos

procesados [-0.25, -0.1]

74% de los datos

@rafbermudez#codemotion_es

Histograma: Error de aproximación• 358 juegos

procesados[0.005, 0.015]

77% de los datos

@rafbermudez#codemotion_es

Clusterización

• K-means 6 clusters• cluster, size, mean

1 | 38 | -0.034472 | 10 | 0.088363 | 67 | -0.156304 | 106| -0.195205 | 82 | -0.242316 | 55 | -0.10462

@rafbermudez#codemotion_es

Tendencia por cluster

• Rojo: 2, 1• Verde: 6, 3, 4, 5

@rafbermudez#codemotion_es

3. Generar modelo y validar

@rafbermudez#codemotion_es

Modelo predictivo

• Algoritmo: rpart• Atributos:

• referenceprice• year• date_part (mes)• platform• metacritic • pegi• publisher• developer

@rafbermudez#codemotion_es

Probando...

• Cluster asignado: 4• fiabilidad: 56%• Desviación: mínima

• Cluster real: 4• Desviación: mínima

@rafbermudez#codemotion_es

Probando...2

• Cluster asignado: 4• fiabilidad: 49%• Desviación:

razonable

• Cluster real: 3• Desviación: mínima

@rafbermudez#codemotion_es

Probando...3

• Cluster asignado: 5• fiabilidad: 42%• Desviación: grande

• Cluster real: 4• Desviación: mínima

@rafbermudez#codemotion_es

Probando...4

• Cluster asignado: 1• fiabilidad: 45%• Desviación: grande

• Cluster real: 5• Desviación: grande

@rafbermudez#codemotion_es

Conclusiones

Etapa Posibles mejoras

Aproximar 1. Subdividir y aproximar en intervalos

Clasificar 1. Detectar y eliminar outliers2. Afinar clusters ( fisión, fusión)

Generar modelo

(Fiabilidad media 53%)

1. Añadir atributos2. Afinar y podar árbol3. Generación de modelos alternativos

@rafbermudez#codemotion_es

¡Gracias! ¿Preguntas?

● Rafael Bermúdez Míguez ● @rafbermudez● rafa@rafbermudez.com

Construyendo tu propia bola de cristal:

predicción de precios con machine learning

MADRID · NOV 27-28 · 2015