SlideShare una empresa de Scribd logo
1 de 35
2015
Otto Group: compañía de comercio electrónico.
Problema: mismos productos, clasificados de distinta forma.
Más de 200,000 productos:
Training: 61.878
Test: 144.368
93 características.
9 clases desbalanceadas.
INTRODUCCIÓN
t-SNE 2D
Características
Característica 2: 42 valores.
Característica 3: 37 valores.
Característica 4: 48 valores.
Característica 5: 59 valores.
Característica 6: 15 valores.
Característica 7: 9 valores.
Selección de características
65 características
Métrica
Error máximo al fallar: -34.53
Error al acertar con probabilidad 0.9: -0.1053
𝑙𝑜𝑔𝑙𝑜𝑠𝑠 = −
1
𝑁
𝑖
𝑁
𝑗
𝑀
𝑦𝑖𝑗log(𝑝𝑖𝑗)
max(min 𝑝, 1 − 10−15
, 10−15
)
Transformación
scale log
scale-log
𝑡𝑓 𝑡, 𝑑 × 𝑖𝑑𝑓𝑡(𝑡, 𝐷)
tf-idf
2 𝑥 + 3/8
scale
𝑧 =
𝑥 − 𝜇
𝜎
log(𝑥 + 1)
𝑠𝑐𝑎𝑙𝑒(log 𝑥 + 1 + 1)
Transformaciones
Transformaciones
Filtrado
Iterative-Partitioning Filter.
Tres grupos de clasificadores:
LMT (Rweka).
J48 (Rweka).
Bagging (adabag).
5 clasificadores, mayoría en 3: ninguna instancia eliminada.
11 clasificadores, mayoría en 6: 4 instancias eliminadas.
Transformación scale(log(x+1)+1): sobre 600 instancias
eliminadas.
Random Forest
Benchmark organización
(Python árboles): 1.5387
1,000 árboles, log(x+1)
5 folds-CV:
0.8 training, 0.2 test
Mean.Accuracy Sd
Class_1 0.3983019 0.010407332
Class_2 0.8836811 0.005305709
Class_3 0.4259428 0.010478153
Class_4 0.3400000 0.008294590
Class_5 0.9559097 0.002991734
Class_6 0.9369179 0.001994033
Class_7 0.6189622 0.006890707
Class_8 0.9174651 0.005205630
Class_9 0.8663486 0.007391558
Random Forest (1000 árboles)
Error: 0.6880±0.0023
Precisión: 0.7922±0.0014
Kaggle (SMOTE y scale-log): 0.549699
SVM (polinomial)
Error: 0.591±0.009
Precisión: 0.7807±0.0020
Kaggle (scale-log): 0.56428
XGBOOSTING
Error: 0.476±0.009
Precisión: 0.7807±0.0020
Kaggle (anscombe): 0.43055
BALANCEO MULTICLASE
Random Undersampling.
Random Oversampling.
SMOTE.
Tomek Link.
BALANCEOS
BALANCEOS
PROBABILIDADES
XGBOOSTING Random Forest
NNET:
Perceptrón 0.9
RSNNS:
Jordan 1.4
Perceptrón multicapa 0.62
Iteracciones máximas: 250
Tamaño: 28
Parámetro de aprendizaje: 0.1
Función de aprendizaje: Rprop.
Transformación: scale-log.
REDES NEURONALES
REDES NEURONALES (Deep learning)
H2O
H2O
Transformación: anscombe.
3 capas: 1,200, 600, 300
Hidden dropout ratio: (0.5, 0.5, 0.5).
Input dropuot ratio: 0.05
Epoch: 120
I1=1e-5
I1=1e-5
rho=0.99
epsilon=1e-8
Ejemplos de entrenamiento por iteración: 2,400
0.453
Selección de características y balanceo: 0.4437
REDES NEURONALES (Deep learning)
REDES NEURONALES (Deep learning)
Ensemble
LASAGNE (Python)
Transformación: anscombe.
3 capas ocultas: 520, 460, 160
Coeficiente de aprendizaje 0.001
Actualización mediante adagrad.
0.461
THEANO (Python)
Densa-dropout-densa: 1,000, 500, 1,000
Coeficientes 0.25 y 0.18
Resto de parámetros iguales a LASAGNE.
0.445
REDES NEURONALES (Convolutivas)
REDES NEURONALES
PROBABILIDADES COCINADAS
Clase ganadora 0.9
Segunda clase 0.1
Umbral 0.7
Clase ganadora 0.8
Segunda clase 0.1
Tercera clase 0.1
1 2 3 4 5 6 7 8 9
81.45 13.25 3.54 0.93 0.42 0.14 0.12 0.09 0.02
DYNAMIC ONE vs. ONE
Random Forest.
27 vecinos.
Sólo se obtiene clase
ganadora.
Kaggle 0.7170, CV
0.6452
Reparto de
probabilidades según
número de vecinos.
Orden 1 2 >2
1 0.999 0.995 0.815
2 0.0003 0.001 0.132
3 0.0002 0.0005 0.036
4 0.0001 0.0001 0.0093
5 0.0001 0.0001 0.0042
6 0.0001 0.0001 0.0014
7 0.0001 0.0001 0.0012
8 0.00005 0.00005 0.00085
9 0.00005 0.00005 0.00005
DYNAMIC ONE vs. ONE y ENSEMBLE
Suma de las probabilidades de la matriz votación para cada
clase.
Orden de las clases.
Distancia de los vecinos más cercanos y clase.
Dos estrategias.
Particionado 0.8/0.2
Generamos un OVO y un ensemble.
ESTRATEGIA 1
12371 instancias sobre las
que generar reglas vs. 144368
instancias conjunto test.
Son reglas adhoc: no hay
forma de garantizar que se
cumplan en todo el conjunto
test.
OVO y ensemble coincidían
86.7 por ciento en primera
clase.
Hay clases que tienen mucho
ruido.
ESTRATEGIA 1
ESTRATEGIA 1
Condiciones
Que la probabilidad de la instancia que se obtenía a partir de la matriz de
votación estuviera por encima de un cierto valor.
Que los vecinos que la rodearan sólo tuvieran un número determinado de
clases distintas.
Que la condición anterior se pudiera acotar a un número distinto de vecinos.
Que además de las dos anteriores, esos vecinos no estuvieran lejos de la
instancia (entendido como tal que su distancia sea menor que la distancia media
de todos los vecinos más la desviación típica).
Modificaba 1128 instancias del conjunto de prueba: de 0.4965 a 0.4942
en CV.
Modificaba 12070 del conjunto test: de 0.41354 a 0.44580 en Kaggle.
SOLUCIÓN GANADORA
La solución fue implementada por
Gilberto Titericz
Stanislav Semenov
SOLUCIÓN GANADORA
La solución propuesta está basada en 3 capas de aprendizaje,
las cuales funcionan de la siguiente forma:
Nivel 1: se realizaron 33 modelos para realizar predicciones, que se
utilizaron como nuevas características para el nivel 2. Estos modelos se
entrenaban con una 5 fold cross-validation.
Nivel 2: en este nivel se utilizan las 33 nuevas características obtenidas
en el nivel 1 más 7 meta características utilizando: XGBOOST, Neural
Network (NN) y ADABOOST con ExtraTrees (árboles más aleatorios).
Nivel 3: en este nivel se realizaba un ensamble de las predicciones de la
capa anterior.
SOLUCIÓN GANADORA
En la imagen podemos apreciar la arquitectura completa de la solución.
Los modelos utilizados en la primera capa son (con diferentes selección
de características y transformaciones):
NN (Lasagne Python).
XGBOOST.
KNN.
Random Forest.
H2O (deep learning, GMB).
Sofia.
Logistic Regression.
Extra Trees Classifier.
SOLUCIÓN GANADORA
Meta-características generadas para esta primera capa:
Característica 1: distancia a los vecinos más cercanos de la clase.
Característica 2: suma de las distancias a los 2 vecinos más cercanos de
cada clase.
Característica 3: suma de las distancias a los 4 vecinos más cercanos de
cada clase.
Característica 4: distancia a los vecinos más cercanos de cada clase con
espacio TFIDF.
Característica 5: distancia al vecino más cercano de cada clase utilizando
la reducción de características T-SNE a 3 dimensiones.
Característica 6: clustering del dataset original.
Característica 7: número de elementos diferentes a cero de cada fila.
SOLUCIÓN GANADORA
El resultado de esta solución fue:
Cross-validated
solution scored
LB (Public) LB (Private)
0.3962 0.38055 0.38243

