Алгоритм поиска на Ozon

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

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

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

Какие задачи решает поиск на Ozon #

  • Мотивировать продавцов делать качественные предложения.
  • Помочь продавцам показать их товар покупателям.
  • Помочь покупателю найти и выбрать нужный ему товар.
  • Учесть выбор покупателей при распределении трафика между предложениями продавцов.

Принципы работы поиска на Ozon #

  • Неизбежность. Поисковая выдача всегда реагирует на действия продавцов или покупателей.
  • Отсутствие дискриминации. Поисковая выдача одинаково реагирует на одни и те же действия разных продавцов в похожих ситуациях.
  • Скорость. Ozon работает над тем, чтобы сделать реакцию поисковой выдачи на действия продавца и покупателя максимально быстрой.
  • Прозрачность. Все детали работы поиска на Ozon — открытая информация, Ozon не влияет на ранжирование товаров в выдаче и не скрывает принципы его работы.

Общая схема работы поиска на Ozon #

Покупатель делает поисковой запрос на сайте Ozon. За этим следуют несколько этапов работы поисковой выдачи.

  1. Формирование запроса и отбор кандидатов.

    Каждый день покупатели задают поисковой системе Ozon миллионы запросов. Чтобы каждый нашёл среди миллионов товаров нужный, на первом этапе поиск формирует большой список товаров-кандидатов, в названии и различных атрибутах которых есть слова из поискового запроса. Для каждого запроса в этом списке может оказаться до 500 000 товаров.

  2. Базовый слой ранжирования.

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

  3. Средний слой ранжирования.

    Для полученных 2 000 товаров необходимо оценить, с какой вероятностью покупатели приобретут именно их. Ранжирование этих товаров зависит от того, какие свойства оказались наиболее важными для покупателей в прошлом. Чтобы выяснить это, Ozon сопоставляет свойства товаров и покупательское поведение. В результате формируется оценка каждого товара по шкале от 0 до 1.

  4. Бустинги.

    К 2 000 товаров, которые после предыдущего шага ранжированы по оценке от 0 до 1, применяются заранее определённые повышающие коэффициенты. Например, к товарам с платным продвижением в поиске.

  5. Отображение товаров.

    2 000 товаров с финальными оценками отдаются на поисковую выдачу. Покупатель видит страницы с товарами в заданном порядке. Когда покупатель просмотрит 2 000 товаров, система подгрузит следующие 2 000 товаров.

Рассмотрим этапы работы поиска более подробно.

1-й этап: формирование запроса и отбор кандидатов #

Поиск слов по атрибутам товаров #

Когда приходит поисковой запрос, система начинает искать слова из этого запроса во всех полях и атрибутах товаров, которые хранятся в поиске:

  • название товара,
  • категория товара,
  • бренд,
  • описание,
  • цвет, размер, материал, тип и другие атрибуты.

Мы проверяем несколько сотен атрибутов, их состав зависит от категории. Чем больше у товара заполненных атрибутов, тем проще его найти.

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

Преобразование и нормализация запроса #

Перед выбором кандидатов поисковая система производит цепочку преобразований запроса, чтобы не упустить подходящих кандидатов. Последовательность преобразований:

  1. Обогащение синонимами. Необходимо для того, чтобы запрос охватил больше товаров — например, чтобы по запросу «телефон» искались смартфоны.
  2. Нормализация запроса. Все слова запроса приводятся к единой форме, чтобы, например, запросы «изумрудный корабль строителя Джонсона» и «изумрудные корабли строителя Джонсона» давали одну и ту же выдачу. На этом же этапе система исключает слова, не несущие смысловой нагрузки, например союзы.
  3. Выбор кандидатов. Для всех оставшихся слов из поискового индекса извлекаются все товары, содержащие все слова запроса. Если таких товаров оказалось слишком мало, также извлекаются все товары, содержащие хотя бы одно слово запроса.

На этом этапе поисковая выдача содержит до 500 000 товаров-кандидатов, список которых передаётся на второй этап.

2-й этап: базовый слой ранжирования #

