
BO: a simple baseline model that recommends a blackrandom permutation of all available items to each user, regardless of their preferences.

GA: a baseline model that blackrecommends the global average rating to each and every user, regardless of their preferences.

POP: a baseline model that blackblackranks items based on their popularity, i.e. the number of times a specific item blackis rated, and suggests blackthese items to blackevery user regardless of their preferences.

MF: Matrix Factorisation [1]} is a rating prediction model that represents both users and items as latent vectors. This model is optimised to predict the observed rating for each user-item pair.

PMF: Probabilistic Matrix Factorisation [2]} is an extension of Matrix Factorisation [1]} for large, sparse and imbalanced datasets. blackThere are two variants of this algorithm depending on how blackthe users' preferences blackare modelled, i.e. linear and non-linear.
We use both linear and non-linear variants in our experiments.

SVD++: Singular Value Decomposition [4]} is another rating prediction model blackthat factorises the user-item rating matrix to a product of two lower rank matrices, i.e. user factors and item factors.

WMF: Weighted Matrix Factorisation [5]} is another extension of Matrix Factorisation [1]} that models confidence and uncertainty in addition to preferences.

NMF: Non-negative Matrix Factorisation [7]} factorises the user-item rating matrix into user and item latent matrices, with the property that all matrices have no negative elements.

BPR: Bayesian Personalised Ranking [8]} is a pair-wise ranking model. The BPR model is trained based on uniform negative sampling, i.e. we randomly sample items not interacted with as negative instances for each user. We use both normal and weighted variants in our experiments.

MMMF: Maximum Margin Matrix Factorisation [9]} is a type of matrix factorisation model blackthat is optimised for blacka soft margin (Hinge) ranking loss.

NCF: Neural Collaborative Filtering [10]} is a general neural network framework for collaborative filtering. We use Multi-Layer Perceptron (MLP), Generalised Matrix Factorisation (GMF) and Neural Matrix Factorisation (NeuMF) in our experiments.

