Given historical user's transaction develop a recommender system for online-gallery (description of the task in russian).
Take all transactions (clicks, likes and bookmarks) and create rating matrix with value
with initial rating implicit
:
BM25Recommender
with 600 neighbours,AlternatingLeastSquares
with 512 factors and 15 iterations
and predict top 400 candidates with each model. Then blend these 3 models with weights 5.5 and 6
for BM25Recommender
and AlternatingLeastSquares
respectively.
The blending consist in rearranging of candidates (see mix_solutions
in train.py
).
This will reach a mean average precision at 100 (mAP@100) multiplied by 10000 around 29 (see leaderboard).
pip install -r requirements.txt
CUDA_VISIBLE_DEVICES=[gpus] python train.py