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.

Friday, May 31, 2013

User Modelling Ecosystems: A User-centred Approach

En el contexto del artículo, un ecosistema de UM es usado para referirse a múltiples frameworks de UM y sus componentes, interactuando entre sí y formando una sola unidad.

En el artículo se presentan un módulo de sincronización entre el servidor de UM Personis y el cliente PersonisJ para Android.

El ecosistema Personis (servidor y cliente) provee un mecanismo para representar el contenido del modelo de usuario y mecanismo de razonamiento para derivar suposiciones sobre los usuarios. La representación está basada en el modelo de acreción/resolución, en el que la evidencia es recolectada y almacenada en un modelo jerárquico de contextos y componentes. El razonamiento se lleva a cabo mediante reglas de inferencia sobre la evidencia.

Dentro de las características para usuarios finales, se tiene la posibilidad de modificar manualmente partes del modelo de usuario y poder pasarlo a dispositivos móviles para ser utilizado por las aplicaciones que se encuentren ahí. Se tiene en cuenta una sincronización manual y automática dependiendo de cómo lo configure el usuario.

Se condujo un estudio con 8 participantes para determinar qué características del ecosistema UM son importantes para ellos. El estudio les permitió interactuar con el modelo de usuario directamente y no como tradicionalmente se tiene como trasfondo de una aplicación. El estudio consta de un cuestionario de conocimientos previos, un tutorial de 5 a 10 minutos de modelos de usuario, una serie de tareas conducidas bajo el método think aloud y finalmente otro cuestionario sobre la importancia de las características del UM en una escala de 7 puntos. La tabla con los resultados del último cuestionario se muestra a continuación:

image

Los resultados muestran que los usuarios creen que es importante poder acceder sus modelos, que algunos usuarios (pero no todos) prefieren que su modelo sea almacenado en la red y no localmente, los usuarios quieren tener la propiedad total (no compartida) de sus modelos, la importancia de permitir a los usuarios inspeccionar sus modelos y de esa forma entender por qué se encuentra dicha información en el modelo, los usuarios quieren control total sobre su modelo, y no tienen problemas con que la información se guarde a lo largo del tiempo.

Wasinger, R., Fry, M., Kay, J., & Kummerfeld, B. (2012). User modelling ecosystems: a user-centred approach. UMAP’12 Proceedings of the 20th international conference on User Modeling, Adaptation, and Personalization (pp. 334–339). doi:10.1007/978-3-642-31454-4_31

Developing a Semantic User and Device Modeling Framework that supports UI Adaptability of Web 2.0 Applications for People with Special Needs

El panorama de las aplicaciones en web ha cambiado de ser un grupo de páginas estáticas a aplicaciones corriendo en un sandbox a lo que se conoce hoy en día como Web 2.0. Una de las características más notorias de la nueva arquitectura se centra en la personalización de la experiencia del usuario a través de la interfaz.

La arquitectura del sistema está determinada por la diversidad de ambientes en el proyecto I2Web. La siguiente figura muestra la arquitectura del framework:

image

El objetivo de la arquitectura del framework se basa en cubrir el ciclo de vida entero en el desarrollo para entregar una aplicación web moderna. El proceso de autoría incluye desde los desarrolladores empleando IDEs complejos hasta simples usuarios que suben información.

Una de las principales aportaciones del artículo es la incursión de un modelo de tecnología web. De esta forma se tienen las siguientes ventajas:

  • Permite la expresión de las capacidades de los dispositivos tanto en componentes de hardware como de software.
  • Permite la expresión de las preferencias del usuario.
  • Simplifica la expresión de reglas (matching rules) para la adaptabilidad con diversas granularidades desde componentes de alto nivel (imágenes, películas, etc.) hasta elementos de bajo nivel (elementos HTML, CSS, etc.).

El modelo de dispositivo que emplean se divide en plataforma de hardware, hardware, plataforma de software y software.

El modelo de usuario está orientado a un mapeo eficiente entre las capacidades del dispositivo y las preferencias del usuario. El modelo soporta cuatro medios de remodelación de la interfaz de usuario: supresión, inserción, substitución y reorganización.

Los modelos anteriores deben ser integrados en una aplicación. En el caso del artículo, se emplean elementos semánticos de HTML5 y anotaciones de WAI-ARIA. De esta manera se generan reglas de inferencia para desplegar los contenidos personalizados para los usuarios.

Las pruebas quedan pendientes y se menciona que se estaban realizando al momento de escribir el artículo.

Ackermann, P., Velasco, C. A., & Power, C. (2012). Developing a semantic user and device modeling framework that supports UI adaptability of web 2.0 applications for people with special needs. Proceedings of the International Cross-Disciplinary Conference on Web Accessibility - W4A ’12 (p. 1). New York, New York, USA: ACM Press. doi:10.1145/2207016.2207018