Más contenido relacionado

Similar a Otto Challenge report

1157834458 pauta i1 optimiz 1 2005
1157834458 pauta i1 optimiz 1 20051157834458 pauta i1 optimiz 1 2005
1157834458 pauta i1 optimiz 1 2005Gonzalo Gatica
 
Inecuaciones y sistemas
Inecuaciones y sistemasInecuaciones y sistemas
Inecuaciones y sistemasFcoJavierMesa
 
Implementación de un módulo para el entrenamiento y evaluación de redes neuro...
Implementación de un módulo para el entrenamiento y evaluación de redes neuro...Implementación de un módulo para el entrenamiento y evaluación de redes neuro...
Implementación de un módulo para el entrenamiento y evaluación de redes neuro...Adrián Palacios Corella
 
Monte Carlo simulation
Monte Carlo simulationMonte Carlo simulation
Monte Carlo simulationFer_casas
 
2. ejercicios pruebas_no_parametricas
2. ejercicios pruebas_no_parametricas2. ejercicios pruebas_no_parametricas
2. ejercicios pruebas_no_parametricasdaser wicho
 
2. ejercicios pruebas_no_param_tricas
2. ejercicios pruebas_no_param_tricas2. ejercicios pruebas_no_param_tricas
2. ejercicios pruebas_no_param_tricasDarwin Izurieta Calle
 
