Fifty Shades of Ratings: How to Benefit from a Negative Feedback in Top-N Recommendations Tasks

Evgeny Frolov, Ivan Oseledets
7/14/2016
cs.LGcs.IRstat.ML

Official code: evfro/fifty-shades (32 stars, MIT, last commit 2017-07-22).

Abstract

Conventional collaborative filtering techniques treat a top-n recommendations problem as a task of generating a list of the most relevant items. This formulation, however, disregards an opposite - avoiding recommendations with completely irrelevant items. Due to that bias, standard algorithms, as well as commonly used evaluation metrics, become insensitive to negative feedback. In order to resolve this problem we propose to treat user feedback as a categorical variable and model it with users and items in a ternary way. We employ a third-order tensor factorization technique and implement a higher order folding-in method to support online recommendations. The method is equally sensitive to entire spectrum of user ratings and is able to accurately predict relevant items even from a negative only feedback. Our method may partially eliminate the need for complicated rating elicitation process as it provides means for personalized recommendations from the very beginning of an interaction with a recommender system. We also propose a modification of standard metrics which helps to reveal unwanted biases and account for sensitivity to a negative feedback. Our model achieves state-of-the-art quality in standard recommendation tasks while significantly outperforming other methods in the cold-start "no-positive-feedback" scenarios.

View on arXivView PDF

Code Implementations(1)

evfro/fifty-shadesOfficial100%
MIT

Source code to support ACM RecSys'16 paper "Fifty Shades of Ratings: How to Benefit from a Negative Feedback in Top-N Recommendations Tasks"

3211C#, F#Jul 5, 20169 years agoMIT

Similar Papers

Cite this paper

@article{frolov2016fifty,
  title  = {Fifty Shades of Ratings: How to Benefit from a Negative Feedback in Top-N Recommendations Tasks},
  author = {Evgeny Frolov and Ivan Oseledets},
  year   = {2016},
  eprint = {1607.04228},
  archivePrefix = {arXiv},
  url    = {https://arxiv.org/abs/1607.04228}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/1607.04228.svg)](https://codeofpaper.com/paper/1607.04228)

Discussion