September 19, 2015

Hybrid Collaborative Filtering

Recommender Systems Handbook

  • The simplest and original implementation of this approach recommends to the active user the items that the other users with similar tastes liked in the past.

  • Hybrid recommender systems are those based on the combination of different recommender system techniques.

Collaborative filtering

Hybrid collaborative filering with tags

Proposed Factorization Model

Find \(P,Q\) and \(X\) minimizing: \[ \begin{split} J(P, Q, X) & = \sum_{ua \in R} w(\alpha, R_{ua}) \left( \widetilde{R}_{ua} - P_u Q_a^T \right)^2 \\ & + \mu_1 \sum_{ut \in T^U} w(\beta, T^U_{ut}) \left( \widetilde{T}^U_{ut} - P_u X_t^T \right)^2 \\ & + \mu_2 \sum_{at \in T^A} w(\gamma, T^A_{at}) \left( \widetilde{T}^A_{at} - Q_a X_t^T \right)^2 \end{split} \]

Model Comparison

Baseline models

  • User-artist matrix (MF)
  • User-artist matrix and tags (TagMF)

Proposed model

  • User-artist matrix and weighted tags (WTagMF) Usage Data

Listening Data

  • 2,902 users
  • 71,223 artists
  • 687,833 user-artist interactions


  • 630 user-tags (2,640 interactions)
  • 12,902 artist-tags (327,202 interactions)

Producing Recommendations

\[ \widetilde{R} \sim Z = P Q^T \]

Predicted interest for…

  • user \(u\) and artist a: \(Z_{ua} = P_u Q_a^T\)
  • user \(u\) and all artists: \(Z_u = P_u Q^T\)

Evaluation Methodology

  • Split \(R\) into training and test sets
  • Learn the users' taste \(Z\)
  • For each \(ua \in R^{test}\):
    • rank \(a\) within a list of random artists, sorted by \(Z_u\)
    • a good model should rank \(a\) in top positions
  • Compute expected percentile rank

Number of factors

Number of factors

Number of Iterations

Number of iterations

Mitigate Cold-Start in CF