Prueba Logaritmos MATH1500
Prueba Logaritmos MATH1500Prueba Logaritmos MATH1500
Prueba Logaritmos MATH1500Angel Carreras
 
Simulacro examen inecuaciones
Simulacro examen inecuacionesSimulacro examen inecuaciones
Simulacro examen inecuacionesMarta Martín
 
2. ejercicios pruebas_no_parametricas (1)
2. ejercicios pruebas_no_parametricas (1)2. ejercicios pruebas_no_parametricas (1)
2. ejercicios pruebas_no_parametricas (1)Investigacion Economia
 
2. ejercicios pruebas_no_parametricas (1)
2. ejercicios pruebas_no_parametricas (1)2. ejercicios pruebas_no_parametricas (1)
2. ejercicios pruebas_no_parametricas (1)Investigacion Economia
 
Modelos lineales y formatos. Manipulacion de ecuaciones
Modelos lineales y formatos. Manipulacion de ecuacionesModelos lineales y formatos. Manipulacion de ecuaciones
Modelos lineales y formatos. Manipulacion de ecuacionesmariana609125
 

Similar a Otto Challenge report (20)

1157834458 pauta i1 optimiz 1 2005
1157834458 pauta i1 optimiz 1 20051157834458 pauta i1 optimiz 1 2005
1157834458 pauta i1 optimiz 1 2005
 
Final
FinalFinal
Final
 
Inecuaciones y sistemas
Inecuaciones y sistemasInecuaciones y sistemas
Inecuaciones y sistemas
 
Examen ci-1 er.par-2020
Examen ci-1 er.par-2020Examen ci-1 er.par-2020
Examen ci-1 er.par-2020
 
Examen ci-1 er.par-2020
Examen ci-1 er.par-2020Examen ci-1 er.par-2020
Examen ci-1 er.par-2020
 
Implementación de un módulo para el entrenamiento y evaluación de redes neuro...
Implementación de un módulo para el entrenamiento y evaluación de redes neuro...Implementación de un módulo para el entrenamiento y evaluación de redes neuro...
Implementación de un módulo para el entrenamiento y evaluación de redes neuro...
 
