Upgrade to Pro — share decks privately, control downloads, hide ads and more …

“Вы продоете "теплых кросовок"? Или как работает поиск в Lamoda”

Yuliya
December 06, 2021

“Вы продоете "теплых кросовок"? Или как работает поиск в Lamoda”

Yuliya

December 06, 2021
Tweet

More Decks by Yuliya

Other Decks in Technology

Transcript

  1. Александр Желубенков DS Lead, Ranking & Navigation Вы “продоёте теплых

    кросовок”? или как работает поиск в Lamoda
  2. Поиск в Lamoda Популярный инструмент > 100.000 уникальных запросов в

    день Важный продукт 20% - доля выручки из поиска В большом числе кейсов это единственный эффективный способ найти релевантные товары: d если есть конкретная потребность “кеды air force черные” d если трудно ориентироваться в каталоге “шапки” лежат в категории “Аксессуары”
  3. Особенности поиска в fashion- сегменте Простой язык запросов Есть и

    сложные запросы из низкочастотного хвостаa H “босоножки женские без каблука с открытым носомB H “красовка калсниеB H “подушки колбасой” Структура потока: “бренд“ “категория + гендер” … “категория + гендер + цвет” 25% 22% 1%
  4. Особенности поиска в fashion- сегменте Узкая предметная область Какому запросу

    релевантны все эти товары? Американка водолазка без рукавов мужская куртка бомбер американская пройма
  5. Особенности поиска в fashion- сегменте Структура в описании документов Короткие

    и частично структурированные описания товаров Контролируем контент - можем управлять атрибутами товаров!
  6. Особенности Пользователи привыкли, что поиск должен найти релевантные результаты, даже

    если ввести запрос в неправильной раскладке или с ошибками “штаны” нужна синонимия “красовки”, “yfqr”(найк) опечатки, транслиты, раскладка “футболки и поло” учет сложных паттернов “условия доставки” сервисные запросы
  7. К какому решению мы пришли Два модуля, в которых сосредоточена

    основная логика поиска отвечает за понимание и разбор запроса отвечает за логику индексации товара
  8. К какому решению мы пришли Общая логика поиска глазами data

    scientist-а ТОВАР
 и его описание КУПИТЬ ТЕПЛЫХ КРОСОВОК
  9. К какому решению мы пришли Общая логика поиска глазами data

    scientist-а КУПИТЬ ТЕПЛЫХ КРОСОВОК ТОВАР
 и его описание
  10. Зачем нам
 Search Query Analyzer Хотим понимать и разбирать запросы

    пользователей, чтобы: Лучше искать (синонимия, опечатки, транслиты, сервисные запросы, ...) На качественном уровне анализировать структуру потока запросов Гибко управлять тем, в каких атрибутах следует вести поиск
  11. Tokenizer & Spell Corrector Named Entities Extractor Entities Tree Builder

    Attributes Tree Builder Этапы логики Search Query Analyzer
  12. Этап 1 Токенизация Раскладка, опечатки Нормализация “rhjccjdrb” → “кроссовки” “кроссовкиnike”

    → “кроссовки nike” “кросовок” → “кроссовок” “кроссовок” → “кроссовки” “теплых” → “теплый” Как работает: словарь частотных опечаток + ML Как работает: pymorphy2
  13. Выделение сущностей Переход от слов к именованным сущностям Зачем? Чтобы

    далее на уровне сущностей: Этап 2 … настраивать синонимиy … управлять, в каких атрибутах нужно искать разные сущности Как работает: внутренняя онтология (база знаний) + поиск по ней с учетом транслитов
  14. Синонимия и дерево сущностей Расширение запроса: Этап 3 худи =

    толстовки (двусторонние синонимы) мех → утепленный (односторонние синонимы) Как работает: внутренняя онтология (база знаний)
  15. Дерево атрибутов В каких атрибутах следует искать сущности: Этап 4

    category – {name: 1.0} material – {materials: 1.0} is_warmed – {attributes: 1.0, description: 0.3} Как работает: отдельный ручной маппинг
  16. В каких атрибутах следует искать сущности: category – {name: 1.0}

    material – {materials: 1.0} is_warmed – {attributes: 1.0, description: 0.3} Как работает: отдельный ручной маппинг Дерево атрибутов Этап 4
  17. Индексация и поиск товаров Как обогащаются атрибуты товаров и по

    какой логике формируется запрос к Elasticsearch Часть 2
  18. Зачем нам
 Search Enricher Хотим гибко управлять атрибутами товара: Обогащать

    товар новыми атрибутами Часть логики перенести на сторону формирования индекса: – сложные правила, которые тяжело учесть в Search Query Analyzer – нормализация текстовых атрибутов
  19. Два типа атрибутов и логика Search Enricher Keyword-атрибуты – для

    поиска по точному совпадению Пример - формирование атрибута is_warmed: Text-атрибуты – для полнотекстового поиска По текстовым полям будем искать нормализованными словами IF material_filler is not empty AND ["нет утеплителя", "без утеплителя"] not in material_filler THEN {"key": "is_warmed", "value": "утепленный"} «Футболка выполн из тонк трикотаж » → «футболка выполнить из тонкий трикотаж» ена ого а
  20. Формирование запроса к Elasticsearch ВСЕ значимые слова запроса должны быть

    найдены в атрибутах товара (напрямую или через синонимию)
  21. Формирование запроса к Elasticsearch ВСЕ значимые слова запроса должны быть

    найдены в атрибутах товара (напрямую или через синонимию)
  22. Формирование запроса к Elasticsearch ВСЕ значимые слова запроса должны быть

    найдены в атрибутах товара (напрямую или через синонимию) Rel = 1.0 Rel = 0.3
  23. Какие кроссовки показывать выше в каталоге? “КУПИТЬ ТЕПЛЫХ КРОСОВОК” Search

    Logic Правильного ответа нет! Правильного ответа нет!
  24. Ранжирование каталога строится на основании прогноза ML-модели, в которой используются:

    исторические продажи и конверсии товаров доступность размерной сетки цены, скидки и другие атрибуты товара релевантность товара запросу (при наличии поискового запроса)
  25. Развитие поисковой системы важно для Lamoda Поиск – важный инструмент

    и в большом числе кейсов это наиболее эффективный способ найти релевантные товары Успешные A/B-эксперименты подтверждают, что мы не только помогаем пользователям находить товары их мечты, но и позитивно влияем на показатели бизнеса. КУПИТЬ ТЕПЛЫХ КРОСОВОК
  26. Не у всех товаров хорошо заполнены атрибуты. Обогатим атрибуты, используя

    Computer Vision, и улучшим качество поиска. Выделение атрибутов по фото
  27. Резюмируем Поиск в Lamoda – продукт, которым пользуются сотни тысяч

    пользователей ежедневно Особенности fashion-сегмента: простой язык запросов, короткие описания товаров и узкая предметная область
  28. Резюмируем Поиск в Lamoda – продукт, которым пользуются сотни тысяч

    пользователей ежедневно Особенности fashion-сегмента: простой язык запросов, короткие описания товаров и узкая предметная область Основная логика поиска сосредоточена в двух модулях: Š Search Query Analyzer - отвечает за разбор и трансформацию запроса пользователя в фильтрующий запрос к Elasticsearcr Š Search Enricher - отвечает за логику индексации товара
  29. Резюмируем Поиск в Lamoda – продукт, которым пользуются сотни тысяч

    пользователей ежедневно Особенности fashion-сегмента: простой язык запросов, короткие описания товаров и узкая предметная область Основная логика поиска сосредоточена в двух модулях: Š Search Query Analyzer - отвечает за разбор и трансформацию запроса пользователя в фильтрующий запрос к Elasticsearcr Š Search Enricher - отвечает за логику индексации товара Развитие поисковой системы важно для Lamoda, ведь помогая пользователям находить товары их мечты, мы позитивно влияем на показатели бизнеса