Telegram Web
🔼 Этапы развития персонализации

За период с начала года по конец первого квартала основная бизнесовая метрика команды персональных рекомендаций, доля GMV главной, выросла примерно вполовину - связано это как с улучшением текущих и интеграцией новых кандидатных моделей вкупе с развитием реранкера, так и с прогрессом в логике реактивности.

Во втором квартале мы продолжили идти “в глубину” - тестировали множество гипотез, связанных с нашими основными моделями для выдач на главной, но что гораздо более важно, шагнули и “в ширину” - начали персонализировать другие источники маркетпелйса на базе своих эмбеддингов.

🟢 В рамках этого эволюционного шага был проведен ряд зеленых АБ тестов, с последующей выкаткой на прод, в следующих источниках:

🔎 Поиск - первый источник, и по очередности внедрения, и по важности - из-за своего размера и количества паттернов пользователей, которые он покрывает. На первом скрине - пример моей выдачи по запросу “футболка в полоску” (моделька закодировала в эмбед знание о том, что я мужчина и забустила вверх мужские товары), второй скрин - если ввести тот же запрос с анрега (выдача без доранжирования). Ссылка для самостоятельного тестирования

🗂 В каталоге векторное доранжирование также показало хороший результат и было выкачено на прод

💸 А вот в баннерной рекламе улучшить основные бизнесовые метрики и сделать шаг в сторону персонализации помогло внедрение обычного соцдема - логика над предсказанными полом и возрастом бывают так же полезны, как и склонностные модели

Движение в ширину - один из двух драйверов дальнейшего роста метрик и развития команды, которые мы для себя наметили, про второй - расскажу в следующих постах.

Не останавливаемся на достигнутом, продолжаем работу. Быть добру! 🫡
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
📸 Object detection в поиске по фото

Нас уже больше тысячи, а постов про CV еще не было. Исправляем это упущение!

