The internet is rife with recommendation systems, suggesting movies you should watch or people you should date. These systems are tuned to match people with items, based on the assumption that similar people buy similar things and have similar preferences. In other words, an algorithm predicts which items you will like based only on your, and the item’s, previous ratings.
But many existing approaches to making recommendations are simplistic. Mathematically, these methods often assume people belong to single groups, and that each one group of people prefers a single group of items. For example, an algorithm might suggest a science fiction movie to someone who had previously enjoyed another different science fiction movie—even if the movies have nothing else in common.
In a new paper in the Proceedings of the National Academy of Sciences, Guimerà and his collaborators introduce a new recommendation system that differs from existing models in two major ways. First, it allows individuals and items to belong to mixtures of multiple groups. Second, it doesn’t assume that ratings are a simple function of similarity; instead, it predicts probability distributions of ratings based on the groups to which the person or item belongs. This flexibility makes the new model more realistic than existing models that posit a linear relationship between users and items. Not everyone uses ratings in the same way—if a person rates a movie 5 instead of 1, that doesn’t mean she likes it five times as much. The new model can learn these nonlinear relationships between users and ratings.
Guimerà and his collaborators tested their model on five large datasets, including recommendations systems for songs, movies, and romantic partners. In each case, the new model’s predicted ratings proved more accurate than those from existing systems, sometimes even doubling the their accuracy—and their algorithm is faster than competing methods as well.