Рекомендации — это набор виджетов на сайте и в приложении с подборкой товаров, которые могут заинтересовать пользователя. Рекомендательная система на Ozon отвечает за отбор товаров, релевантных контексту показа виджетов, и порядок отображения этих товаров. Виджеты рекомендаций размещаются на большинстве страниц Ozon и включают в себя:
- виджет персональных рекомендаций на главной странице Ozon,
- виджет персональных рекомендаций на странице избранных товаров,
- виджет похожих товаров на странице товара,
- виджет сопутствующих товаров на странице товара,
- виджет сопутствующих товаров в корзине,
- виджет недавно просмотренных товаров.
Общая схема работы рекомендательной системы на Ozon #
- Подготовка контекста. Собираем информацию о пользователе и товаре, для которого подбираем рекомендации.
- Отбор кандидатов. Рекомендательный сервис выбирает среди товаров Ozon 2000–4000 кандидатов, релевантных контексту показа рекомендаций.
- Оценка моделями машинного обучения. С помощью моделей машинного обучения оцениваем вероятность взаимодействия пользователя с каждым из отобранных товаров. Полученные оценки зависят от того, какие признаки оказались наиболее важными для моделей. В результате каждый товар получает набор оценок от 0 до 1.
- Финальное ранжирование. На основе полученных оценок для каждого товара и информации о товарах-кандидатах формируем финальную выдачу для виджета.
- Отображение товаров. В зависимости от виджета в выдачу рекомендаций попадает определённое количество товаров, отобранных на предыдущем шаге.
1-й этап: подготовка контекста #
Загружаем списки товаров из контекста:
- товары, с которыми взаимодействовал покупатель;
- товар, на странице которого находится виджет.
Для каждого товара из контекста собираем информацию:
- список категорий товара,
- бренд,
- склад товара,
- доступность экспресс-доставки для товара и так далее.
Также узнаём характеристики пользователя, например пол и возраст.
2-й этап: отбор кандидатов #
Рекомендательный сервис в зависимости от виджета выбирает разные источники набора товаров-кандидатов, подходящие к контексту полки. При подборе товаров-кандидатов ориентируемся на популярные товары на площадке и сферу интересов покупателя, а также учитываем товары, которые он просмотрел или добавил в корзину.
3-й этап: оценка моделями машинного обучения #
Как работают прогнозы на основе машинного обучения #
Рекомендательная система оценивает вероятность взаимодействия пользователя с каждым товаром из 2000–4000 отобранных. При этом она учитывает несколько типов взаимодействия:
- покупка товара,
- клик на карточку товара,
- добавление в корзину,
- добавление в избранное.
Предсказание производится в несколько этапов:
- Вычисляются все фичи (свойства, от английского features) каждого отдельного товара, которые могут повлиять на факт продажи. Каждая фича — это вещественное число. Например, фичей может быть рейтинг товара или его цена.
- К набору фичей применяется модель машинного обучения, предсказывающая вероятность совершения действия на основе значений фичей. В качестве модели Ozon использует один из методов машинного обучения — градиентный бустинг деревьев решений.
- Модель выдаёт число, которое используется для оценки вероятности.
Как работает модель машинного обучения #
Цель работы модели — наиболее точно предсказать вероятность взаимодействия на основании фичей этого товара. Фичи товара содержат информацию о том, какими свойствами обладали товары, приобретённые покупателями в прошлом, и какие из этих свойств имеет ранжируемый товар.
Модель на основании данных из прошлого предсказывает покупательское поведение в будущем. Например, есть фича средней конверсии товара из показа в покупку за последние 60 дней. Для многих товаров можно утверждать, что конверсия товара не меняется во времени. Модель использует эту фичу для предсказания вероятности покупки: чем выше конверсия за последние 60 дней, тем выше предсказанная моделью вероятность. Также при прочих равных условиях покупатели предпочитают товары с большим количеством отзывов. Чем больше у товара отзывов, тем выше предсказанная моделью вероятность. При этом разные фичи имеют разную предсказательную силу и по-разному влияют на вероятность покупки.
Модель обучается на данных о зависимости между фичами товаров и итоговыми покупками при помощи специального алгоритма. Многие фичи рассчитываются на основе покупательского поведения: покупатели Ozon влияют на положение товаров в выдаче рекомендаций своими действиями.
Какие факторы учитывает модель машинного обучения #
Учитываются все фичи товара, влияющие на его продажу. Это характеристики товара, рейтинг и покупательское поведение: оформление заказа, просмотр товара или добавление в корзину. В общей сложности рекомендательная система Ozon учитывает около 300 различных фичей.
Рекомендательная система формирует для кандидата набор оценок — товар получает оценку по шкале от 0 до 1 для каждого типа взаимодействия. Чем ближе оценка к единице, тем больше шанс того, что товар займёт высокую позицию в выдаче рекомендаций. Все оценки передаются на 4-й этап.
4-й этап: финальное ранжирование #
Для формирования выдачи каждому товару-кандидату сопоставляется его оценка релевантности. Формула расчёта зависит от виджета рекомендаций, но в общем случае учитывает:
- оценки моделей машинного обучения, полученные на предыдущем этапе;
- рекламную ставку, если на товар заведено рекламное продвижение;
- давность посещения страницы товара;
- другие характеристики товара, например цену и скорость доставки.
Учёт этих факторов балансирует интересы покупателей, продавцов и рекламодателей.
В виджетах рекомендаций ограниченное количество мест: от 3 до 2000 в зависимости от платформы и страницы расположения виджета. Товары сортируются по рассчитанной оценке релевантности, в финальную выдачу попадают самые релевантные товары в определённом количестве.
5-й этап: отображение товаров #
Алгоритм отображения рекомендованных товаров:
- Рекомендательная система получает несколько десятков или сотен товаров с финальными оценками.
- На основании этих оценок товары выдаются покупателю: товары с наибольшей оценкой оказываются в начале выдачи, с наименьшей оценкой — в конце.
- В десктопной и мобильной версии сайта Ozon товары отображаются в виджетах по 6 «плиток» с возможностью горизонтального пролистывания.
- В мобильном приложении в виджетах отображаются первые 3 товара, а следующие подгружаются при горизонтальной или вертикальной прокрутке.
- Для товаров в выдаче подгружаются актуальные характеристики и картинки.
Контакты #
Вопросы по работе алгоритмов ООО «Интернет Решения» и предложения по их улучшению присылайте на почту algorithms@ozon.ru.