Monte Carlo simulation
Monte Carlo simulationMonte Carlo simulation
Monte Carlo simulation
 
2. ejercicios pruebas_no_parametricas
2. ejercicios pruebas_no_parametricas2. ejercicios pruebas_no_parametricas
2. ejercicios pruebas_no_parametricas
 
2. ejercicios pruebas_no_param_tricas
2. ejercicios pruebas_no_param_tricas2. ejercicios pruebas_no_param_tricas
2. ejercicios pruebas_no_param_tricas
 
Final
FinalFinal
Final
 
1 simulacion introduccion
1 simulacion introduccion1 simulacion introduccion
1 simulacion introduccion
 
Prueba Logaritmos MATH1500
Prueba Logaritmos MATH1500Prueba Logaritmos MATH1500
Prueba Logaritmos MATH1500
 
Unidad i-Ecuaciones
Unidad i-EcuacionesUnidad i-Ecuaciones
Unidad i-Ecuaciones
 
Simulacro examen inecuaciones
Simulacro examen inecuacionesSimulacro examen inecuaciones
Simulacro examen inecuaciones
 
2. ejercicios pruebas_no_parametricas (1)
2. ejercicios pruebas_no_parametricas (1)2. ejercicios pruebas_no_parametricas (1)
2. ejercicios pruebas_no_parametricas (1)
 
2. ejercicios pruebas_no_parametricas (1)
2. ejercicios pruebas_no_parametricas (1)2. ejercicios pruebas_no_parametricas (1)
2. ejercicios pruebas_no_parametricas (1)
 
Guía sol inv_sel_avm_02_15
Guía sol inv_sel_avm_02_15Guía sol inv_sel_avm_02_15
Guía sol inv_sel_avm_02_15
 
Modelos lineales y formatos. Manipulacion de ecuaciones
Modelos lineales y formatos. Manipulacion de ecuacionesModelos lineales y formatos. Manipulacion de ecuaciones
Modelos lineales y formatos. Manipulacion de ecuaciones
 
2o 2 t alumno cuadernillo de matematicas[1]
2o 2 t alumno cuadernillo de matematicas[1]2o 2 t alumno cuadernillo de matematicas[1]
2o 2 t alumno cuadernillo de matematicas[1]
 
Sesión 04 2015 II
Sesión 04 2015 IISesión 04 2015 II
Sesión 04 2015 II
 

Último

herramientas web para estudiantes interesados en el tema
herramientas web para estudiantes interesados en el temaherramientas web para estudiantes interesados en el tema
herramientas web para estudiantes interesados en el temaJadeVilcscordova
 
Tipos de datos en Microsoft Access de Base de Datos
Tipos de datos en Microsoft Access de Base de DatosTipos de datos en Microsoft Access de Base de Datos
Tipos de datos en Microsoft Access de Base de DatosYOMIRAVILLARREAL1
 
Editorial. Grupo de 12B. La Salle Margarita.pdf
Editorial. Grupo de 12B. La Salle Margarita.pdfEditorial. Grupo de 12B. La Salle Margarita.pdf
Editorial. Grupo de 12B. La Salle Margarita.pdfYanitza28
 
el uso de las TIC en la vida cotidiana.pptx
el uso de las TIC en la vida cotidiana.pptxel uso de las TIC en la vida cotidiana.pptx
el uso de las TIC en la vida cotidiana.pptx221112876
 
Ejercicio 1 periodo 2 de Tecnología 2024
Ejercicio 1 periodo 2 de Tecnología 2024Ejercicio 1 periodo 2 de Tecnología 2024
Ejercicio 1 periodo 2 de Tecnología 2024NicolleAndrade7
 
Introduccion-a-la-electronica-industrial.pptx
Introduccion-a-la-electronica-industrial.pptxIntroduccion-a-la-electronica-industrial.pptx
Introduccion-a-la-electronica-industrial.pptxcj12paz
 
Desarrollo del Dominio del Internet - Estrada
Desarrollo del Dominio del Internet - EstradaDesarrollo del Dominio del Internet - Estrada
Desarrollo del Dominio del Internet - EstradaRicardoEstrada90
 
