Я реализую рекомендатор на основе пользователя, который должен работать только с категориями элементов, чтобы избежать вычислений с бесполезными данными. Чтобы быть более ясным, если пользователь находится на странице категории, я не хочу вычислять предпочтения для всех элементов, а только для пользователей, которые просматривали что-то в той же категории.
Для этого я думаю реализовать пользовательское UserSimilarity, чтобы сообщить Mahout, что пользователь не похож, если он никогда не просматривал элемент в этой категории. Я могу сделать то же самое, реализуя Rescorer с фильтрованной проверкой.
Я знаю, что userSimilarity используется в начале алгоритма, чтобы избежать вычислений для всего набора, но я не знаю, так ли это в Rescorer. Мне кажется, что Rescorer похож на постпроцессор... Я просто хочу избежать тяжелых вычислений. Должен ли я использовать Rescorer или Custom UserSimilarity? Как выбрать между двумя?