Tuesday, June 25, 2013

Exploring Personal Impact for Group Recommendation

Se habla de las actividades sociales en grupo que se organizan comúnmente en redes sociales como Facebook y Meetup (salir a cenar, ir al cine, vacaciones y fiestas). Llevar a cabo sugerencias sobre los sitios y actividades es parte de las nuevas investigaciones sobre los sistemas de recomendación.

Los sistemas de recomendación tradicionales se enfocan a brindar sugerencias para un usuario individual basado en información sobre sus preferencias (calificaciones o descripciones). En un sistema basado en grupos, mencionan que no sólo es necesario modelar las preferencias individuales sino también el entender cómo es que se llega a una decisión.

El entorno de prueba del sistema son las actividades de grupo en eventos sociales. Las razones por las cuales consideran que tanto el problema como la solución son novedosas son:

  • Problema: Otras investigaciones sobre sistemas de recomendación grupales asumen que los grupos son estáticos, por lo que la pertenencia de los miembros es estable. En el estudio se enfocan en grupos ad hoc. Tradicionalmente se asume que los perfiles individuales de los usuarios están disponibles y en este caso, para evitarlo, sólo se toma en cuenta el historial de los grupos.
  • Solución: Tradicionalmente se exploran heurísticas para aplicar estrategias de recomendación, en el caso del estudio se hace uso de un modelo probabilístico para capturar tanto la preferencia del usuario como su influencia en el grupo.

Se creó un modelo de autor y tema que determina que un tema es un conjunto de objetos con probabilidades y aquellos con mayor probabilidad tienden a ser elegidos por grupos similares. Por otra parte se plantea la existencia de un representante del grupo que es quien elige el objeto. El modelo es una extensión de otro propuesto para determinar los autores de documentos dentro de un grupo.

Otra de las conjeturas es que los integrantes de los grupos tienen distintos niveles de impacto sobre las decisiones del grupo. De las observaciones de grupos, se toma que algunos miembros son más activos y proponen las actividades mientras que otros sólo se dedican a seguirlas. De igual forma, hay miembros que tienen un mayor peso en la decisión que se toma debido a distintas situaciones como su experiencia, conocimiento, autoridad, etc. Por lo tanto, las decisiones del grupo reflejan más sus opiniones que las del resto del grupo.

El proceso para seleccionar objetos consiste en primero elegir un representante del grupo de acuerdo al impacto personal de los miembros, el representante elige de manera probabilística un tema y finalmente se elige un objeto del tema de manera probabilística.

Las pruebas se hicieron sobre 3 problemas de recomendación, el primero consiste en la recomendación grupal del POI checkin de Whrrl, el segundo recomendación de tag de Meetup y el tercero en la recomendación de sitios para eventos de Meetup. La siguiente tabla muestra la detalles de los datos empleados para estos 3 problemas:

image

Para las evaluaciones se emplearon técnicas tradicionales para recomendación y tomó como medida el recall que es el porcentaje de los objetos seleccionados del grupo que fueron incluidos en las recomendaciones. Los resultados son los siguientes:

image

image