Сортировка кандидатов по релевантности #

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

  • Факт текстового соответствия товара запросу: сначала по обычной линейной формуле определяется количество попаданий слов из поискового запроса в поля и атрибуты товара по каждому отдельному слову в запросе. Затем суммируется количество попаданий по всем словам из запроса.
  • Рейтинг товара, который складывается из оценок и отзывов пользователей. Рейтинг используется на этом этапе как повышающий коэффициент. Чем выше рейтинг товара, тем больше этот коэффициент. Он колеблется от 0% при минимальном рейтинге до 25% при максимальном.

В итоге все товары-кандидаты получают оценку базовой релевантности как совокупности текстового соответствия и рейтинга товара.

На этом этапе поисковая система сортирует кандидатов и отдаёт список из 2 000 наиболее релевантных на третий этап. При необходимости окно может быть расширено, и система подгрузит дополнительные 2 000 товаров.

3-й этап: средний слой ранжирования #

Как работает ранжирование #

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

Предсказание производится в несколько этапов:

  1. Вычисляются все факторы каждого отдельного товара, которые могут повлиять на факт продажи. Каждый фактор — это вещественное число. Например, фактором может быть рейтинг товара или его цена.
  2. К набору факторов применяется модель машинного обучения, предсказывающая вероятность продажи на основе значения факторов. В качестве модели Ozon использует градиентный бустинг деревьев решений.
  3. Модель выдаёт число, которое используется для оценки вероятности покупки товара.
  4. Оценка вероятности покупки товара вписывается в контекст запроса. Один и тот же товар будет иметь разную вероятность покупки для разных запросов.

Как работает модель машинного обучения #

Цель работы модели — наиболее точно предсказать вероятность продажи товара на основании факторов этого товара. Факторы товара содержат информацию о том, какими свойствами обладали товары, приобретённые покупателями в прошлом, и какие из этих свойств ранжируемый товар имеет сейчас.

Модель на основании этих данных из прошлого предсказывает покупательское поведение в будущем. Например, есть фактор средней конверсии товара из показа в покупку за последние 60 дней. Для многих товаров можно утверждать, что конверсия товара не меняется во времени. Соответственно, модель использует этот фактор для предсказания вероятности покупки, и можно утверждать, что чем выше конверсия за последние 60 дней, тем выше будет предсказание модели.

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

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

Что учитывается при ранжировании #

На этом этапе учитываются все факторы товара, влияющие на его продажу. Это характеристики товара, рейтинг и покупательское поведение — оформление заказа, просмотр товара или добавление в корзину. В общей сложности поисковая система Ozon учитывает около 100 различных факторов.

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

Основные смысловые блоки учитываемых факторов:

  • Текстовая релевантность — свойства, характеризующие текстовое соответствие товара запросу. В модели поиска вес текстовой релевантности — 20–40%.
  • Продажи товара — объединяет свойства, вычисляемые из продаж товара в прошлом: конверсия товаров в покупку и количество покупок этого товара за последние 60 дней. Вес — 15–25%.
  • Популярность по запросу — объединяет в себе свойства, которые характеризуют взаимодействия покупателя с товаром: показы товара, добавления в корзину и в избранное. Показом товара считается переход покупателей на карточку товара и факт просмотра товаров в поисковой выдаче. Вес — 10–15%.
  • Персонализация — привязка результатов поисковой выдачи к каждому отдельному покупателю. Вес — 10–15%.
  • Цена — например, размер текущей скидки. Вес — 5–15%.
  • Доставка — свойства, характеризующие скорость доставки товара: сама скорость доставки и то, относится ли этот товар к категории экспресс-товаров. Вес — 5–15%.
  • Отзывы — свойства, вычисляемые из рейтинга товара: сам рейтинг товара и количество отзывов на товар. Вес — 5–10%.

Предсказательная сила факторов постоянно меняется из-за обновлений формулы и добавления новых факторов.

На этом этапе поисковая система оценивает каждый товар из 2 000 кандидатов по шкале от 0 до 1. Чем ближе эта оценка к единице, тем более высокую позицию в выдаче займёт товар и тем выше вероятность его продажи. Все оценки передаются на четвёртый этап.

Персонализация в ранжировании #

Основная задача персонализации — адаптировать поисковую выдачу под индивидуальные потребности пользователя, его вкусы и ценовые предпочтения. При ранжировании учитывается взаимодействие пользователя с конкретными товарами или брендами на Ozon: просмотр страницы, добавление в избранное или заказ.

4-й этап: бустинги #

На этом этапе к товарам-кандидатам, ранжированным по оценке от 0 до 1, применяются заранее определённые повышающие коэффициенты. Например, к товарам с платным продвижением в поиске.

Как работает бустинг #

Для примера рассмотрим запрос «носки красные». Допустим, после прохождения трёх этапов поиска, включая ранжирование, товар с названием «носки красные» получает оценку 0,7. Если это товар от премиум продавца, к нему будет применён бустинг — например, × 1,3. В этом случае итоговая оценка товара составит 0,91 вместо 0,7.

Коэффициенты бустинга часто меняются, так как Ozon ищет новые коэффициенты, которые увеличивают общее количество продаж на площадке.

Все бустинги, если они не носят взаимоисключающий характер, суммируются. Для примера рассмотрим товар на Ozon, который одновременно является товаром с платным продвижением в поиске, товаром с гарантированной доставкой на следующий день и товаром с хорошей ценой. Предположим, что для каждого из этих бустингов коэффициент бустинга составляет 10%. Тогда товар с оценкой релевантности на базе ранжирования 0,7 будет иметь итоговую оценку релевантности 0,7 × 1,1 × 1,1 × 1,1 = 0,9317.

Виды бустингов #

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

Подробнее как эти две механики работают, описали в разделе выше Как работает бустинг.

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

  • Платное поднятие — покупка коэффициента бустинга за деньги. Подробнее в личном кабинете на вкладке Продвижение → Продвижение в поиске.
  • Бустинги логистики поднимают позицицию товара на 25%. К одному товару может быть применён только один бустинг:
    • realFBS Express,
    • Ozon fresh,
    • с домашнего склада — со склада Ozon, который находится в регионе покупателя и работает по схеме FBO.
  • Бустинги скорости доставки зависят от того, как быстро покупатель получит заказ:
    • доставка 1-2 дня — позиция товара повышается;
    • доставка больше 3 дней — позиция товара снижается.
  • Глобальные акции Ozon — например: марафон скидок, «11.11» и «Чёрная пятница». Коэффициент зависит от конкретной акции.
  • Бустинг товаров с выгодным и умеренным индексом цен. Коэффициент зависит от индекса цены и наличия подписки:
    • умеренный индекс — 5%,
    • выгодный — 7,5%,
    • выгодный с подпиской Premium — 10%,
    • выгодный с подпиской Premium Plus — 12,5%.

Результирующая оценка и влияние бустинга #

Бустинга может не хватить, чтобы перебить силу голосования покупателей.

Для примера рассмотрим два товара, у одного из которых оценка после третьего этапа составляет 0,9, а у второго — 0,6. В этом случае первый товар должен располагаться на первой позиции в выдаче, а второй — на второй. Если при этом для второго товара будет применён бустинг × 1,25, его результирующая оценка составит 0,6 × 1,25 = 0,75. Так как изначальная оценка второго товара была достаточно низкой, бустинг не поможет ему подняться выше первого товара в поисковой выдаче.

Важно понимать, что конечная оценка 0,9 при одном запросе может вывести товар на первую позицию, а при другом — на десятую. Это будет зависеть от того, какие оценки получили другие товары, попавшие в выдачу.

5-й этап: отображение товаров #

Как работает отображение товаров #

  1. Поисковая система получает 2 000 товаров с финальными оценками.
  2. На основании этих оценок товары выдаются покупателю: товары с самой большой оценкой оказываются в верхней части списка выдачи, с самой малой — в нижней.
    • В десктопной и мобильной версии сайта Ozon товары отображаются на страницах выдачи по 36 «плиток».
    • В мобильном приложении на первом экране отображаются первые 36 товаров, а следующие подгружаются при дальнейшей прокрутке.
  3. Для товаров в выдаче подгружаются актуальные характеристики и картинки.

Место товара в поиске влияет на его коммерческие показатели: конверсии, трафик, продажи.

Контакты #

Вопросы по работе алгоритмов ООО «Интернет Решения» и предложения по их улучшению присылайте на почту algorithms@ozon.ru.