User-Based CF II

IIC 3633 - Sistemas Recomendadores

Denis Parra
Profesor Asistente, DCC, PUC CHile

TOC administrativo

  1. Presentación de Ivania
  2. Mailing list (La creará Ivania)
  3. Blogs
    No olviden enviar hasta este domingo 7 su URL a indonoso@uc.cl
  4. Cálculo de Nota Final
    30% Tarea 1 + 30% (Lecturas, Presentación) + 40% Proyecto Final

TOC

En esta clase

  1. Resumen Clase anterior
  2. Por qué otra versión de CF?
  3. Filtrado Colaborativo Basado Items (Sarwar et al. 2010)
  4. Referencias

Resumen última clase

Recommender Systems aim to help a user or a group of users in a system
to select items from a crowded item or information space.

Resumen última clase

Problema de recomendación como predicción de ratings: evaluación


Resumen última clase II

  • Ranking no personalizado: Varias opciones. Si consideramos que los ítems a rankear tienen valoraciones positivas y negativas, el ranking ideal debería considerar la proporción de positivas y la cantidad de muestras consideradas: una opción es el límite inferior del Intervalo de Confianza del Wilson Score, para un parámetro Bernoulli.

  • Filtrado Colaborativo (Basado en el usuario): Buscamos los K usuarios más parecidos a nuestro "active" o "center" user (K-NN). Luego, hacemos predicción de items que los vecinos han consumido, pero que el "active user" no ha consumido aún.

\[Similaridad(u,v) = w(u,v), v \in K\] \[\hat{p}_{u,i} = \bar{r}_u + \alpha \sum_{v \in N(u)}{w(u,v)(r_{v,i} - \bar{r}_v)}\]

Pros y Contras del Filtrado Colaborativo User-Based (KNN)

  • PROS:

    • Fácil de implementar
    • Independiente del contexto
    • Comparado con otras técnicas, como basado en contenidos, más precisa
  • CONS:

    • Sparsity
    • Cold-start
    • New Item

¿Por qué otra versión de Filtrado Colaborativo?

Balance entre Escalabilidad y Exactitud

  • Exactitud: Mientras más vecinos \(K\) consideramos (bajo cierto umbral), mejor debería ser mi clasificación (Lathia et al. 2008)

  • Escalabilidad: Pero mientras más usuarios \(n\) existen en el sistema, mayor es el costo de encontrar los K vecinos más cercanos, ya que K-NN es \(O(dnk)\). Considerando un sitio con millones de usuarios, calcular las recomendaciones usando este método \(memory-based\) se hace poco sustentable.

Más aún, hay que lidiar con otros problemas

  • Dispersión (Sparsity): La baja densidad de los datos hace que el Filtrado Colaborativo basado en el usuario sufra de "Cold-start" (usuarios con pocos ratings o historial de acciones) y también del "new item problem" (items nuevos que nadie los ha consumido)

Opciones

  • Model-based methods: Redes Bayesianas (ideales en casos en que las preferencias del usuario no cambian tan a menudo), Reducción de dimensionalidad (estado del arte, pero tiene algunos costos de implementación, especialmente en "tunear" los parámetros)

  • Clustering, aunque tienen como efecto producir recomendaciones "no tan personalizadas" y, disminuir la exactitud de las predicciones en algunos casos (Breese et al. 1998)

  • Graph-based methods: Horting, Random Walks, Spread of activation. Son menos precisos, pero contribuyen a dar mayor diversidad a las recomendaciones

  • Item-base recommendation: Revisar user-based (precisión + simpleza) y escalarlo :-)

Alternativa UB-CF con Clustering

  • Ungar, L. H., & Foster, D. P. (1998). Clustering methods for collaborative filtering. In AAAI workshop on recommendation systems. ~ EM.

  • O’Connor, M., & Herlocker, J. (1999). Clustering items for collaborative filtering. In Proceedings of the ACM SIGIR workshop on recommender systems. ~ Hierarchical.

  • Xue, G. R., Lin, C., Yang, Q., Xi, W., Zeng, H. J., Yu, Y., & Chen, Z. (2005). Scalable collaborative filtering using cluster-based smoothing. SIGIR ~ K-means.

