El revolucionario concurso de Netflix

El revolucionario concurso de Netflix

En Octubre de  2006, Netflix publicó un concurso de machine learning y minería de datos que revolucionaría el mundo de la ciencia de datos.  La consigna era sencilla: Netflix quería mejorar la precisión de sus predicciones respecto a cuánto le gustaría a un usuario determinada película basada en su historial de preferencias. En este link  todavía se puede encontrar información detallada del concurso.

Para ese entonces, Netflix ya había desarrollado un sistema de recomendación propio llamado Cinematch, este algoritmo hace recomendaciones personales de nuevas películas basado en cuanto le guste o disguste al usuario otras películas. Sin embargo, la empresa estaba deseosa de experimentar nuevos enfoques y abrió el concurso a cualquier persona que pudiese desarrollar un algoritmo que mejorara en por lo menos 10% las predicciones de Cinematch sobre el mismo set de datos. El premio para quien lograra este objetivo era de 1 millón de dólares.

Adicionalmente, para mantener a los concursantes motivados y ya sospechando que una mejora de 10% costaría mucho tiempo en alcanzarse, Netflix ofreció U$S 50.000 a quien lograra crear el mejor algoritmo del año.

 

Operativa y Datos:

Netflix puso a disposición de los concursantes datos anónimos sobre los ratings que cada usuario le dio a las películas que vio, a este set de datos se los categorizó como el training set y consistía en 100 millones de ratings creados por 480 mil usuarios anónimos elegidos de forma aleatorio sobre 18 mil películas. Todos estos ratings fueron creados entre 1998 y 2005 y eran estructurados de la siguiente forma <user, movie, date of grade, grade>.

Adicionalmente al training set, se dispuso un test set (qualifying set ) con 2.8 millones de pares clientes/películas. En este caso los datos fueron estructurados de la siguiente manera <user, movie, date of grade>, el rating fue específicamente removido y revelados solamente al jurado.  A este set de datos se los dividió en 2, cada algoritmo debía predecir sobre el total de la muestra, pero se le indicaba su performance solamente para la mitad de la muestra, la performance sobre el segundo set sería utilizado por el jurado para determinar el ganador.

 

Evaluación del algoritmo:

El algoritmo se evaluaría en base al error cuadrático medio (ECM). El objetivo del concurso era reducir al máximo este tipo de error.  Cinematch obtiene un ECM de 0.9514 sobre el training set y en el test set obtiene un ECM de 0.9525. Para ganar, el nuevo algoritmo debe obtener por lo menos 10% de mejoras o sea  ECM=0.8572 sobre el test set.

 

Progreso y Equipos:

  • En Octubre del 2006 el concurso comenzó
  • En Octubre de 2007 se entregó U$S 50 mil al equipo Korbell que consiguió una mejora de 8.43% reportando más de 2000 horas de trabajo. Su solución era una combinación de más de 107 algoritmos. Siendo los dos más importantes,  Descomposición de Valor Singular y  Máquina de Boltzmann Restringida.
  • En Octubre de 2008 se entregó U$S 50 mil por una mejora de 9.44%
  • En Octubre de 2009 se pasó la barrera de 10%. Bajo las reglas del concurso a partir de ese momento, se abrió un período de 30 días para que todos los otros equipos trataran de rebatirlo. Esto generó una ola de registro de datos y reorganización de equipos que trataron de unir fuerzas y hacer un  esfuerzo de último minuto.
  • 20 minutos antes de la clausura BellKor´s Pragmatic Chaos registró su algoritmo que matemáticamente generaba exactamente la misma mejora de 10.06% que el algoritmo del equipo The Ensamble que lo hizo un par de minutos antes de la finalización. Por ende, al haber sido más rápido por un par de minutos, este equipo terminó siendo el ganado y haciéndose con el U$S 1 millón.
Equipo ganador
BellKor´s Pragmatic Chaos-Ganadores del concurso de Netflix

Cuando el concurso cerró en 2009 había 51051 concursantes y 41305 equipos de 186 países diferentes. Netflix recibió 44014 registros de algoritmos válidos. Tanto el equipo ganador como el segundo fueron una combinación de equipos que estaban compitiendo individualmente por el premio. El equipo ganador estaba compuesto por ingenieros en sistemas, expertos en machine learnings y estadísticos de USA, Canadá, Austria e Israel.

 

