Filtrado Basado en Contenido II

22
8/25/16, 08:35 Filtrado Basado en Contenido II Page 1 of 22 file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1 Filtrado Basado en Contenido II Filtrado Basado en Contenido II IIC 3633 - Sistemas Recomendadores Denis Parra Profesor Asistente, DCC, PUC CHile

Transcript of Filtrado Basado en Contenido II

Page 1: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 1 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

Filtrado Basado en Contenido IIFiltrado Basado en Contenido IIIIC 3633 - Sistemas Recomendadores

Denis ParraProfesor Asistente, DCC, PUC CHile

Page 2: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 2 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

TOCEn 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()

2/22

Page 3: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 3 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

Representación del Modelo de Usuario IBajo 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?

·

·

·

3/22

Page 4: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 4 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

Representación del Modelo de Usuario IIModelo de Relevancia Rocchio

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

Clasificador que combina vectores de documentos para cada clase·

4/22

Page 5: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 5 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

Representación del Modelo de Usuario IIModelo de Relevancia Rocchio II

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

5/22

Page 6: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 6 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

Representación del Modelo de Usuario IIIModelo Bayesiano de Syskill & Webert

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

·

6/22

Page 7: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 7 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

Representación del Modelo de Usuario IIISyskill & Webert: Selección de Features

donde

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.·

Algunas de las features con mayor info gain.·

7/22

Page 8: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 8 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

Representación del Modelo de Usuario IIIModelo Bayesiano de Syskill & Webert III

donde

Se usa un clasificador Bayesiano·

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

· α β α β

8/22

Page 9: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 9 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

Representación del Modelo de Usuario IIIResultados al observar user feedback

9/22

Page 10: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 10 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

ExtensionesTag-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

·

·

10/22

Page 11: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 11 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

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

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

11/22

Page 12: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 12 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

Folksonomy- Cuando un usuario agrega un item usando una o más etiquetas se forma un tagging instance.- La colección de tagging instances produce una folksonomía.

u i , . . . ,t1 tn

12/22

Page 13: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 13 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

Usando Filtrado Colaborativo sobre la FolksonomíaPaso 1 : Calcular la similaridad del usuarioTRADITIONAL CF TAG-BASED CF

Pearson Correlation over ratings BM25 over social tags

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

13/22

Page 14: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 14 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

Tag-Based Collaborative Filtering

14/22

Page 15: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 15 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

Tag-Based Collaborative FilteringBM25: 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.

15/22

Page 16: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 16 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

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

16/22

Page 17: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 17 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

Cross-Validation- 10-Fold Cross Validation

- Entrenamiento para optimizar parámetro K (vecindario)

- Experimento tomó 12 horas

17/22

Page 18: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 18 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

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.

18/22

Page 19: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 19 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

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

- BM25 basado en etiquetas puede reemplazar a la correlación de Pearson para calcular la similaridad del usuarioen 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 pocosratings.

19/22

Page 20: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 20 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

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 theSecond ACM International Conference on Web Search and Data Mining (pp. 54-63). ACM.

20/22

Page 21: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 21 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

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 theirinterests.

The event recommendation problem is intrinsically cold-start. Indeed, events published in EBSNs are typically short-lived and, bydefinition, 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, locationsignals based on the users’ geographical preferences, and temporal signals derived from the users’ time preferences.

·

·

·

21/22

Page 22: Filtrado Basado en Contenido II

8/25/16, 08:35Filtrado Basado en Contenido II

Page 22 of 22file:///Users/denisparra/Dropbox/PUC/IIC3633-2016-2/Website_R/clase6_contentBased_2.html#1

ReferenciasManning, C. D., Raghavan, P., & Schütze, H. (2008). Introduction to information retrieval (Vol. 1, p. 6). Cambridge: Cambridge universitypress.

Ramage, D., Heymann, P., Manning, C. D., & Garcia-Molina, H. (2009, February). Clustering the tagged web. In Proceedings of theSecond 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

·

·

·

·

22/22