Alternativa UB-CF con Clustering

Paso 1: K-means

K-means I

K-means II

K-means III

K-means IV

K-means V

K-means VI

K-means VII

Data Smoothing

  • Muchos Usuarios tienen pocos ratings

  • Si sabemos que el usuario pertenece a cierto cluster, podemos llenar tupla \(R_u(t)\)

  • Donde


    y \(C_u\): cluster al que pertenece usuario \(u\).

Pre-Selección de Vecindario

  • Podemos comparar vecinos considerando sólo los clusters más promisorios:

  • Considerando

Selección de Vecinos

  • Después de la pre-selección, recalculamos similaridad considerando rating original y rating del grupo, usando un factor de balance \(w_{ut}\)


  • Luego calculamos los K usuario más cercanos

Finalmente, predicción


Resultados I

Algoritmos Dataset

Evaluación:

Resultados II

MAE Parámetros

Proxima Clase

  • Item-based Collaborative Filtering

Referencias

  • Sarwar, B., Karypis, G., Konstan, J., & Riedl, J. (2001, April). Item-based collaborative filtering recommendation algorithms. In Proceedings of the 10th international conference on World Wide Web (pp. 285-295). ACM.
  • Lathia, N., Hailes, S., & Capra, L. (2008, March). The effect of correlation coefficients on communities of recommenders. In Proceedings of the 2008 ACM symposium on Applied computing (pp. 2000-2005). ACM.
  • Breese, J. S., Heckerman, D., & Kadie, C. (1998, July). Empirical analysis of predictive algorithms for collaborative filtering. In Proceedings of the Fourteenth conference on Uncertainty in artificial intelligence (pp. 43-52). Morgan Kaufmann Publishers Inc.
  • Das, A. S., Datar, M., Garg, A., & Rajaram, S. (2007, May). Google news personalization: scalable online collaborative filtering. In Proceedings of the 16th international conference on World Wide Web (pp. 271-280). ACM.
  • James Davidson, Benjamin Liebald, Junning Liu, Palash Nandy, Taylor Van Vleet, Ullas Gargi, Sujoy Gupta, Yu He, Mike Lambert, Blake Livingston, and Dasarathi Sampath. 2010. The YouTube video recommendation system. In Proceedings of the fourth ACM conference on Recommender systems (RecSys '10).

Referencias Adicionales

  • Neal Lathia, Stephen Hailes, and Licia Capra. 2008. The effect of correlation coefficients on communities of recommenders. In Proceedings of the 2008 ACM symposium on Applied computing (SAC '08). ACM, New York, NY, USA, 2000-2005
  • Gui-Rong Xue, Chenxi Lin, Qiang Yang, WenSi Xi, Hua-Jun Zeng, Yong Yu, and Zheng Chen. 2005. Scalable collaborative filtering using cluster-based smoothing. In Proceedings of the 28th annual international ACM SIGIR conference on Research and development in information retrieval (SIGIR '05).
  • O’Connor, M., & Herlocker, J. (1999, August). Clustering items for collaborative filtering. In Proceedings of the ACM SIGIR workshop on recommender systems (Vol. 128). UC Berkeley.
  • Ungar, L. H., & Foster, D. P. (1998, July). Clustering methods for collaborative filtering. In AAAI workshop on recommendation systems (Vol. 1, pp. 114-129).
  • Xavier Amatriain, Josep M. Pujol, and Nuria Oliver . 2009. I Like It... I Like It Not: Evaluating User Ratings Noise in Recommender Systems. In Proceedings of the 17th International Conference on User Modeling, Adaptation, and Personalization: formerly UM and AH (UMAP '09),
  • Herlocker, J. L., Konstan, J. A., Terveen, L. G., & Riedl, J. T. (2004). Evaluating collaborative filtering recommender systems. ACM Transactions on Information Systems (TOIS), 22(1), 5-53.