NIA_300_PLANEACION_DE_UNA_AUDITORIA_DE_E.pptx
NIA_300_PLANEACION_DE_UNA_AUDITORIA_DE_E.pptxNIA_300_PLANEACION_DE_UNA_AUDITORIA_DE_E.pptx
NIA_300_PLANEACION_DE_UNA_AUDITORIA_DE_E.pptxDaniloDaz4
 
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptxTarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptxVICTORMANUELBEASAGUI
 
Redes Neuronales profundas convolucionales CNN ́s-1.pdf
Redes Neuronales profundas convolucionales CNN ́s-1.pdfRedes Neuronales profundas convolucionales CNN ́s-1.pdf
Redes Neuronales profundas convolucionales CNN ́s-1.pdfJosAndrRosarioVzquez
 
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptxinfor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptxgustavovasquezv56
 
Imágenes digitales: Calidad de la información
Imágenes digitales: Calidad de la informaciónImágenes digitales: Calidad de la información
Imágenes digitales: Calidad de la informaciónUniversidad de Sonora
 
¡Ya basta! Sanidad Interior - Angela Kellenberger.pdf
¡Ya basta! Sanidad Interior - Angela Kellenberger.pdf¡Ya basta! Sanidad Interior - Angela Kellenberger.pdf
¡Ya basta! Sanidad Interior - Angela Kellenberger.pdfjuan23xpx
 
AVANCES TECNOLOGICOS DEL SIGLO XXI. 10-08..pptx
AVANCES TECNOLOGICOS  DEL SIGLO XXI. 10-08..pptxAVANCES TECNOLOGICOS  DEL SIGLO XXI. 10-08..pptx
AVANCES TECNOLOGICOS DEL SIGLO XXI. 10-08..pptxdulcemonterroza
 
Tipos de Datos de Microsoft Access-JOEL GARCIA.pptx
Tipos de Datos de Microsoft Access-JOEL GARCIA.pptxTipos de Datos de Microsoft Access-JOEL GARCIA.pptx
Tipos de Datos de Microsoft Access-JOEL GARCIA.pptxJOELGARCIA849853
 
presentación del desensamble y ensamble del equipo de computo en base a las n...
presentación del desensamble y ensamble del equipo de computo en base a las n...presentación del desensamble y ensamble del equipo de computo en base a las n...
presentación del desensamble y ensamble del equipo de computo en base a las n...axelv9257
 
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdfpresentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdfaxelv9257
 
10°8 - Avances tecnologicos del siglo XXI 10-8
10°8 - Avances tecnologicos del siglo XXI 10-810°8 - Avances tecnologicos del siglo XXI 10-8
10°8 - Avances tecnologicos del siglo XXI 10-8antoniopalmieriluna
 
Chat GPT para la educación Latinoamerica
Chat GPT para la educación LatinoamericaChat GPT para la educación Latinoamerica
Chat GPT para la educación LatinoamericaEdwinGarca59
 
microsoft word manuales para todos tipos de estudiamte
microsoft word manuales para todos tipos de estudiamtemicrosoft word manuales para todos tipos de estudiamte
microsoft word manuales para todos tipos de estudiamte2024020140
 

Último (20)

herramientas web para estudiantes interesados en el tema
herramientas web para estudiantes interesados en el temaherramientas web para estudiantes interesados en el tema
herramientas web para estudiantes interesados en el tema
 
Tipos de datos en Microsoft Access de Base de Datos
Tipos de datos en Microsoft Access de Base de DatosTipos de datos en Microsoft Access de Base de Datos
Tipos de datos en Microsoft Access de Base de Datos
 
Editorial. Grupo de 12B. La Salle Margarita.pdf
Editorial. Grupo de 12B. La Salle Margarita.pdfEditorial. Grupo de 12B. La Salle Margarita.pdf
Editorial. Grupo de 12B. La Salle Margarita.pdf
 
el uso de las TIC en la vida cotidiana.pptx
el uso de las TIC en la vida cotidiana.pptxel uso de las TIC en la vida cotidiana.pptx
el uso de las TIC en la vida cotidiana.pptx
 
