In recent years, Matrix Factorization (MF) methods play a pivotal role in the research of Collaborative Filtering and Recommender Systems. The basic assumption is that, the data can be formed into a matrix where is the number of users and is the number of items. Each rating is modeled as a dot-product of the latent factor for the user and the latent factor for the item . In the classic Probabilistic Matrix Factorization, the rating is defined as:
(1)
where each user factor and each item factor is drawn from another set of Gaussians:(2)
This definition has two issues:- It does not prevent that the ratings become negative, which is a natural result of the Gaussian assumption.
- If no heuristics are applied, the model needs to model all zero ratings and therefore, dramatically impacting the predictive performance.
In order to demonstrate the second point, we could see that the log likelihood of the data can be give as:
(3)
where is a constant. It is obvious that, if is zero, the model still needs to explain those ratings as well. In [1], the authors just use a variable to indicate whether the rating is observed or not, simply ignoring them, which might be effective, but not justified in the model. In [2], the authors do not ignore unobserved or zero ratings, they put a small confident number for those ratings, a heuristic still.Recently, Prem Gopalan et al. [3, 4, 5, 6] have proposed a new model called Poisson Factorization (PF) to address these two issues. The central idea is to replace Gaussian assumption with Poisson distribution:
(4)
where and are drawn from user specific and item specific Gamma distributions. One obvious outcome of this model is that, are modeled as non-negative values and the latent factors are also non-negative as well. To the second issue mentioned above, we could see the probability of data is:(5)
and therefore, for all items, the log probability is:(6)
As , thus, the first term would be zero if and the second term becomes and thus, only the terms that would remain. Therefore, as mentioned in the papers, the model, by definition, can support sparse matrices.Another interesting property of PF, which is mentioned in [5, 6], is that, we can rewrite the Poisson observation model as a two stage process where a user first decides on a budget she has to spend on items, and then spends this budget rating items that she is interested in:
(7)
This shows that learning a PF model for user-item ratings is effectively the same as learning a budget for each user while also learning how that budget is distributed across items.Reference
- Ruslan Salakhutdinov, Andriy Mnih: Probabilistic Matrix Factorization. NIPS 2007: 1257-1264
- Yifan Hu, Yehuda Koren, Chris Volinsky: Collaborative Filtering for Implicit Feedback Datasets. ICDM 2008: 263-272
-
Prem Gopalan, Laurent Charlin, David M. Blei: Content-based recommendations with Poisson factorization. NIPS 2014: 3176-3184
-
Prem Gopalan, Francisco J. Ruiz, Rajesh Ranganath, David M. Blei: Bayesian Nonparametric Poisson Factorization for Recommendation Systems. AISTATS 2014: 275-283
- Prem Gopalan, Jake M. Hofman, David M. Blei: Scalable Recommendation with Poisson Factorization. CoRR abs/1311.1704 (2013)
- Prem Gopalan, Jake M. Hofman, David M. Blei: Scalable Recommendation with Poisson Factorization. UAI 2015.
Poisson Matrix Factorization has already been invented by John Canny in 2003
http://www.cs.berkeley.edu/~jfc/papers/04/GAPmodel/SIGIR2004.pdf
And its connection with non-negative matrix factorization could be referred.