В своем выступлении на I`ML, лид стрима мультимодальных эмбеддингов команды персонализации, Степа Евстифеев, рассказал про архитектуру модели, которая внутри компании известна как “кропы”.

Про то, как сетка для детекции элементов одежды доехала до прода - читайте в презентации!

Подробнее про саму задачу поиска по фото расскажем в следующих постах в рамках CV трека.

@wildrecsys 🤩
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from WB Space
#wb_в_деле
Интересуешься Машинным обучением и Data Science? Хочешь узнать, как современные технологии применяются в работе маркеплейса? Тогда welcome на первый ML Meetup Wildberries 🎤

На митапе спикеры расскажут про ML-решения в продуктах и процессах компании, а также поделятся интересными решениями в Рекомендациях и Поиске.

🔜 11 сентября, 18:00
📍 офис Wildberries в Москве, метро Белорусская

Регистрация уже открыта. Поторопись, количество мест ограничено⚪️

Подписывайтесь, чтобы не пропустить новые подробности о митапе:
🌟 @wb_space
Please open Telegram to view this post
VIEW IN TELEGRAM
📌 AiConf 2024

Привет! Рад сообщить, что мне выпала честь представлять Wildberries в целом и команду персонализации в частности на конференции AiConf 2024, которая будет проходить 26 - 27 сентября.

Расскажу про то, как шаг за шагом нативный BERT4Rec превратился в WildBERT — инструмент, который играет одну из самых важных ролей в персонализации Wildberries. На главной, в карточке товара, поиске и каталоге.

Про что поговорим:

- Large vocabulary bottleneck, negative sampling и logQ correction;
- выкатка в прод и бизнесовые требования, дихотомия офлайн и онлайн метрик;
- подход к маскированию при обучении, next basket prediction;
- формирование цепочки взаимодействий юзера — якорные товары, комбинированный фидбэк и учет OOV;
- ALBERT или DEBERTA;
- SparseAdam и ускорение обучения;
- квоты как инструмент оптимизации diversity;
- интеграция в единую инфраструктуру WBX, что позволило унифицировать процесс векторного доранжирования выдач на главной, в поиске и каталоге;
- и многое другое!

😱 Все доклады можно посмотреть тут, а при оформлении билета использовать промокод от членов программного комитета datascience, который позволит получить скидку в 15%
Please open Telegram to view this post
VIEW IN TELEGRAM
🛒 WB RecSys на AiConf

Вчера, во второй, завершающий день конференции, выступили сразу с двумя докладами:

WildBERT — развитие трансформерных архитектур для персонализации Wildberries
Мультимодальные рекомендации в Wildberries

🔥 Было круто! Презентации можно найти по ссылкам, дополнительно закину в комментарии к посту. Записи появятся в течение трех недель.

😇 Остаемся на связи, в ближайшее время частота выхода технических постов в канале вернется к прежнему уровню.😌

P.S. Большое спасибо всем, кто принимал участие в подготовке докладов и тем, кто всячески поддерживал! 😍

P.P.S. Слева направо - Саша Самойлов, Макс Пасашков, Женя Иванов, Степа Евстифеев
Please open Telegram to view this post
VIEW IN TELEGRAM
Лучше поздно, чем никогда

Читая статью на Хабре наткнулся на комментарий (первый скрин под этим постом) от 2021 года, в котором подсвечивается одна из проблем реактивного домешивания на главной.

Исходная задумка простая - давайте заранее построим i2i матчинг похожих товаров (второй скрин). Далее, юзер в рамках сессии кликает на товары, а мы в онлайне домешиваем на главную похожие карточки.

Работает хорошо, но есть corner case - если я выбираю определенный товар (ту же лопату), то я прокликаю их много - а значит вся главная будет забита лопатами.

В прошлом квартале, в рамках решения проблемы, выкатили 2 большие фичи. Первая - это экспоненциальное затухание реактивных взаимодействий, чтобы через некоторое время главная “откатывалась” к исходному состоянию.

Вторая - применение MMR в мерджере (таким гордым именем у нас зовется блендер оффлайн и реактивных источников 😤), в момент формирования выдачи.

Подробнее про эксперименты с MMR и DPP расскажет Никита Ваганов, DS в команде HML, в рамках обзорной статьи.

Всем хороших выходных! 🙂
Please open Telegram to view this post
VIEW IN TELEGRAM
🔍 Поиск по фото

Не успела на разных ресурсах отгреметь новость (VC, Habr, Рифмы и Панчи и многие другие) о выкатке нового большого релиза поиска по фото, а лид одноименной команды, Никита Романов, уже написал большую статью про то, как все устроено под капотом!

Про архитектуру, детекцию объектов и валидацию - читайте в первой части разбора!
Please open Telegram to view this post
VIEW IN TELEGRAM
Мой ТОП-10 проверенных и популярных моделей RecSys.

Для меня модели рекомендаций начинаются с тех, которые можно построить на данных формата (user_id, item_id, timestamp). Если у вас есть такие наборы данных, то с помощью следующих моделей можно составить список персональных рекомендаций для каждого пользователя внутри датасета. Этот список я составил по субъективной популярности и уверенности в том, что модели проверены временем:

1. iALS (2008, 4к+ цитирований) - масштабируемая на большие объемы данных матричная факторизация. Крупные компании в РФ часто упоминают ее как кандидатогенератор, рассказывают про различные трюки с оптимизациями. Скорее всего, про ALS на собеседованиях хотят слышать в первую очередь.
2. EASE (2019, 250+ цитат) - моя любимая модель. Один гиперпараметр, решение в явном виде. Моделька - матрица весов item*item. Топ-1 модель по мнению авторов из Сбера. Мы взяли первое место на Hack the cart, используя только эту модель. Ее минус - большие каталоги айтемов, но на них можно использовать ELSA или SANSA.
3. SLIM (2011, 900+ цитат) - аналог EASE. Матрица весов разреженная, зависимость от гиперпарметров более сильная, их больше. По качеству SLIM похуже EASE. С ней возиться сложнее. Однако, в силу разреженности матрицы весов есть и плюс. Помню, SLIM весил 100 Кб, а EASE около 600 МБ на одинаковых размерах.
4. MultiVAE (2018, 1350+ цитат) - модель от Netflix. Та самая, которая в обзоре are we really... выиграла SLIM и стала единственной нейронкой, которая это сделала. На вход модели идет только вектор интеракций, поэтому ее можно обучить на 1000 юзерах, а инференсить на 100к юзерах без дообучения - это прекрасно!
5. ItemKNN (2001, 13к+ цитат). Про этот алгоритм обычно не говорят на собеседованиях, так как "что-то на старом", а зря. У recsys есть open benchmark BARS, и на датасете Amazon Books ItemKNN занимает второе место среди многих моделей. И ни GCN, ни LightGCN, ни даже UltraGCN его не побеждают.
6. GRU4Rec (2015, 3400+ цитат). В 2019 году я занял 17/264 место в Rekko Challenge от Okko. Тогда я в первый раз обучил нейронку для рекомендаций, и это была GRU4Rec. Ожидния не оправдались, но для старта нормально. Кстати, недавно автор разобрал популярные ошибки в ее имплементации.
7. SASRec (2018, 2400+ цитат). Это трансформер для next-item recommendation. Основа основ для использования трансформеров в мире рекомендаций. Имеет множество расширений (TiSASRec).
8. BERT4Rec (2019, 1900+ цитат). Чуть лучше SASRec, например, по статье Саши Петрова. По опыту, часто нет смысла использовать SASRec и BERT4Rec вместе, лучше выбрать что-то одно.
9. LightGCN (2020, 3300+ цитат) - графовая сверточная сеть. В графе есть только юзеры и айтемы, модель оценивает связи user-item с точки зрения графа и делает рекомендации. На мой взгляд, крайне громоздкая, медленно обучаемая и негибкая модель, куда лучше ее улучшение в виде GFCF.
10. TIFU KNN (2020, 120+ цитат). Если в ваших данных есть повторные действия между юзерами и айтемами (например, покупки в супермаркетах), то, скорее всего, все модели выше проиграют по качеству TIFU KNN. Эта модель играет вокруг персональной частоты покупок пользователя. Если человек купил 100 раз молоко, именно TIFU KNN без проблем порекомендует его 101 раз и не ошибется. Остальные модели могут повторить персональные частоты, но все равно по качеству уступят TIFU KNN.

Мне кажется, если вы хотите ввести модель полноценно в свой инструментарий, надо сделать следующее:

Прочитать оригинальную статью.
Посмотреть ее имплементацию: какие идут данные на вход на трейне и инференсе, как данные идут внутри, что на выходе.
Запустить модель на любом датасете, посмотреть за метриками, возможно, на рекомендации.
Изучить гиперпараметры, посмотреть, как они влияют на модель.
Повторить то же для расширений модели. Например, EASE -> ELSA, Lightgcn - GFCF и т.д..
В идеале, применить на проде в АБ или в рамках соревнования.

Выучив все эти модели и пройдя чек-листы, уже можно уверенно ориентироваться в основных моделях, но на этом recsys не заканчивается, а только начинается)
🖱 Отбор качественных кликов

В одной из давних статей я рассказывал о комбинации фидбека в u2i моделях. В тот раз мы обогатили цепочки взаимодействий для инференса берта, который обучался только на заказах, добавлениями в корзину - и получили значимый прирост по метрикам.

Из той череды тестов, да и в целом, эмпирически, напрашивался вывод - чем более близкий фидбек к последним действиям пользователя на платформе мы используем - тем лучше.

Одно из таких “близких” действий - это клики. Но с ними есть нюанс - их слишком много, миллиарды ежедневно, и просто дописать их в цепочки взаимодействий, как добавления в корзину, не получится.

Значит, задача звучит так - “как отобрать из всех кликов только те, что несут максимальный сигнал для моделей?”

В задаче рекомендаций основной сигнал будут нести те карточки товара, к которым юзер проявил интерес, этот самый интерес можно разложить на 2 составляющие:

1⃣ Временные эвристики - сколько раз пользователь открывал конкретную КТ, сколько времени провел на ней и т.п.

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

2⃣ Продуктовые события

Когда пользователь уже находиться в КТ - есть много вариантов для развития событий. Добавить товар в отложенное, провалиться в отзывы, посмотреть изменение цены, найти похожие по фото и т.д.

Такие события также говорят об интересе пользователя к товару и учитываются в правилах отбора кликов.

Если собрать 2 направления интереса в единое целое, то правило отбора кликов может звучать так - “давайте брать только те клики, где пользователь взаимодействовал с карточкой минимум 3 раза за неделю, в среднем больше 45 секунд и смотрел отзывы”

Вариаций на самом деле много, мы использовали ту, которая позволила нам сократить до 10% количество кликов, которыми мы обогащаем цепочки, и получить статзначимый рост денежных и продуктовых метрик в АБ тестах различных моделей.
Please open Telegram to view this post
VIEW IN TELEGRAM
🛍 Управление разнообразием рекомендаций

Ксюша Малкова, DS команды персонализации, написала статью про методы управления разнообразием на этапе подготовки данных и на пост-процессинге

Якорные товары, квоты, инференс по категориям и немного про Beyond-Accuracy - все тут!
Please open Telegram to view this post
VIEW IN TELEGRAM
🎤 Декомпозиция юзера на кластерные сущности

На прошлой неделе прошла конференция Data Fusion, где в кейс-сессии рекомендательных систем мы рассказали как не разориться на инфраструктуре при постоянном росте количества пользователей

Запись сессии

Презентация

Описание

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

Расскажу о том, как мы без просадки в качестве существенно сократили затраты на инфраструктуру за счет кластеризации пользователей и товаров.

💬 Основные тезисы:

- кластеризация пользователей (эмбеддинги WildBERT), создание агрегированной выдачи для кластера

- кластеризация товаров (e5) - выделение интересов, отображение пользователя в пространство интересов

- сравнение АБ-тестов для схем "храним подборку для каждого пользователя" и "храним только кластера, юзера описываем как набор кластеров и интересов" в разрезе ранжирующих метрик и затрат на инфраструктуру

- как в такой схеме не просадить качество - доранжирование по эмбедингам в онлайне в момент формирования выдачи

Скоро расскажем как выступили на Стачке в Ульяновске, которая также прошла на прошлой неделе
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
WildRecSys
🎤 Декомпозиция юзера на кластерные сущности На прошлой неделе прошла конференция Data Fusion, где в кейс-сессии рекомендательных систем мы рассказали как не разориться на инфраструктуре при постоянном росте количества пользователей Запись сессии Презентация…
🪆 Сжатие без потерь: как мы уменьшили эмбеддинги для онлайн-ранжирования рекламы

18-19 апреля, в городе Ульяновск, прошла конференция Стачка. Там, помимо доклада про декомпозицию юзера, также рассказали про обучение Matryoshka представлений.

Выступал Илья Бадекин - DS команды товарных рекомендаций.

Запись доклада

Презентация

Описание

Можно сделать крутую модель, но от нее будет мало проку, если не обеспечить ее интеграцию в реальные бизнес-процессы. В докладе расскажем, откуда и зачем в команде «Товарных рекомендаций» Wildberries текстовый энкодер, на что он способен и как мы сжимали его эмбеддинги для онлайн-доранжирование рекламных баннеров по запросам пользователей: от классических PCA, автоэнкодеров и полносвязных слоев до одного интересного подхода с очень русским названием.

💬 Основные тезисы:

- Текстовый энкодер в похожих товарах: зачем?

- Что было в проде на тот момент: описание е5-multilang large; обучение, сбор хороших негативов, промпт; метрики

- Как в мл размерность уменьшать принято?

- Матрешка - как сохранить 95% от метрик
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Векторное доранжирование

В сегодняшней статье рассказываем про техническое решение, которое позволяет использовать WildBERT для персонализации произвольной поюзерной выдачи без дополнительного переобучения.

Про подход, модель и инфраструктуру - тут.

С праздником!
Please open Telegram to view this post
VIEW IN TELEGRAM
Negative sampling в рекомендательных системах

Негативное сэмплирование - один из ключевых инструментов обучения моделей на большом каталоге.

В сегодняшнем обзоре расскажем про основные стратегии сэмплирования:

In-Batch Negative Sampling

Random Negative Sampling

Frequency based Random Negative Sampling

Adaptive mixed strategy

Adaptive mixed strategy с линейной комбинацией
Please open Telegram to view this post
VIEW IN TELEGRAM
📊 Продуктовая аналитика в рекомендациях

Исторически, в этом канале мы рассказывали в основном про различные DS/ML-подходы к построению рекомендаций, не акцентируя внимание на самом продукте.

Именно поэтому, для полноты картины, мы запускаем цикл аналитических статей.

В них мы расскажем про особенности в проведении A/B-экспериментов и аналитических исследований, построении и визуализации CJM, разработке метрик, специфичных для рекомендаций, а также о других задачах продуктовой аналитики, помогающих бизнесу принимать решения на основе данных!

Сегодня эстафетная палочка у Лёши Кузнецова - лида аналитики персональных рекомендаций. Он расскажет о своём пути и особенностях работы продуктовым аналитиком.
Please open Telegram to view this post
VIEW IN TELEGRAM
2025/06/27 16:03:37
Back to Top
HTML Embed Code: