Filtrado Basado en Contenido II

IIC 3633 - Sistemas Recomendadores

Denis Parra
Profesor Asistente, DCC, PUC CHile

TOC

En esta clase

  1. Representación y Aprendizaje del Modelo de Usuario
    1. Rocchio's Algorithm
    2. Revisión de Syskill & Webert
  2. Tag-based recommendations
  3. Actividad Práctica con R, RStudio y Packages tm() y ggplot2()

Representación del Modelo de Usuario I

Bajo un escenario estático, podemos agregar el modelo del usuario en función de los contenidos por los cuales ha mostrado preferencias.


  • ¿Cómo incorporar información para actualizar el modelo?
  • ¿Debiéramos "decaer" la importancia de ítems antiguos?
  • ¿Distinta metadata debería integrarse en una sola bolsa de palabras o separarse?

Representación del Modelo de Usuario II

Modelo de Relevancia Rocchio

  • Actualización de Query en base a feedback Positivo y Negativo

  • Clasificador que combina vectores de documentos para cada clase

Representación del Modelo de Usuario II

Modelo de Relevancia Rocchio II

  • En ausencia de feedback del usuario, también se suele usar pseudo relevance feedback.

Representación del Modelo de Usuario III

Modelo Bayesiano de Syskill & Webert

  • El problema es recomendar páginas web de forma personalizada, con un algoritmo que aprenda a medida que el usuario muestra preferencias por ciertos ítems.

  • ¿Qué features usar para representar las páginas web y llevar a cabo el apredizaje?

Ref: Billsus, D., & Pazzani, M. (1996, May). Revising user profiles: The search for interesting web sites. In Proceedings of the Third International Workshop on Multistrategy Learning.

Representación del Modelo de Usuario III

Syskill & Webert: Selección de Features

  • No se usaron todas las palabras de la páginas, si no que las que proveían mayor information gain con respecto a clases predefinidas.

donde

  • Algunas de las features con mayor info gain.

Representación del Modelo de Usuario III

Modelo Bayesiano de Syskill & Webert III

  • Se usa un clasificador Bayesiano

donde

  • Y el prior se va actualizando considerando una distribución Beta(\(\alpha\),\(\beta\)), con \(\alpha\): veces que el termino aparece, y \(\beta\): numero de veces que el termino está ausente.

Representación del Modelo de Usuario III

Resultados al observar user feedback

Extensiones

Tag-Based Recommendation

  • D. Parra, P. Brusilovsky. Improving Collaborative Filtering in Social Tagging Systems for the Recommendation of Scientific Articles. Web Intelligence 2010, Toronto, Canada

  • D. Parra, P. Brusilovsky. Collaborative Filtering for Social Tagging Systems: an Experiment with CiteULike. ACM Recsys 2009, New York, NY, USA

Motivación

- Es difícil obtener retroalimentación explícito del usuario.


- En Social Tagging Systems el usuario provee "etiquetas" como forma de feedback.


Folksonomy

- Cuando un usuario \(u\) agrega un item \(i\) usando una o más etiquetas \(t_1,...,t_n\) se forma un tagging instance.

- La colección de tagging instances produce una folksonomía.


Usando Filtrado Colaborativo sobre la Folksonomía

Paso 1 : Calcular la similaridad del usuario

Traditional CF Tag-based CF
Pearson Correlation over ratings BM25 over social tags

Paso 2 : Incorporar el número de "raters" para rankear items nuevos

Tag-Based Collaborative Filtering

Tag-Based Collaborative Filtering

BM25: Obtenemos la similaridad entre usuarios considerando el conjunto de tags de un vecino como un "documento" y los tags del active user como la query.


Usamos Okapi BM25 Retrieval Status Value como medida de similaridad.


Dataset

Crawler para obtener datos desde CiteUlike. 38 días, Junio-Julio 2009


Cross-Validation

- 10-Fold Cross Validation

- Entrenamiento para optimizar parámetro K (vecindario)

- Experimento tomó 12 horas

Resultados

- BM25 ayuda a obtener más vecinos, con el costo de ruido por aquéllos con pocas etiquetas.


- NwCF ayuda a disminuir el ruido, así es que era natural combinarlos.


Resumen

- Podemos utilizar etiquetas como fuente para encontrar similaridad entre los usuarios, como alternativa a algoritmos de recomendación basados en ratings.


- BM25 basado en etiquetas puede reemplazar a la correlación de Pearson para calcular la similaridad del usuario en Social Tagging Systems.


- Incorporar el número de usuarios en la fórmula de predicción ayuda a disminuir el ruido por items con muy pocos ratings.


MM-LDA (Ramage, 2009)

General Corpus Specific Corpus

Ref: Ramage, D., Heymann, P., Manning, C. D., & Garcia-Molina, H. (2009, February). Clustering the tagged web. In Proceedings of the Second ACM International Conference on Web Search and Data Mining (pp. 54-63). ACM.

Combinando Varios Features en un mismo Modelo

Context-Aware Event Recommendation in Event-based Social Networks by Augusto Q. Macedo, Leandro B. Marinho and Rodrygo L. T. Santos

  • Recommendations on event-based social networks (EBSNs) often undermines the users’ ability to choose the events that best fit their interests.
  • The event recommendation problem is intrinsically cold-start. Indeed, events published in EBSNs are typically short-lived and, by definition, are always in the future, having little or no trace of historical attendance.
  • THEN: exploit several contextual signals available from EBSNs. In particular, besides content-based signals based on the events’ description and collaborative signals derived from users’ RSVPs, we exploit social signals based on group memberships, location signals based on the users’ geographical preferences, and temporal signals derived from the users’ time preferences.

Referencias

  • Manning, C. D., Raghavan, P., & Schütze, H. (2008). Introduction to information retrieval (Vol. 1, p. 6). Cambridge: Cambridge university press.
  • Ramage, D., Heymann, P., Manning, C. D., & Garcia-Molina, H. (2009, February). Clustering the tagged web. In Proceedings of the Second ACM International Conference on Web Search and Data Mining (pp. 54-63). ACM.
  • D. Parra, P. Brusilovsky. Improving Collaborative Filtering in Social Tagging Systems for the Recommendation of Scientific Articles. Web Intelligence 2010, Toronto, Canada
  • D. Parra, P. Brusilovsky. Collaborative Filtering for Social Tagging Systems: an Experiment with CiteULike. ACM Recsys 2009, New York, NY, USA