Ejercicio 1 periodo 2 de Tecnología 2024
Ejercicio 1 periodo 2 de Tecnología 2024Ejercicio 1 periodo 2 de Tecnología 2024
Ejercicio 1 periodo 2 de Tecnología 2024
 
Introduccion-a-la-electronica-industrial.pptx
Introduccion-a-la-electronica-industrial.pptxIntroduccion-a-la-electronica-industrial.pptx
Introduccion-a-la-electronica-industrial.pptx
 
Desarrollo del Dominio del Internet - Estrada
Desarrollo del Dominio del Internet - EstradaDesarrollo del Dominio del Internet - Estrada
Desarrollo del Dominio del Internet - Estrada
 
NIA_300_PLANEACION_DE_UNA_AUDITORIA_DE_E.pptx
NIA_300_PLANEACION_DE_UNA_AUDITORIA_DE_E.pptxNIA_300_PLANEACION_DE_UNA_AUDITORIA_DE_E.pptx
NIA_300_PLANEACION_DE_UNA_AUDITORIA_DE_E.pptx
 
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptxTarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
Tarea_sesion_15_Reportes Maestro - Detalle con el uso de AJAX.pptx
 
Redes Neuronales profundas convolucionales CNN ́s-1.pdf
Redes Neuronales profundas convolucionales CNN ́s-1.pdfRedes Neuronales profundas convolucionales CNN ́s-1.pdf
Redes Neuronales profundas convolucionales CNN ́s-1.pdf
 
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptxinfor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
infor expo AVANCES TECNOLOGICOS DEL SIGLO 21.pptx
 
Imágenes digitales: Calidad de la información
Imágenes digitales: Calidad de la informaciónImágenes digitales: Calidad de la información
Imágenes digitales: Calidad de la información
 
¡Ya basta! Sanidad Interior - Angela Kellenberger.pdf
¡Ya basta! Sanidad Interior - Angela Kellenberger.pdf¡Ya basta! Sanidad Interior - Angela Kellenberger.pdf
¡Ya basta! Sanidad Interior - Angela Kellenberger.pdf
 
AVANCES TECNOLOGICOS DEL SIGLO XXI. 10-08..pptx
AVANCES TECNOLOGICOS  DEL SIGLO XXI. 10-08..pptxAVANCES TECNOLOGICOS  DEL SIGLO XXI. 10-08..pptx
AVANCES TECNOLOGICOS DEL SIGLO XXI. 10-08..pptx
 
Tipos de Datos de Microsoft Access-JOEL GARCIA.pptx
Tipos de Datos de Microsoft Access-JOEL GARCIA.pptxTipos de Datos de Microsoft Access-JOEL GARCIA.pptx
Tipos de Datos de Microsoft Access-JOEL GARCIA.pptx
 
presentación del desensamble y ensamble del equipo de computo en base a las n...
presentación del desensamble y ensamble del equipo de computo en base a las n...presentación del desensamble y ensamble del equipo de computo en base a las n...
presentación del desensamble y ensamble del equipo de computo en base a las n...
 
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdfpresentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
presentacion_desamblado_de_una_computadora_base_a_las_normas_de_seguridad.pdf
 
10°8 - Avances tecnologicos del siglo XXI 10-8
10°8 - Avances tecnologicos del siglo XXI 10-810°8 - Avances tecnologicos del siglo XXI 10-8
10°8 - Avances tecnologicos del siglo XXI 10-8
 
Chat GPT para la educación Latinoamerica
Chat GPT para la educación LatinoamericaChat GPT para la educación Latinoamerica
Chat GPT para la educación Latinoamerica
 
microsoft word manuales para todos tipos de estudiamte
microsoft word manuales para todos tipos de estudiamtemicrosoft word manuales para todos tipos de estudiamte
microsoft word manuales para todos tipos de estudiamte
 

