martes, 14 de mayo de 2013

Sistemas de recomendación


Antes de la llegada de Internet un consumidor de cualquier tipo de producto tenía un acceso limitado a la información relacionada tanto con el producto en si como con otras posibles opciones. La publicidad se convertía así en prácticamente la única forma de dar a conocer un producto, y el problema del usuario era como conseguir una información veraz. En el caso de productos culturales como la música, la radio o las revistas especializadas actuaban como únicos difusores de lo nuevo. Ahora la situación se ha invertido totalmente. De la escasez de información se ha pasado a la saturación. De disponer de algunas estanterías con discos compactos y videos en el centro comercial más cercano se ha pasado a tener acceso a una cantidad inagotable de creaciones culturales en tiendas online o en redes persona a persona. Ahora el problema se ha tornado en como separar lo que se quiere de lo que no se quiere encontrar. Una aproximación para intentar ofrecer a cada persona lo que busca es mediante el análisis del contenido. Para ello se hace una representación del contenido de cada elemento del conjunto y se compara con una representación del contenido que el usuario está buscando. Este filtrado basado en contenido es efectivo principalmente para encontrar documentos textuales en función de unos criterios de búsqueda. Sin embargo es más difícil parametrizar de forma automática contenidos multimedia. Aquí es donde están comenzando a jugar un papel importante los sistemas de recomendación. La idea que subyace tras ellos es encontrar usuarios con gustos similares a los de otro determinado y recomendar a éste cosas que desconoce pero que gustan a aquellos con los que se tiene similitud. Es decir, un sistema de recomendación es un amigo virtual cuyos gustos son una mezcla de los gustos de miembros de la comunidad de usuarios con gustos similares a los de uno mismo.


Según el investigador P. Resnick y sus colegas, en el artículo escrito el año 1995 relacionado con “GroupLens: Una arquitectura abierta para el filtrado colaborativo de noticias en la red”, a principios de la década de los años 1990 empezaron a surgir dentro de los servicios de grupos de noticias, los servicios de filtrado de noticias que permitían a su comunidad de usuarios acceder exclusivamente a aquellas noticias que potencialmente podían ser de su interés. No obstante, el primer sistema de recomendación que apareció fue el llamado “Tapestry”, desarrollado por XeroX PARC. Tapestry es un sistema que permite almacenar el conocimiento de los usuarios sobre los artículos o noticias que éstos han leído y posteriormente es utilizado por otros usuarios que aún no han leído el artículo o noticia, para establecer si la información del documento es relevante o no. En un principio este tipo de sistemas fue adoptado con el nombre de filtro colaborativo dado que permite que los usuarios creen filtros a través de sus ítems de interés, en el caso de Tapestry artículos o noticias, y colaborativo pues los usuarios añaden las anotaciones con las opiniones sobre los documentos. Las opiniones añadidas pueden ser utilizadas para las búsquedas de otros usuarios. Los investigadores Resnick y Varian, en el artículo publicado el año 1997 sobre “sistemas de recomendación”, proponen llamar a este tipo de sistemas con el nombre de “sistemas de recomendación”, dado que por esa fecha estos sistemas no sólo se limitaban al filtro de información y habían aparecido nuevos sistemas en el que no se utilizaban las opiniones de otros usuarios.

En un comienzo los sistemas de recomendación eran conocidos tan sólo como filtros colaborativos y los primeros trabajos datan de principios de los años 1990. El termino fue acuñado el año 1992 para un sistema de filtrado de correo electrónico no automatizado. En 1994 se desarrollo el primer taller en Berkeley donde se vio la utilidad en diversas áreas de los primeros algoritmos simples de este tipo. También se identificaron algunas cuestiones importantes para el desarrollo de estos algoritmos: Escalabilidad, viabilidad económica, puntuaciones implícitas y explicitas. Uno de los grupos de investigación pioneros en el desarrollo del filtrado colaborativo fue el proyecto GroupLens de la universidad de Minnesota que aún permanece muy activo y que ha proporcionado una gran parte de la base algorítmica de muchos sistemas de recomendación. Fueron los primeros en introducir el filtro colaborativo automático usando un algoritmo de búsqueda de vecinos para proporcionar predicciones en los grupos de noticias de USENET. De este grupo de investigación partió también la iniciativa empresarial NetPerceptions, despejando gran parte de las dudas acerca de la viabilidad económica de estos proyectos. En la actualidad es un campo que se encuentra muy activo y genera un gran número de publicaciones y congresos todos los años. Y es que el filtrado colaborativo es un aspecto de gran importancia dentro de las redes sociales y la pequeña revolución que ha supuesto la llamada “Web 2.0”.

A lo largo de los años la definición de los sistemas de recomendación ha ido evolucionando y siempre ha ido ligada con el avance de las nuevas técnicas o ideas que iban surgiendo en la literatura de los sistemas de recomendación. Así pues, como se ha mencionado en párrafos precedentes, a partir del año 1997 empieza a aparecer un cambio significativo en la forma de denominar estos sistemas, pasando de ser llamados “sistemas de filtrado colaborativo” a “sistemas de recomendación”. Ya en el año 2004 las definiciones contemplan los sistemas de recomendación mixtos. Por otro lado, cabe destacar que en los últimos años, los sistemas de recomendación han sido ampliamente utilizados en el ámbito del comercio electrónico, aspecto que queda plasmado en la definición dada por Kim y sus colegas, en el artículo escrito el año 2005 titulado “desarrollo de un sistema de recomendación basado en patrones navegacionales y de conducta en sitios de comercio electrónico”, que menciona: “Un sistema de recomendación es una solución típica de software utilizada en el comercio electrónico para servicios personalizados. Ayuda a los consumidores a encontrar los productos que ellos quisieran comprar a través de recomendaciones basadas en sus preferencias, y es utilizado de manera parcial en sitios de comercio electrónico que ofrecen millones de productos a la venta.”

