Monolith: как быстро доставлять новые знания в рекомендации
Пользователи и каталог меняются, а редкие ID создают огромные таблицы векторов. Суточное обучение не успевает за частью изменений. Monolith сочетает динамические таблицы без коллизий, непрерывное обучение и частую передачу изменённых параметров в сервис.
Публикация · на английском
Monolith: Real Time Recommendation System With Collisionless Embedding TableZhuoran Liu и соавторы · Опубликовано: 16 сентября 2022 г.
Хеширование экономит память ценой смешения объектов
Если разные ID получают один вектор, их сигналы мешают друг другу. Monolith хранит отдельные представления через динамическую хеш-таблицу. Редкие значения фильтруют, давно неактивные удаляют, чтобы ограничить память.
В экспериментах авторы сравнивают такой подход с коллизиями и находят преимущество по AUC. Это не означает, что любое хеширование вредно: речь о разделении обучаемого вектора разными сущностями.
Этот фрагмент в оригиналеИстория и новые события образуют один процесс
Начальная модель обучается на накопленных данных, затем продолжает получать поток. Признаки и действия соединяются по ключам запроса; запаздывающая обратная связь требует отдельной обработки.
Отрицательные примеры можно прореживать ради нагрузки, но такое изменение распределения нужно учитывать при интерпретации вероятностей. Скорость поступления данных важна вместе с корректностью их соединения.
Этот фрагмент в оригиналеПередают изменённые векторы, а не всю модель
Система отмечает ключи разреженных параметров, затронутые обучением, и часто отправляет только их. Плотную часть можно обновлять реже: авторы считают её изменение менее чувствительным к этой задержке.
Так уменьшаются сетевые передачи и всплески памяти. Более частая синхронизация в описанных проверках улучшала качество на свежем потоке.
Этот фрагмент в оригиналеСвежесть и восстановление имеют цену
Полный снимок большой модели дорог. В описанной конфигурации обучающие parameter servers сохраняют раз в сутки, принимая риск потери последних обновлений при сбое. Этот компромисс проверяли экспериментально.
Тесты на Criteo, MovieLens и внутреннем трафике решают разные вопросы; их результаты нельзя объединять в один процент роста бизнеса. Статья подтверждает применение в BytePlus Recommend, но не даёт основания называть её точной архитектурой текущего TikTok.
Этот фрагмент в оригинале