Рекомендации — это полки с товарами, которые показываем покупателю на основе возраста, пола, локации, истории покупок, просмотров, интересов и действий на Ozon. Рекомендательная система на Ozon отвечает за отбор товаров, релевантных контексту показа полки, и порядок отображения этих товаров. В рекомендациях могут быть:
- аналоги того, что покупатель уже заказывал;
- сопутствующие товары;
- недавно просмотренные товары;
- товары, которые покупатель заказывает регулярно;
- товары, похожие на те, что покупатель просматривает;
- товары из корзины;
- персональные подборки.
Полки рекомендаций размещаются на страницах Ozon. Примеры таких страниц:
- главная,
- карточка товара,
- страница оплаченного товара,
- страница заказов,
- корзина.
Общая схема работы рекомендательной системы на Ozon
- Подготовка контекста. Собираем информацию о пользователе и товаре, для которого подбираем рекомендации.
- Отбор кандидатов. Рекомендательная система выбирает несколько тысяч кандидатов среди товаров на Ozon, релевантных контексту показа рекомендаций.
- Оценка моделями машинного обучения. С помощью моделей машинного обучения оцениваем вероятность взаимодействия пользователя с каждым из отобранных товаров. Полученные оценки зависят от того, какие признаки оказались наиболее важными для моделей. В результате каждый товар получает набор оценок от 0 до 1.
- Формирование выдачи. На основе полученных оценок для каждого товара и информации о товарах-кандидатах формируем финальную выдачу для полки.
- Отображение товаров. В зависимости от полки в выдачу рекомендаций попадает определённое количество товаров, отобранных на предыдущем шаге.
1-й этап: подготовка контекста
Загружаем списки товаров из контекста:
- товары, с которыми взаимодействовал покупатель;
- товар, на странице которого находится полка с рекомендациями.
Для каждого товара из контекста собираем информацию:
- список категорий товара;
- бренд;
- склад товара;
- доступность экспресс-доставки для товара и так далее.
Также узнаём характеристики пользователя, например пол и возраст.
2-й этап: отбор кандидатов
Рекомендательная система в зависимости от полки рекомендаций выбирает разные источники набора товаров-кандидатов, подходящие к контексту полки. При подборе товаров-кандидатов ориентируемся на популярные товары на площадке и сферу интересов покупателя, а также учитываем товары, которые он просмотрел или добавил в корзину.
3-й этап: оценка моделями машинного обучения
Рекомендательная система использует модели машинного обучения, чтобы оценить вероятность взаимодействия пользователя с каждым отобранным товаром.
Модели обучаются на поведении покупателей в прошлом и выстраивают закономерности между факторами. Фактор — это число, характеризующее товар, например скорость его доставки или цена. Разные факторы имеют разную предсказательную силу и по-разному влияют на вероятность покупки. Например, покупатели чаще выбирают товары с большим количеством отзывов, поэтому чем больше отзывов, тем выше оценка.
Рекомендательная система вычисляет для каждого товара факторы, которые могут повлиять на факт продажи. На основе них модели оценивают вероятность взаимодействий:
- покупки товара;
- клика на карточку товара;
- добавления в корзину;
- добавления в избранное.
Каждый товар получает набор оценок от 0 до 1. Чем ближе оценка к единице, тем больше шанс, что товар займёт высокую позицию в выдаче рекомендаций.
4-й этап: формирование выдачи
Каждому товару-кандидату присваивается его оценка релевантности. Формула расчёта зависит от полки рекомендаций, но в общем случае учитывает:
- оценки моделей машинного обучения, полученные на предыдущем этапе;
- ставку, если у товара подключено продвижение;
- давность посещения страницы товара;
- другие характеристики товара, например цену и скорость доставки.
Учёт этих факторов уравновешивает интересы покупателей, продавцов и рекламодателей.
Товары сортируются по рассчитанной оценке релевантности: товары с наибольшей оценкой — в начале выдачи, с наименьшей оценкой — в конце.
Из отсортированного списка исключаются:
- товары повторяющихся категорий — чтобы предложить пользователю более широкий ассортимент;
- товары, которых нет на складе.
В результате формируется финальный список товаров-кандидатов.
5-й этап: отображение товаров
В полках рекомендаций ограниченное количество мест, которое зависит от платформы и страницы расположения. Рекомендательная система:
- Отбирает определённое количество товаров из списка, сформированного на предыдущем этапе.
- Загружает для них актуальные характеристики и картинки.
- Показывает полку рекомендаций пользователю.