Скажем есть множество фильмов, которые пользователи могут лайкать. Соответственно наиболее популярные фильмы имеют большое количество лайков, а менее популярные — меньше. Нужно построить систему рекомендации, а также находить пользователей схожих по вкусам.
Кто-нибудь может подсказать в какую сторону можно посмотреть?
Например, чтобы сделать расчет для конкретного пользователя, можно получить список других пользователей, у которых выбор фильмов схожий (входят во множество лайков нашего пользователя). Сделать расчет баллов для каждого фильма — чем популярнее фильм, тем меньше балов, и наоборот. А затем полученные баллы складывать по каждому пользователю. И те, чьи баллы ближе всего могут совпасть по вкуса.
Кстати, какую мат. функцию можно применить для получения баллов в зависимости от популярности фильма? Т.е. нужно, чтобы более популярные фильмы получили меньше баллов, а менее — больше.
Если английский хорошо понимаем www.ml-class.org/course/video/preview_list
XVI. RECOMMENDER SYSTEMS
предварительно хорошо ознакомиться с
II. LINEAR REGRESSION WITH ONE VARIABLE
IV. LINEAR REGRESSION WITH MULTIPLE VARIABLES
Ваша задача покрывает такие темы: онлайн обучение, рекомендательная сеть, линейная регрессия, возможно нейронные сети
1) «высокие» оценки конкретного пользователя надо бы сравнивать с реальными рейтингами и т.п., иначе будет «перекос» в сторону пользователя
2) совпадение не обязательно является основанием для выбора по рейтингу другого пользователя