Про доклад о природе последовательных рекомендаций на Data Fusion
Думал чем поделиться с прошедшего Data Fusion. Были и интересные доклады, и интересные знакомства. В итоге решил поделиться с вами докладом, который мне запомнился, и который является хорошим примером прикладного рисерча. Постараюсь все рассказать доступным языком 😛
Доклад на тему рекомендаций и называется «Does It Look Sequential? Анализ последовательных паттернов в датасетах для рекомендательных систем». Спикером была Анна Володкевич, а выступление основано на этой статье.
Предыстория: тренды в рекомендательных системах
Дело в том, что сейчас один из главных трендов области: использование в user-to-item рекомендациях трансформерных моделей обучающихся на последовательности пользовательских действий. Эти модели пытаются лучше учитывать последнюю историю вашего взаимодействия, а не смешивать в одну кучу старые и свежие действия. Сейчас популярны несколько архитектур, которые строятся по принципу языковых моделей. Например, SASRec и Bert4Rec.
Вы можете удивиться, потому что кажется, что многие сервисы уже довольно давно учитывают последнюю историю в рекомендационных лентах. На самом деле это обычно работает по-другому: выдача состоит из смеси "общих" user-to-item рекомендаций и "свежих" item-to-item рекомендаций по вашим последним действиям.
Суть исследования
Новые архитектуры сейчас на серьезном хайпе и они дают приросты (в том числе и у нас), но все-таки хочется понять, насколько в данных есть последовательный сигнал. Может быть эффект связан с чем-то другим.
Так вот, ребята провели исследование большого количества открытых датасетов. Они сравнивали результаты, если при предсказании порядок действий в истории перемешать. Так вот, выяснилось, что на большей части датасетов последовательные модели плохо обучаются на последовательность, несмотря на хорошие общие метрики рекомендаций. Т.е. в этих датасетах слабый последовательный сигнал.
Реально сильное влияние перемешивания истории было на музыкальных датасетах, более-менее значимое было на датасете Мегамаркета, а вот большинство Амазоновских датасетов отреагировали очень слабо.
Выводы
Во-первых, если вы обучаете SASRec на своих данных, неплохо провести такой тест.
Во-вторых, если последовательный сигнал в данных отсутствует, то модель делает тучу "лишней работы". Но не факт что это плохо. Например, известно, что 4 слоя нейросети теоретически могут обучить любую зависимость. Однако выдающиеся результаты пришли только при использовании "избыточных" глубоких сетей с десятками слоев.
Но может быть, эффект трансформерных моделей связан с тем, что датасайнтистам очень хочется обучать трансформеры и поэтому они больше стараются и дожимают результат 😅
Я везде люблю искать продуктовую природу. Лично у меня пока нет интуитивного понимания, в чем отличие выдачи классических ALS моделей и трансформерных sequential. И было бы интересно его получить.
Спасибо, что дочитали! Если пост откликнулся, буду рад вашим реакциям 🔥
Post #321
2.03K



- 🔥 28
- ❤ 5