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

Альтернативные способы выбора стратегии, вертикали и словари

Артем Круглов
Генеральный директор платформы any
Альтернативные ...
Всем привет! Продолжаем нашу серию статей про поиск AnyQuery.

Давайте подведем промежуточный итог. У нас есть:

1️⃣Набор стратегий, каждая из которых подходит для конкретных кейсов.

2️⃣Ряд метрик, по которым мы оцениваем данные стратегии.

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

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

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

Для этого мы собираем и анализируем так называемые интенты. То есть, размечаем запросы пользователей.

Берем 40+ популярных запросов и смотрим, к какой метрике относится каждый из них. Если до этого большую часть работы за нас делали алгоритмы, то здесь мы работаем вручную.

В результате мы понимаем, по какой метрике нам нужно выбирать стратегию.

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

Альтернативный способ

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

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

Например, мы видим, что по запросу «телефон» пользователи часто смотрели 1 бренд. Алгоритм делает вывод, что по запросу «телефон» в выдачу должны попадать товары одного единственного бренда.

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

В итоге выбор стратегии может быть некорректным.

Или другой пример — атрибутная метрика. Клиент может передать нам фид товарной базы, в котором не у всех товаров прописаны характеристики.

Клиент вводит запрос «встраиваемая стиральная машина», а атрибут «встраиваемая» есть только у посудомоек.

Пользователь по своему запросу, вполне логично, получит стиралки. Но стратегия получит штраф.

Подобные случаи требуют вмешательства специалиста. Одного алгоритма здесь недостаточно.

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

И естественно, на этом настройка поиска не заканчивается. Но об этом в следующем разделе.

Выбор вертикали

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

Вертикаль — это тематика сайта. Вот несколько примеров, для лучшего понимания:

  • алкоголь;
  • товары для творчества;
  • автозапчасти;
  • сувениры;
  • зоотовары.

В каждой из этих тематик есть сайты разного размера и сложности, с разным количеством трафика.

Почему важно правильно выбрать вертикаль?

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

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

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

2-й фактор особенно важен, когда мы работаем с новыми/небольшими сайтами, с ограниченным количеством трафика и данных. В таком случае данные для векторной модели мы берем с сайтов той же вертикали.

Давайте рассмотрим пример, с привычным нам товаром «Смартфон». Он продается на нескольких сайтах вертикали «Техника».

На сайте с большим количеством трафика этот товар искали и находили по запросу «Мобильник». Векторная модель, обучившись на этих данных будет давать корректную выдачу по этому запросу на всех сайтах данной вертикали.

Так мы можем повышать эффективность поиска даже на новых и небольших сайтах, с минимумом данных.

Как мы выбираем вертикаль

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

К тому же, у нас есть список вертикалей с подробными характеристиками. По этим характеристикам мы и определяем, к какой вертикали относится сайт.

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

В каких случаях меняется вертикаль

Допустим у нас есть интернет-магазин косметики. Компания расширяет ассортимент и теперь это маркетплейс.

Соответственно нужно менять вертикаль с «косметики» на более общую. А если мы просто сменим вертикаль, слетят все разработанные для сайта исправления. Они останутся в прошлой вертикали.

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

Раз уж мы заговорили про словари, давайте рассмотрим эту тему подробнее.

Исправления и синонимы

Чтобы обеспечить максимально корректную выдачу на сайте, мы используем словари исправлений и синонимов. У каждой вертикали есть свой словарь. Мы берем слова оттуда и классифицируем их на 3 документа при помощи специального скрипта:

1️⃣Correction — опечатки, неправильная раскладка, недописанные слова и прочее.

2️⃣Synonyms — сюда попадают самые разные пары, начиная с простых (гречка/греча), заканчивая совсем неочевидными. Как-нибудь расскажу об этом отдельным постом.

3️⃣Transliterations — транслитерация брендов из товарной базы конкретного сайта.

Документы «Correction» и «Transliterations» используются для обработки запросов, с которыми не справился выпрямитель. А про то, как мы используем документ «Synonyms», я расскажу в отдельном посте.

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

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

Поэтому сгенерированный файл с исправлениями отправляется на ручную разметку.

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

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

Высоких вам конверсий!

Рассчитать эффективность

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