We generated our recommendation lists using Factorization Machines [1]} and also include BPRMF [2]} for comparison.
A Factorization Machine models pair-wise interactions with factorized parameterization and is suited to ranking problems with implicit feedbackFor Factorization Machine implementation, we used RankFM toolkit: https://rankfm.readthedocs.io/en/latest/. Since RankFM does not include an implementation of hyper-parameter optimization, we implemented our own hyper-parameter optimization function by following initialization of hyper-parameters used in https://github.com/lyst/lightfm..
BPRMF is a matrix factorization algorithm using Bayesian personalized ranking for implicit dataFor BPRMF implementation, we used Elliot Toolkit https://elliot.readthedocs.io/en/latest/index.html. We followed hyper-parameters optimization suggested in Elliot..
We used the RankFM implementation, including two variants of loss: Bayesian Personalized Ranking (BPR) [3]} and Weighted Approximate-Rank Pairwise (WARP) [4]} to learn model weights via Stochastic Gradient Descent (SGD) [3]}.
WARP loss is often described as performing
better than BPR loss [6]}, [7]}.
Our exploratory experiments confirmed that WARP loss was generally better than BPR loss, and we focus on WARP loss in our investigation.
User attributes (gender, age, occupation, and location) are one-hot-encoded before being used by FM.
We note that in each run we add one user attribute at a time.
In other words, we do not test combinations such as gender and location.
In this way, we can isolate the impact of the user attribute.
