Традиционные модели обычно обучаются на данных одного сервиса, что дает фрагментарное представление о пользователе. Perseus объединяет действия клиента из разных сервисов в единую временную последовательность и строит универсальное векторное представление пользователя. Это позволяет прогнозировать поведение клиента даже для новых сервисов или при отсутствии истории покупок — в экспериментах качество рекомендаций росло от 3% до 17%, а предсказание первой корзины показало прирост в среднем на 10% по сравнению с простым выбором самых популярных товаров.
Ключевые идеи фреймворка:
Perseus поддерживает несколько типов задач: кандидатообразование (retrieval), ранжирование, классификацию и регрессию. В фреймворке реализован строгий временной протокол: при обучении и тестировании модель получает только те события, которые произошли до указанного момента времени, чтобы исключить «заглядывание» в будущее и не использовать информацию о событиях, которые еще не произошли.
Внутри Т‑Банка Perseus уже применяется для задач шопинга, оценки реакции на офферы с повышенным кэшбэком и предиктивной поддержки клиентов. Авторы отмечают, что фреймворк особенно полезен для компаний с множеством доменов данных, однако добавление несвязанных событий может ввести шум, поэтому подбор источников все еще требует экспериментов.
Perseus опубликован в открытом доступе на GitHub и рассчитан на три основные сценария использования: построение трансформерных рекомендательных моделей для одного домена, объединение разных доменов в единую персонализацию и исследовательские работы в области кросс‑доменных моделей персонализации. Для запуска достаточно подготовить данные в нужном формате и описать модель и параметры обучения в небольшом конфигурационном файле. Все остальное фреймворк берет на себя, что позволяет быстро получить качественную работающую модель. В планах команды — исследования по предобучению кросс‑доменных моделей, комбинирование трансформеров с градиентным бустингом и интеграция фреймворка в онлайн‑инференс.