Según afirma Burke, en el artículo publicado el año 2002 sobre “Sistemas de recomendación híbridos: Estudios y experimentos”, los sistemas de recomendación se distinguen por dos criterios fundamentales: Por un lado se encuentran aquellos que producen recomendaciones individualizadas en forma de salida y, por otro, aquellos que tienen el efecto de guiar al usuario de forma personalizada para los intereses de éste dentro de un dominio con grandes cantidades de ítems posibles a elegir. Teniendo esto en cuenta, se puede afirmar que los sistemas de recomendación son un tipo específico de filtro de información cuyo objetivo es mostrar ítems al usuario que le sean relevantes o de interés. Se entiende por filtro de información un sistema que elimina información inadecuada o no deseada de un flujo de información de forma automática o semiautomática para ser presentada a los usuarios.

Según los investigadores Belkin y Croft, en el artículo publicado el año 1992 titulado “filtrado de información y recuperación de información ¿dos lados de una misma moneda?, un aspecto relacionado con los sistemas de recomendación es la “recuperación de información” o “búsqueda de información”. Ambos conceptos se asemejan en el hecho de que intentan proporcionar información relevante al usuario pero se distinguen por las siguientes singularidades: (1) Frecuencia de uso. Los sistemas de búsqueda son enfocados por uso concreto y puntual del usuario mientras que los sistemas de recomendación están diseñados para un uso prolongado y de forma repetitiva. (2) Representación de las necesidades de información. En sistemas de búsqueda la información requerida se expresa en forma de pregunta o consulta, mientras que en los sistemas de recomendación la información es descrita en los perfiles del usuario. (3) Objetivo. Los sistemas de búsqueda seleccionan los ítems de la base de datos que coinciden con la consulta, mientras que los sistemas de recomendación eliminan la información irrelevante de flujos de entrada de información o reúnen información relevante de diferentes repositorios de acuerdo al perfil del usuario. (4) Base de datos. Los sistemas de búsqueda trabajan con bases de datos relativamente estáticas mientras que los sistemas de recomendación trabajan con información dinámica. (5) Tipo de usuarios. En los sistemas de búsqueda no se tiene porque tener información sobre los usuarios que lo utilizan mientras que en los sistemas de recomendación se necesita saber o tener información sobre los usuarios. (6) Ámbito social. Los sistemas de recomendación están interesados en aspectos sociales de modelado y privacidad del usuario mientras que los sistemas de búsqueda no. (7) Acción: El proceso de filtrado o recomendación se relaciona con la acción de “eliminar” información, mientras que el proceso de búsqueda se relaciona con la acción de “encontrar” información.

Algunos ejemplos actuales de uso, de los sistemas de recomendación, son: (1) Recomendaciones en tiendas on-line. Partiendo de un producto se recomiendan otros productos que han interesado a los usuarios que compraron dicho producto. La web pionera en este tipo de recomendaciones fue Amazon.com. (2) Filtrado de noticias. Se construye un perfil que almacena las noticias que un usuario consulta. (3) Recomendaciones musicales, de libros, de películas. En los últimos años han surgido decenas de aplicaciones Web de este tipo entre las que destacan “last.fm” y “MyStrands”, esta ´ultima de origen español. En estos servicios, cada vez que un usuario escucha una canción se envía su información a la base de datos del sistema, el cual las utiliza para generar recomendaciones, pero las funcionalidades que ofrecen crecen constantemente. Por ejemplo last.fm ofrece radios personalizadas para cada usuario en función de las recomendaciones que reciba y MyStrands organiza fiestas en las que la música se elije automáticamente de forma colaborativa en función de los gustos de los asistentes. El modelo de negocio de estas empresas, es además de la publicidad, el de acuerdos con tiendas on-line para enlazar directamente las recomendaciones con su servicio de venta. También el de proporcionar a las compañías discográficas, en este caso, análisis de tendencias musicales, de nuevos artistas, y otras funcionalidades. (4) Búsqueda de personas afines en comunidades. En aplicaciones Web como “meneame.net” se tienen en cuenta las noticias que cada usuario ha votado para generar una lista de vecinos con similares intereses.

Referencias Bibliográficas
Allen, R.B. (1990) User models: theory, method, and practice, International Journal of Man-Machine Studies, vol. 32, 1990, págs. 511-543.
Belkin, N.J. y Croft, W.B. (1992) Information filtering and information retrieval: two sides of the same coin?, 1992.
Burke, R. (2002) Hybrid recommender systems: Survey and experiments, User Modeling and User-Adapted Interaction, vol. 12, 2002, págs. 331-370.
Goldberg, D.; Nichols, D.; Oki, B.M. y Terry D. (1992) Using collaborative filtering to weave an information tapestry, 1992.
Housman, E.M. y Kaskela, E.D. (1970) State of the art in selective dissemination of information, IEEE Transactions on Engineering Writing and Speech, vol. 13, 1970, págs. 78-83.
Kim, Y.S.; Yum, B.J.; Song, J. y Kim S.M. (2005) Development of a recommender system based on navigational and behavioral patterns of customers in e-commerce sites, Expert Systems with Applications, vol. 28, 2005, págs. 381-393.
Resnick, P. y Varian H.R. (1997) Recommender systems, Communications of the ACM, vol. 40, 1997, pág. 57.
Resnick, P.; Iacovou, N.; Suchak, M.; Bergstrom, P. y Riedl, J. (1995) GroupLens: An open architecture for collaborative filtering of netnews.

No hay comentarios: