В статье решается задача последовательных рекомендаций, в которой очередная рекомендация строится, исходя из предыдущих взаимодействий пользователя. Цель авторов – оптимизировать долгосрочную метрику рекомендера. Для этого они предлагают использовать offline reinforcement learning.
В основе подхода – алгоритм Actor-Critic, в котором обучаются две модели: actor и critic (сюрприз!).
- Actor принимает на вход последовательность айтемов пользователя и выдаёт рекомендацию (policy). Для эмбеддинга последовательности используется трансформер на основе DistilGPT2.
- Critic оценивает долгосрочный эффект (Q-функцию) рекомендации, которую выдал actor, также используя последовательность айтемов пользователя. Здесь последовательность эмбеддится с помощью LSTM.
Процесс рекомендаций смоделирован, как задача последовательного принятия решений RL-агентом. Оказалось, что обучать такую архитектуру только с помощью RL неэффективно, поэтому actor сперва предобучают на задаче next-item-prediction. После этого вся архитектура учится оптимизировать долгосрочный reward с помощью алгоритма CRR.
Эксперименты проводились на датасетах MovieLens 25M и Yoochoose. Предложенная архитектура сравнивалась как с бейзлайнам (SASRec, Caser), так и с собственными отдельными компонентами (Transformer-only, CRR-only). На графиках показаны кривые обучения двух этапов эксперимента на MovieLens-25M. На первом этапе претрейна Transformer-only модель быстро достигает лучших результатов. На втором этапе с помощью CRR файнтюнинга авторы улучшили модель, добившись роста метрики в 1,5 раза. В итоге предложенная модель победила бейзлайны в 11 из 12 экспериментов. Авторы не представили результаты A/B-тестов реальных рекомендеров. Так что предложенный метод пока можно считать теоретическим — он ещё требует проверок в «реальном бою».
Post #87
1.02K
ML — это ОК 💻Продолжаем разбор #recsys23 INTEGRATING OFFLINE REINFORCEMENT LEARNING WITH TRANSFORMERS FOR SEQUENTIAL RECOMMENDATION https://arxiv.org/abs/2307.14450
- 👍 9
- ✍ 1