En esta competencia se debía predecir qué item un usuario compraría en base a su historial de navegación. Se podían adivinar 10 items, en orden, y también se ganaba puntos por adivinar la categoría.
Dado que la mitad de los datos de navegación eran búsquedas de texto, comencé construyendo un modelo en base a la tabla de items (x = nombre de item, y = categoría) que prediga qué categoría se buscaba.
Como se ve en estos ejemplos, la precisión era bastante buena (precisión de 69%)
Luego construí otro modelo que, en base a las categorías buscadas o visitadas, adivinara las 10 categorías más probables de haberse comprado. Acá se ve cómo mejora la predicción con el modelo, vs. un baseline hecho a partir de adivinar los ítems vistos en orden inverso.
Por último, adivinaba que el ítem que se había comprado era uno que se había visto, pero esta vez dentro de la categoría con mayor probabilidad según el modelo.
En retrospectiva, podría haber hecho un modelo de tipo clustering que adivine ítems similares para los otros 9 ítems predichos, dado que, en el modelo actual, si el usuario visitó 1 solo ítem, el resto de los ítems adivinados, eran los más vendidos de las categorías predichas, lo cual era una suposición bastante débil.