Xingjie Liu, Yuan Tian, Mao Ye, and Wang-Chien Lee. 2012. Exploring personal impact for group recommendation. In Proceedings of the 21st ACM international conference on Information and knowledge management (CIKM '12). ACM, New York, NY, USA, 674-683. DOI=10.1145/2396761.2396848 http://doi.acm.org/10.1145/2396761.2396848

A Group Recommendation Approach for Service Selection

Los sistemas de recomendación actuales toman en cuenta varios criterios para llevar a cabo su función. Sin embargo, no existe alguno que tome en cuenta criterios opuestos (multi-criterios) que se presentan comúnmente cuando se requiere dar recomendaciones sobre grupos que no son completamente homogéneos en todos sus gustos y preferencias.

El proceso propuesto para llevar a cabo una recomendación en base a un grupo consiste en los siguientes tres pasos:

  1. Adquisición de perfil de usuario – Se recopila la información correspondiente al usuario y se almacena de modo que un perfil está definido por el formato Usuario x Objeto -> R0 x R1 x R2 x … x Rc donde cada Ri es la calificación del usuario en el criterio i y R0 es la calificación global.
  2. Adquisición de perfil de grupo – Se crea un usuario nuevo que representa los intereses de un grupo. Los grupos suelen tener una serie de intereses compartidos pero pueden variar sobre algunos otros. Para asignar un valor a los intereses del grupo, se calcula un valor de desacuerdo que toma en cuenta las preferencias de todos sus miembros.
  3. Recomendación – Se hace uso de collaborative filltering para llevar a cabo la predicción de los usuarios sobre objetos no calificados.

Se menciona que no existe una base de datos para este tipo de pruebas por lo que tuvieron que crear un script que obtuviera la información del sitio dianping.com que contiene reseñas de restaurantes de China. Se recolectaron 30029 comentarios que involucran a 482 personas y 957 restaurantes en total. Los comentarios consisten en calificaciones en cuanto a los aspectos de la comida.

Para comparación directa, se tomaron las predicciones generadas contra las obtenidas calculando el promedio y la técnica de least misery. Los resultados fueron los siguientes:

image

En conclusión, el algoritmo trabaja sobre el patrón de rating de los usuarios más que sobre las calificaciones individuales por lo que requiere de datos para poder calcularlo de inicio. La técnica es escalable y no tiene variaciones respecto al número de personas en los grupos.

Tao Liu, Feng Xu, Yuan Yao, and Jian Lu. 2012. A group recommendation approach for service selection. In Proceedings of the Fourth Asia-Pacific Symposium on Internetware (Internetware '12). ACM, New York, NY, USA, , Article 10 , 5 pages. DOI=10.1145/2430475.2430485 http://doi.acm.org/10.1145/2430475.2430485

Generation of Coalition Structures to Provide Proper Groups’ Formation in Group Recommender Systems.

En el artículo se propone un sistema para la creación de grupos en base al modelo de juego de coalición de teoría de juegos. El objetivo consiste en crear los grupos de modo que el bienestar social (social welfare) se maximice. La función de bienestar social se define con las similitudes conocidas entre usuarios. Esto hace que los grupos reciban mejores recomendaciones entre más homogéneos sean.

Las recomendaciones para grupos de usuarios intentan satisfacerlos considerando que existen posibles conflictos de intereses. Los esquemas seguidos para la creación de grupos tradicionalmente son:

  • Se suma un conjunto de recomendaciones individuales.
  • Se construye un modelo de representación único para el grupo.
  • Se suman las preferencias de artículos particulares.

Los grupos se puede categorizar en:

  • Grupo establecido – Un conjunto de personas que explícitamente decidieron ser parte de un grupo debido a un interés de largo plazo.
  • Grupo ocasional – Un conjunto de personas que hacen algo juntos de manera ocasional. Los miembros tienen un interés común en un tiempo en particular.
  • Grupo aleatorio – Un grupo de personas que comparten el mismo entorno en un determinado tiempo, no tienen una motivación clara que los una.
  • Grupo identificado automáticamente – Grupos que son detectados automáticamente considerando las preferencias y recursos disponibles sobre los usuarios.

Una de las maneras más comunes de crear los grupos es en base al promedio de los intereses de los usuarios, sin embargo, se tiene problemas con el tamaño de los grupos ya que si son demasiado pequeños, las opiniones individuales tendrán mayor impacto.

Para las pruebas se hace uso del conjunto de datos MovieLens, se tienen 943 usuarios, 1682 películas y 100,000 ratings en un intervalo de 1 a 5. Se creó una predicción del rating de los usuarios sobre las películas que aún no habían visto. Las predicciones fueron generadas por un algoritmo de filtrado colaborativo basado en KNN. El siguiente histograma muestra el resultado de las predicciones:

image

Se crearon 10 conjuntos de 12 usuarios de manera aleatoria para encontrar la estructura óptima de coalición (se usan 12 como máximo debido a que es el mayor número que permitió llevar a cabo el proceso en un tiempo razonable). Para comparación se aplica k-means a los conjuntos. Las siguientes tablas muestran los resultados del método propuesto y los obtenidos aplicando k-means.

image

En general los resultados mostraron una mejoría respecto a k-means cuando se obtienen coaliciones de gran tamaño considerando como métricas el promedio de satisfacción grupal y el índice Davies-Bouldin.

Lucas Augusto M.C. Carvalho and Hendrik T. Macedo. 2013. Generation of coalition structures to provide proper groups' formation in group recommender systems. In Proceedings of the 22nd international conference on World Wide Web companion (WWW '13 Companion). International World Wide Web Conferences Steering Committee, Republic and Canton of Geneva, Switzerland, 945-950.