Controversia: Consideraciones de privacidad

Los datos publicados fueron construidos de tal forma que preservaban el anonimato de los usuarios. Sin embargo, en 2007 dos investigadores de la Universidad de Texas fueron capaces de identificar usuarios haciendo match de los datos de Netflix con los rating de la web IMDB . Esto llevó a que  en 2009, 4 usuarios de Netflix presentaran una demanda colectiva contra la empresa indicando que ésta había violado leyes de protección de datos por haber publicado la base de datos.  En 2010 la empresa y los demandantes llegaron a un acuerdo y éstos retiraron la demanda.

 

¿Qué pasó después?

Primero este concurso le abrió las puertas a empresas que hoy en día son muy exitosas como Kaggle y TopCoders. Actualmente, muchas empresas utilizan  las plataformas de Kaggle o TopCoders como nueva forma de reclutamiento,  gracias a la idea original de Netflix.

Más importante aún, este concurso dio el punta pie inicial a un concepto que hoy en día es bastante estudiado como es el de “innovación abierta”. Científicos tuvieron acceso por primera vez a un set de datos importante y fueron capaces de colaborar a través de internet desde varios países para resolver un problema complejo. Un ejemplo de concursos posteriores a éste se puede encontrar aquí. 

Sin embargo, lo más sorprendente de los eventos posteriores fue que Netflix nunca llegó a utilizar el algoritmo ganador.   En el siguiente post de 2012, Netflix justificó su decisión de no usarlo en los siguientes términos.

  • Para llegar a una mejora del 10%, el equipo ganador tuvo que hacer una combinación de más de 800 algoritmos. Esta mejora de 10% simplemente no es suficiente para justificar el cambio en tecnología requerida para soportar cientos de algoritmos trabajando simultáneamente.
  • Netflix, sí probó los 2 algoritmos principales ganadores del premio de 2007 y actualmente estos algoritmos están en producción como parte de sus sistema de recomendación. Sin embargo, estos algoritmos fueron construidos para manipular 100 millones de rating pero Netflix ya en  2012 tenía 5 billones de ratings, lo que requirió mucha adaptación y unos cuantos desafíos a resolver.
  • El modelo de negocios de Netflix cambió drásticamente en los últimos años. En 2006 cuando el concurso se lanzó al público, Netflix todavía era un servicio de alquiler de DVDs, sin embargo, un año más tarde,  lanzó su servicio de streaming que creció de forma exponencial. La forma en que los usuarios interactúan con el servicio de streaming no es el mismo que con el servicio de alquiler de DVDs. Adicionalmente la data recolectada con el streaming no es igual a la anterior. El objetivo con los DVDs era enviarle por correo postal a un cliente, películas para los próximos días o semanas, la selección de películas y el acto de verlas era distante en el tiempo. Con el streaming en cambio, los usuarios buscan algo bueno para ver inmediatamente, éste puede ver muestras de películas antes de decidirse por  una y Netflix ahora tiene mucha más información como las estadístiscas de vistas completas, parciales, etc.
  • La expansión a multiplataformas como el iphone, xbox,etc.
  • La internacionalización de la empresa. De acuerdo a datos del 2011, los nuevos usuarios globales hacían streaming de 2 billones de horas de películas en cientos de dispositivos. Todos los días se agregan 2 millones de películas a la lista de vistas y se generan 4 millones de ratings.
  • El concurso le fue muy redituable a Netflix porque aumentó considerablemente la visibilida de su marca y la posibilidad de reclutar talento altamente especializado. Sin embargo, la empresa no necesitó usar el algoritmo ganador ya que se adaptó a la nueva realidad descripta anteriormente modificando sus algoritmos de personalización y agregándole toda la información disponible con el nuevo servicio de streaming. La predicción del rating simplemente se transformó en una de los tantos factores que la empresa utiliza dentro de su sistema de recomendación. Actualmente el 75% de lo que las personas miran en este servicio de streaming provienen de algún tipo de recomendación.

 

La solución ganadora

Si le interesa los detalles técnicos,  aquí está el link del algoritmo ganador.

 

One thought on “El revolucionario concurso de Netflix

  1. Guillermo Hollidge

    Parece increíble que en 2 billones de horas de películas diarias, nunca encuentres la que querías !!!!

Leave a Reply

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *