Actualidad

Seminario. Un sistema de recomendación rentable y escalable basado en filtrado colaborativo

Fecha: viernes 19 de enero de 2018
Hora: de 12:00 h.
Lugar: Sala de Grados A, edificio A, EPS-UAM.

Ponente:

Juan Arévalo, es Doctor en Física del Plasma y Fusión Nuclear por la Universidad Carlos III de Madrid y el Instituto de Investigación CIEMAT, donde trabajó en análisis de datos y simulaciones numéricas de fluidos en espacios de Riemann, realizando colaboraciones con institutos de investigación de Japón, Estados Unidos o Alemania. Después de terminar su doctorado, se unió al equipo de Data Scientists en la Travel Intelligence Unit de Amadeus, donde se convirtió en un entusiasta de la programación funcional (Scala) y su aplicación a los conjuntos de datos masivos con Spark. Actualmente, trabaja en BBVA Data & Analytics en campos como Fraud Detection, Deep Learning o Recommender Systems, donde se centra en la aplicación de técnicas avanzadas a escala, con Spark, TensorFlow y GPU. También es profesor en la escuela técnica KSchool.

Resumen:

Los Sistemas de Recomendación (RS) se están haciendo presentes en multitud de aplicaciones en línea, desde sugerencias
personalizadas de la próxima canción a escuchar, la película a ver o el siguiente producto financiero para comprar, pasando por el descubrimiento de un comercio cercano para hacer nuestra próxima compra. Este tipo de RS presenta a los clientes sugerencias hechas a la medida, permitiendo a las empresas dar a conocer productos menos populares, pero rentables, en la larga cola de los elementos menos demandados de su catálogo.

Sin embargo, el desarrollo de un RS asequible y escalable para productos de nicho es un desafío. En esta charla presentamos un enfoque efectivo para el filtrado colaborativo basado en RS, que se adapta a millones de usuarios y un millón de  roductos. Nuestra implementación utiliza la componente ALS-WR de Spark para producir un modelo de factorización de la matriz de calificación original. Al principio del proyecto descubrimos que una implementación basada en CPU resultó ser demasiado costosa y poco práctica para el cálculo de la recomendación en sí. Pero como la multiplicación de matrices es una  operación “vergonzosamente paralelizable”, describiremos cómo usamos las GPU para esta tarea. Esta solución condujo a una reducción en el tiempo de procesamiento en un factor de 5 y de 20 en los costes.

Aunque la solución presentada es barata y escalable, los sistemas de recomendación de factorización matricial estándar tales como ALS-WR son conocidos por proporcionar recomendaciones de calidad moderada para matrices de calificación muy dispersas. Por lo tanto, nuestro trabajo actual se centra en la implementación de métodos de filtrado colaborativo de redes neuronales basados en GPU para proporcionar recomendaciones personalizadas relevantes aprovechando la infraestructura de AWS.