Beyond Cumulated Gain and Average Precision: Including Willingness and Expectation in the User Model

En la rama de IR (Information Retrieval) se emplean comúnmente dos métricas por separado: un criterio de paro y la satisfacción del usuario. Hasta la fecha de este artículo, no habían sido usadas a la vez.

Asumiendo que el usuario observe la lista de resultados que obtiene de manera secuencial, se sabe que al ver cada resultado en orden parará o continuará. La métrica del artículo está definida sobre este par de acciones.

Se hace la suposición de que el detenerse en un resultado depende de dos factores: cuánto esfuerzo está dispuesto el usuario a emplear antes de encontrar un nuevo documento relevante, y cuanto esfuerzo espera gastar antes de encontrar un nuevo documento relevante. Estos dos se encuentran influenciados por otros factores como cuánta información relevante ha visto el usuario hasta el momento, el esfuerzo que debe gastar para obtener los siguientes resultados, cuánta información relevante está presente en el listado, etc.

La disposición del usuario depende sobre cuántos documentos más espera el usuario encontrar y por lo tanto se relaciona con el número total de documentos (recall). El esfuerzo (disposición) debe ser una función decreciente de la estimación del usuario sobre el número de documentos relevantes en el ranking (lista).

Según las métricas que analizan, esperan que haga paros continuos a medida que disminuye la precisión (expectativa) y cuando el número de documentos relevantes faltantes baja (disposición).

Se lleva a cabo una reinterpretación de la precisión promedio para los resultados. Los resultados indican que si se llega a un rango k, el usuario siempre continúa si el documento no es relevante y se detiene con una probabilidad que es inversamente proporcional al número de documentos relevantes dentro o después del rango k.

Los resultados al momento son interpretaciones y no se respaldan con datos duros.

Piwowarski, B., Dupret, G., & Lalmas, M. (2012). Beyond Cumulated Gain and Average Precision: Including Willingness and Expectation in the User Model. arXiv preprint arXiv:1209.4479, 2–5. Information Retrieval. Retrieved from http://arxiv.org/abs/1209.4479

Tuesday, May 21, 2013

Social awareness and user modeling to improve objects intelligence

La mayoría de aplicaciones que busca tomar en cuenta el contexto para llevar a cabo un modelado, no toma en consideración el aspecto social de los individuos.

Definen a los contextos sociales como si fuesen similares a los grupos sociales, identificados por un grupo de personas en un lugar dado, enlazados por relaciones que determinan su naturaleza y se caracterizan por rasgos específicos como sexo, edad o preferencias.

Las principales características de los agentes socialmente inteligentes que crearon son:

  • Detección de usuarios y las conexiones entre ellos.
  • Acceso a los datos del usuario.
  • Inferencia del contexto social de acuerdo a las estructuras de las redes de los usuarios, sus preferencias y rasgos.
  • Inferencia de objetivos sociales de acuerdo al contexto social y al modelo de usuario.
  • Coordinar su comportamiento.
  • Producir una salida enfocada al contexto.

Proponen que los contextos sociales pueden ser derivados de la estructura de las redes sociales. Las redes sociales se encuentran representadas por grafos dirigidos en los que cada nodo es un usuario y los arcos son sus conexiones sociales.

El modelo de ontologías creado para el sistema se divide en:

  • Ontología de objetos – Representa los objetos, sus propiedades y relaciones. Los objetos auto-conscientes (self-aware) son capaces de evaluar su naturaleza y tomar decisiones de acuerdo a sus propiedades o pertenencia a una clase definida por la ontología.
  • Ontología de contexto social – Representa todos los elementos de las redes que deben ser tomados en cuenta para describir un contexto social.
  • Ontología de objetivos sociales – Contiene dos clases: objetivos individuales y objetivos de grupo.

Para el modelo de usuario emplearon GUMO (General User Model Ontology) junto con FOAF (Friend Of A Friend). GUMO contiene las bases y conceptos generales para representar los rasgos principales de los usuarios en entornos ubicuos.

El modelo de grupo también se hace dentro de una ontología e incluye datos como: edad promedio, género mayoritario, distribución y variación, presencia de niños, presencia de un líder de opinión y preferencias y aversiones del grupo.

Se emplea network-driven reasoning para llevar a cabo la clasificación de los grupos. Por otra parte, para la clasificación de objetivos sociales se hace uso de una serie de heurísticas propuestas por los autores.

Biamino, G., & Cena, F. (2011). Social Awareness and User Modeling to Improve Objects Intelligence. 2011 IEEE/WIC/ACM International Conferences on Web Intelligence and Intelligent Agent Technology (pp. 118–121). Ieee. doi:10.1109/WI-IAT.2011.260