En general sigo a Pablo en sus proyectos e iniciativas, y cuando no lo hago me arrepiento. Esta vez no me arrepiento de no haberlo seguido. Hace casi 2 anios Pablo estaba muy entusiasmado con el premio de Netflix y queria participar. El premio era de un millon de dolares a quien mejore en mas de un 10% el algoritmo de recomendacion de peliculas de Netflix.
Pasados dos anios, finalmente alguien rompio la barrera del 10%. El equipo que lo logro esta liderado por Yehuda Koren, PhD en computer science, e investigador senion en Yahoo Research (en su CV ya figura que fue el primero en romper la barrera del 10%).
El concurso establecia que, llegado ese punto, se abria una ventana de 30 dias para dar la oportunidad a otros a superar la meta. Esa ventana se cerro ayer, y un grupo logro en el ultimo momento superar al de Koren. con 10.10% contra 10.09% La tabla de posiciones esta aca.
Pero no todo esta dicho: el ganador sera el que obtenga el mejor resultado corriendo contra un set de datos que no ha sido publicado.
Algo es seguro: nosotros ganamos… no metiendonos.
28/7: Mas datos: el NY Times tiene un articulo largo sobre el concurso. El equipo que llego primero fue liderado por un investigador de AT&T labs, y tenia 7 investigadores, el segundo fue el resultado de reunir varios grupos, con 30 personas trabajando. Uno de los grupos termino convirtiendose en startup.
Sergio, no te me achiques! Yo confiaba en tu capacidad de ex Investigador Senior de IBM Haifa!
HOla!
Nunca usé Netflix por una razón super: vivo acá.
¿En que se basaría un algoritmo de recomendación? ¿Y cómo pueden evaluar que mejora en x% al anterior?
Es (era) así: te dan una base de datos con datos anonimizados de más de un millón de usuarios. Para cada usuario, te dan el puntaje que le puso a cada película (de 1 a 5). Por otro lado, para cada película te dan algunos datos: qué tipo de película es, de que origen, datos de la crítica, etc. Toda esa es la base de datos de aprendizaje. Tu programa tiene que analizar esa base de datos y «aprender». Después te dan una serie de combinaciones usuario/película, y tenés que predecir que puntaje le va a dar ese usuario a esa película. Lo podes hacer de diversos modos, viendo que puntajes le dieron los usuarios con gustos parecidos (filtro colaborativo), o tratando de entender qué tipo de películas le gusta a cada usuario. Cuanto más cerca quedás, mejor puntaje tenés. La meta es mejorar el motor que ya tiene Netflix.
Ah!
No es tan dificil.
Solo hay que comprender que la mente humana va más alla de las matemáticas, algo de semántica y se logra.
hablando de netflix, muy recomendable esta presentación sobre la cultura que intentan generar en la empresa
http://www.slideshare.net/reed2001/culture-1798664