Nube de Etiquetas
(Ah?)

miércoles, mayo 21, 2008

Psicología aplicada en Máquinas de Aprendizaje: los seres humanos no son números

Creo que ya que les hablé del Premio Netflix, es bueno que les comente este excelente post en el que hacen reseña de un hecho curioso: una persona que originalmente viene del área de Psicología, llamada Gavin Potter, logró un marcado avance en este concurso. Hasta el momento en que esa persona entró, ninguno de los grupos concursantes no habían logrado hacer avances significativos desde hacía algún tiempo.... ¡y estoy hablando de personas que han probado ya múltiples ideas para resolver el problema!

Esta persona oriunda del área de Psicología, ya desde su primer intento, logró un avance mucho mayor que todos los avances recientes de los demás equipos. No pienso hacer una paráfrasis del post acá, pero si resumir en pocas palabras lo importante, y que debemos tener en cuenta al enfrentarnos a problemas reales:


Los especialistas en cómputo, estadística e inteligencia artificial pueden desarrollar algoritmos muy elaborados, y entonarlos para que trabajen muy bien ante los datos disponibles para el problema de Netflix. En ellos los números representan a los cinéfilos, y a sus gustos, y las fórmulas tratan de "predecir" el gusto que tendrán por la próxima película.

Esto está bien... salvo por el hecho de que....

¡Las personas no son números... ...ni miran las películas como si éstas lo fuesen!

Potter consideró a las personas como personas, e interpretó las calificaciones de las personas, tomando en cuenta cosas ya conocidas del comportamiento humano al momento de asignar calificaciones. El hecho de que esos números fueran asignados por un ser humano, es una información que, de alguna forma, había que incluír en el modelo.

Tomar en cuenta el factor humano, es algo que se díce más fácil de lo que se hace. ¿Cómo valernos de la psicología para estudiar personas sobre las cuáles no sabemos nada, excepto cuánto "dicen" que les gustó una película.

En corto, la forma en que Potter lo hizo, fue la siguiente:
  • Consideró que los gustos de las personas pueden cambiar a medida que pasa el tiempo. Uno puede darle más "peso" a las calificaciones más recientes que a las muy viejas.
  • Consideró el efecto "anclaje", que se refiere a la inercia que nos invade cuando asignamos calificaciones numéricas a algo (me ha pasado en mi experiencia como profesor universitario!). Si una persona ve tres películas seguidas que merecen 4 estrellas, y luego ve una que es un poco mejor, muy probablemente le asignará un 5. Sin embargo, si empezó viendo un par de películas a las que les dió sólo una estrella, esa misma película, que en otra circunstancia hubiese calificado con un 5, recibiría posiblemente sólo un 4 o incluso un 3. Potter se ocupó de medir este efecto en la data proporcionada por Netflix, y tomó en cuenta este efecto en las fórmulas, para determinar más precisamente los gustos de los cinéfilos.
La moraleja detrás de esto es muy importante:

sin importar que tan buenos modeladores seamos, al enfrentar un problema real, tener en el equipo una persona que sepa de la parte de la realidad que está tratando de modelarse. Es posible que a un especialista en computación, optimización o estadística se le ocurra algo de este estilo, pero, como sugiere el post en cuestión: incluír al especialista de la parte de la realidad que estamos estudiando puede ahorrar trabajo en modelos infructuosos.

Para cerrar, les paso el link al post es éste:
http://www.wired.com/techbiz/media/magazine/16-03/mf_netflix?currentPage=all

jueves, mayo 01, 2008

Usando la IMDb para ganar el Premio Netflix

Hay ahora varias cosas que tengo pendiente publicar acá, con la esperanza de seguir generando oportunidades para que personas que no tienen formación inicial en las áreas afines a la Investigación de Operaciones y a las Máquinas de Aprendizaje puedan iniciarse en estas lides.

Mientras consigo el tiempo para escribir con la calma suficiente sobre un nuevo tema, quiero compartir con ustedes un post del blog "Geeking with Greg", en el cuál Greg comparte con nosotros las inquietudes que se han ido despertando entre los concursantes del Premio Netflix.

En resúmen, las inquietudes rondan alrededor de las dudas que hay sobre si realmente es necesario tener mayor cantidad de información sobre las películas (trayéndola de la IMdb, por ejemplo), o simplmente es necesario tener mejores algoritmos ( o ambas cosas, evidentemente ).

El post pueden verlo en esta dirección:
http://glinden.blogspot.com/2008/03/using-imdb-data-for-netflix-prize.html

Saludos!

PD: para los que no saben de qué trata el premio Netflix, éste se trata de un concurso propuesto por la empresa de ese mismo nombre, en el que invitan a cualquiera que quiera participar (la inscripción es gratuita) a usar una base de datos en la se tiene información sobre las preferencias fílmicas de los usuarios, para elaborar un algoritmo que prediga, para cada usuario, qué puntuación le pondría a una película que aún no ha visto. En la base de datos las calificaciones que tiene cada usuario del sistema, sobre cada película que ha visto son del 1 al 5. El objetivo es superar al algoritmo que ya tienen, al menos en un 10% en la efectividad.