Ranking & UB-CF

IIC 3633 - Sistemas Recomendadores

Denis Parra
Profesor Asistente, DCC, PUC CHile

TOC

En esta clase

  1. Definición y un poco de Historia
  2. Ranking No Personalizado
  3. User-Based Collaborative Filtering
  4. Referencias

Definición

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.
(MacNee et. al 2006)


R. Burke tenía su propia definición, similar a esta, pero agregaba ...in a personalized way.


El problema de recomendación formalizado (Adomavicius et al. 2007)

\[\forall c \in C, s^{\prime}_{c} = \arg\!\max_{s \in S} u(c,s)\] \[u:C \times S \to R,\ funcion\ de\ utilidad\] \[R:\ conjunto\ recomendado\ de\ items\\ C:\ conjunto\ de\ usuarios\\ S:\ conjunto\ de\ items\]

1. Un Poco de Historia


Amazon.com everywhere

1.1 En 1992 Xerox PARC Tapestry

1.2 MovieLens

NetFlix Prize (2007-2009)

1.3 Netflix en 2012

1.3 Netflix en 2012 (continuación)

Ranking no personalizado (Blog de Evan Miller, 2009)

  1. Popularidad.
  2. Score: (Ratings Positivos) - (Ratings Negativos)
  3. Score: (Rating Promedio) = (Ratings Positivos)/(Total de Ratings)
  4. Score: Considerando Ratings positivos y negativos, Limite inferior del Intervalo de Confianza del Wilson Score, para un parámetro Bernoulli.

Donde \(\hat{p}\) es la proporción (estimada) de ratings positivos, \(z_{\alpha/2}\) es el \((1-\alpha/2)\) cuantil de la distribución normal, y \(n\) el número de ratings. \(\alpha\), también llamado nivel de significancia estadístico, generalmente se considera 95%.

Clasificacion(es)

  1. Considerando los Datos usados
    1. Basado en Reglas (Rule-based)
    2. Basado en Contenido (Content-based)
    3. Filtrado Colaborativo (el usuario y sus vecinos)
  2. Considerando el Modelo
    1. Memory-based (KNN)
    2. Model-based (Representación latente)

Filtrado Colaborativo basado en el usuario

Dos tareas son necesarias:

  • KNN: Encontrar los K vecinos más cercanos (KNN) al usuario \(a\): \[Similaridad(a,i) = w(a,i), i \in K\]
  • Predecir el rating que un usuario \(a\) dará a un ítem \(j\) : \[p_{a,j} = \bar{v}_a + \alpha \sum_{i = 1}^{n}{w(a,i)(v_{i,j} - \bar{v}_i)}\]

Ejemplo: Correlación de Pearson

Ejemplo: Correlación de Pearson

SOLUCION

Ejemplo: Correlación de Pearson

Ejemplo Paso 2: Predicción del rating

Ejemplo Paso 2: Predicción del rating

SOLUCION

Ejemplo Paso 2: Predicción del rating

Referencias

  • Adomavicius, G., & Tuzhilin, A. (2005). Toward the next generation of recommender systems: A survey of the state-of-the-art and possible extensions. Knowledge and Data Engineering, IEEE Transactions on, 17(6), 734-749.
  • Amatriain, X. (2013). Mining large streams of user data for personalized recommendations. ACM SIGKDD Explorations Newsletter, 14(2), 37-48.
  • Miller, B. N., Albert, I., Lam, S. K., Konstan, J. A., & Riedl, J. (2003, January). MovieLens unplugged: experiences with an occasionally connected recommender system. In Proceedings of the 8th international conference on Intelligent user interfaces (pp. 263-266). ACM.
  • Parra, D., & Sahebi, S. (2013). Recommender systems: Sources of knowledge and evaluation metrics. In Advanced Techniques in Web Intelligence-2 (pp. 149-175). Springer Berlin Heidelberg.