МТСRecSys3 мин

От SASRec к RecTools: что именно учится предсказывать рекомендательная модель

Одинаковое слово «трансформер» может скрывать разные задачи, маски, отрицательные примеры и способы проверки рекомендаций. Никита Зелинский объясняет развитие последовательных моделей и показывает, какие эксперименты позволяет собирать RecTools.

Статья · на русском

Трансформерные архитектуры для рекомендаций: от SASRec до сегодняшнего дня. Сравниваем с помощью RecTools

Никита Зелинский · Опубликовано: 18 сентября 2025 г.

Следующий фильм как обучающая задача

В базовой постановке известна история просмотров и нужно предсказать следующий фильм. ID объектов превращаются в векторы; позиционные признаки сохраняют порядок. Истории приводят к допустимой длине, а пустые позиции отмечают специальными значениями.

В SASRec каузальная маска запрещает смотреть в будущие действия. Один проход создаёт представления для разных префиксов истории, и каждое учится отличать следующий просмотренный объект от отрицательного примера. Оценка близости сама по себе ещё не вероятность — для неё используется функция потерь.

Этот фрагмент в оригинале

Меняется не только архитектура

BERT4Rec восстанавливает скрытые элементы по окружающему контексту и использует другую функцию потерь. В PinnerFormer цель расширяется до множества будущих взаимодействий, что помогает моделировать устойчивые интересы. Эти задачи нельзя сравнивать, глядя только на число слоёв.

Далее автор рассматривает включение разных реакций пользователя: просмотр, пропуск, лайк. Последовательность может содержать и объект, и действие, поэтому модель учится отвечать на разные вопросы для отбора кандидатов и ранжирования.

Обучение SASRec по последовательности событий.

Обучение SASRec по последовательности событий.

Источник: Иллюстрация из оригинала
Этот фрагмент в оригинале

Что доступно в RecTools

Библиотека позволяет менять признаки объектов, функции потерь, выбор отрицательных примеров, механизмы сопоставления и размеры трансформерной модели. Используются PyTorch и Lightning, встроены проверки на эпохах и сравнение конфигураций.

Важная граница публикации: тяжёлые FuXi, LiGR и HSTU в описанную версию RecTools не входили. Их разбор в первой части статьи не означает наличия готовой реализации в библиотеке.

Различия между SASRec и BERT4Rec.

Различия между SASRec и BERT4Rec.

Источник: Иллюстрация из оригинала
Этот фрагмент в оригинале

Почему точности недостаточно

Модель может хорошо угадывать популярные фильмы и почти не предлагать нового. Поэтому автор показывает оценку разнообразия, новизны и смещения к популярному контенту вместе с точностью.

Открытые датасеты и виджет сравнения нужны для выбора компромисса между этими свойствами. Это не доказательство, что лидер такого сравнения автоматически улучшит конкретный стриминговый продукт: дальше остаётся проверка на его данных и пользователях.

Сравнение реализаций на нескольких наборах данных.

Сравнение реализаций на нескольких наборах данных.

Источник: Иллюстрация из оригинала
Этот фрагмент в оригинале