Otto Challenge report

  • 2. Otto Group: compañía de comercio electrónico. Problema: mismos productos, clasificados de distinta forma. Más de 200,000 productos: Training: 61.878 Test: 144.368 93 características. 9 clases desbalanceadas. INTRODUCCIÓN
  • 4. Características Característica 2: 42 valores. Característica 3: 37 valores. Característica 4: 48 valores. Característica 5: 59 valores. Característica 6: 15 valores. Característica 7: 9 valores.
  • 6. Métrica Error máximo al fallar: -34.53 Error al acertar con probabilidad 0.9: -0.1053 𝑙𝑜𝑔𝑙𝑜𝑠𝑠 = − 1 𝑁 𝑖 𝑁 𝑗 𝑀 𝑦𝑖𝑗log(𝑝𝑖𝑗) max(min 𝑝, 1 − 10−15 , 10−15 )
  • 7. Transformación scale log scale-log 𝑡𝑓 𝑡, 𝑑 × 𝑖𝑑𝑓𝑡(𝑡, 𝐷) tf-idf 2 𝑥 + 3/8 scale 𝑧 = 𝑥 − 𝜇 𝜎 log(𝑥 + 1) 𝑠𝑐𝑎𝑙𝑒(log 𝑥 + 1 + 1)
  • 10. Filtrado Iterative-Partitioning Filter. Tres grupos de clasificadores: LMT (Rweka). J48 (Rweka). Bagging (adabag). 5 clasificadores, mayoría en 3: ninguna instancia eliminada. 11 clasificadores, mayoría en 6: 4 instancias eliminadas. Transformación scale(log(x+1)+1): sobre 600 instancias eliminadas.
  • 11. Random Forest Benchmark organización (Python árboles): 1.5387 1,000 árboles, log(x+1) 5 folds-CV: 0.8 training, 0.2 test Mean.Accuracy Sd Class_1 0.3983019 0.010407332 Class_2 0.8836811 0.005305709 Class_3 0.4259428 0.010478153 Class_4 0.3400000 0.008294590 Class_5 0.9559097 0.002991734 Class_6 0.9369179 0.001994033 Class_7 0.6189622 0.006890707 Class_8 0.9174651 0.005205630 Class_9 0.8663486 0.007391558
  • 12. Random Forest (1000 árboles) Error: 0.6880±0.0023 Precisión: 0.7922±0.0014 Kaggle (SMOTE y scale-log): 0.549699
  • 13. SVM (polinomial) Error: 0.591±0.009 Precisión: 0.7807±0.0020 Kaggle (scale-log): 0.56428
  • 15. BALANCEO MULTICLASE Random Undersampling. Random Oversampling. SMOTE. Tomek Link.
  • 19. NNET: Perceptrón 0.9 RSNNS: Jordan 1.4 Perceptrón multicapa 0.62 Iteracciones máximas: 250 Tamaño: 28 Parámetro de aprendizaje: 0.1 Función de aprendizaje: Rprop. Transformación: scale-log. REDES NEURONALES
  • 20. REDES NEURONALES (Deep learning) H2O
  • 21. H2O Transformación: anscombe. 3 capas: 1,200, 600, 300 Hidden dropout ratio: (0.5, 0.5, 0.5). Input dropuot ratio: 0.05 Epoch: 120 I1=1e-5 I1=1e-5 rho=0.99 epsilon=1e-8 Ejemplos de entrenamiento por iteración: 2,400 0.453 Selección de características y balanceo: 0.4437 REDES NEURONALES (Deep learning)
  • 22. REDES NEURONALES (Deep learning) Ensemble
  • 23. LASAGNE (Python) Transformación: anscombe. 3 capas ocultas: 520, 460, 160 Coeficiente de aprendizaje 0.001 Actualización mediante adagrad. 0.461 THEANO (Python) Densa-dropout-densa: 1,000, 500, 1,000 Coeficientes 0.25 y 0.18 Resto de parámetros iguales a LASAGNE. 0.445 REDES NEURONALES (Convolutivas)
  • 25. PROBABILIDADES COCINADAS Clase ganadora 0.9 Segunda clase 0.1 Umbral 0.7 Clase ganadora 0.8 Segunda clase 0.1 Tercera clase 0.1 1 2 3 4 5 6 7 8 9 81.45 13.25 3.54 0.93 0.42 0.14 0.12 0.09 0.02
  • 26. DYNAMIC ONE vs. ONE Random Forest. 27 vecinos. Sólo se obtiene clase ganadora. Kaggle 0.7170, CV 0.6452 Reparto de probabilidades según número de vecinos. Orden 1 2 >2 1 0.999 0.995 0.815 2 0.0003 0.001 0.132 3 0.0002 0.0005 0.036 4 0.0001 0.0001 0.0093 5 0.0001 0.0001 0.0042 6 0.0001 0.0001 0.0014 7 0.0001 0.0001 0.0012 8 0.00005 0.00005 0.00085 9 0.00005 0.00005 0.00005
  • 27. DYNAMIC ONE vs. ONE y ENSEMBLE Suma de las probabilidades de la matriz votación para cada clase. Orden de las clases. Distancia de los vecinos más cercanos y clase. Dos estrategias. Particionado 0.8/0.2 Generamos un OVO y un ensemble.
  • 28. ESTRATEGIA 1 12371 instancias sobre las que generar reglas vs. 144368 instancias conjunto test. Son reglas adhoc: no hay forma de garantizar que se cumplan en todo el conjunto test. OVO y ensemble coincidían 86.7 por ciento en primera clase. Hay clases que tienen mucho ruido.
  • 30. ESTRATEGIA 1 Condiciones Que la probabilidad de la instancia que se obtenía a partir de la matriz de votación estuviera por encima de un cierto valor. Que los vecinos que la rodearan sólo tuvieran un número determinado de clases distintas. Que la condición anterior se pudiera acotar a un número distinto de vecinos. Que además de las dos anteriores, esos vecinos no estuvieran lejos de la instancia (entendido como tal que su distancia sea menor que la distancia media de todos los vecinos más la desviación típica). Modificaba 1128 instancias del conjunto de prueba: de 0.4965 a 0.4942 en CV. Modificaba 12070 del conjunto test: de 0.41354 a 0.44580 en Kaggle.
  • 31. SOLUCIÓN GANADORA La solución fue implementada por Gilberto Titericz Stanislav Semenov
  • 32. SOLUCIÓN GANADORA La solución propuesta está basada en 3 capas de aprendizaje, las cuales funcionan de la siguiente forma: Nivel 1: se realizaron 33 modelos para realizar predicciones, que se utilizaron como nuevas características para el nivel 2. Estos modelos se entrenaban con una 5 fold cross-validation. Nivel 2: en este nivel se utilizan las 33 nuevas características obtenidas en el nivel 1 más 7 meta características utilizando: XGBOOST, Neural Network (NN) y ADABOOST con ExtraTrees (árboles más aleatorios). Nivel 3: en este nivel se realizaba un ensamble de las predicciones de la capa anterior.
  • 33. SOLUCIÓN GANADORA En la imagen podemos apreciar la arquitectura completa de la solución. Los modelos utilizados en la primera capa son (con diferentes selección de características y transformaciones): NN (Lasagne Python). XGBOOST. KNN. Random Forest. H2O (deep learning, GMB). Sofia. Logistic Regression. Extra Trees Classifier.
  • 34. SOLUCIÓN GANADORA Meta-características generadas para esta primera capa: Característica 1: distancia a los vecinos más cercanos de la clase. Característica 2: suma de las distancias a los 2 vecinos más cercanos de cada clase. Característica 3: suma de las distancias a los 4 vecinos más cercanos de cada clase. Característica 4: distancia a los vecinos más cercanos de cada clase con espacio TFIDF. Característica 5: distancia al vecino más cercano de cada clase utilizando la reducción de características T-SNE a 3 dimensiones. Característica 6: clustering del dataset original. Característica 7: número de elementos diferentes a cero de cada fila.
  • 35. SOLUCIÓN GANADORA El resultado de esta solución fue: Cross-validated solution scored LB (Public) LB (Private) 0.3962 0.38055 0.38243