BPR: Bayesian Personalized Ranking from Implicit Feedback

Steffen Rendle, Christoph Freudenthaler, Zeno Gantner and Lars Schmidt-Thieme

Yoav Navon
Recommender Systems
2 min readSep 8, 2019

--

The paper introduces an optimization criterion designed to provide good rankings: BPR-Opt, and a generic learning algorithm, based on SGD to optimize with respect to BPR-Opt. The framework is model agnostic, so diverse methods are implementable like Item/User-KNN and Matrix Factorization techniques.

The method consists in ranking pairs of items, in opposition to previous methods designed to predict a rating or score for individual items. It is assumed that watched items are more desirable than unwatched items, so a matrix of preferences is computed for every user, shown in figure 1.

Figure 1: Training data for BPR

Finally, the ranking task is solved using a Bayesian formulation of the problem. The idea is to maximize the posterior probability p(𝛩|<), by computing the likelihood p(<|𝛩) and prior probability p(𝛩).

I find it really good the argument presented in the paper against the usual methodologies. If you give the items with feedback a positive label (e.g. 1), and all others a negative label (e.g. 0), and you fit this data, there is a subjacent problem. A model with enough expressiveness would be able to fit the data perfectly, and thus would predict 0 for every unseen item. This way, regularization is the reason the method works. Nevertheless, regularization should be more of a way of improving a model and not the only reason for its success.

One concern that I have for the method is that given a training set of size I·U, it is necessary to create a new training set of I·I·U. How does this escalate? For datasets with millions of items, the memory usage is critical.

A possible problem of the approach presented in the paper is that we are assuming that all items are equally comparable. For example, if we consider the moment when the feedback is recorded, it is not the same to use a fresh data point or one that was recorded a few years ago, so the timeframe matters.

--

--