Система матчинга автозапчастей
Embeddings → Jaccard → LPA → Feature Store → LightGBM
Автоматическая система поиска аналогов и альтернатив среди 9 млн автозапчастей от >5000+ поставщиков. Система понимает, что «тормозные колодки Brembo для BMW X5» и «колодки передние БМВ Х5 оригинал» — это один товар, даже если названия разные.
Исходная ситуация
Проблемы
- • 5000+ поставщиков с разными форматами номенклатуры
- • Один товар имел 5-10 вариантов названий и артикулов
- • Отсутствие единого стандарта описания характеристик
- • Ручное сопоставление занимало 40 часов в неделю
- • Ошибки в сопоставлении приводили к дублям в каталоге
- • Невозможность быстро добавлять новых поставщиков
Данные
- • 9 млн товаров в общей базе
- • Миллиарды потенциальных пар для сопоставления
- • 5000+ поставщиков с различными форматами данных
- • Различия в написании брендов, OE-номеров, применимости
- • Наличие опечаток, сокращений и синонимов
- • Доля положительных пар ~6.95%
Зачем это бизнесу?
Система автоматически находит аналоги и альтернативы товаров, объединяя их в группы. Это открывает новые возможности для бизнеса.
Умное ценообразование
Система показывает все альтернативы товара с ценами конкурентов. Вы можете установить конкурентную цену, видя весь рынок.
Пример: тормозные колодки для BMW X5 стоят 3500₽ у одного поставщика и 2800₽ у другого — система это видит и предлагает оптимальную цену.
Анализ спроса и продаж
Объединяя продажи всех аналогов, вы видите реальный спрос на товар. Не 5 продаж каждого артикула, а 150 продаж всей группы.
Пример: 10 аналогов масляного фильтра продаются по 15 шт/мес каждый = 150 шт/мес всей группы. Это меняет решение о закупке.
Сравнение ассортимента
Видите, какие группы товаров есть у конкурентов, но нет у вас. Или наоборот — где у вас преимущество в ассортименте.
Пример: конкурент продаёт 15 видов свечей зажигания для популярной модели, у вас только 5 — пора расширять ассортимент.
Точные рекомендации
Когда товара нет в наличии, система предлагает аналог. Конверсия растёт, потому что клиент находит нужную деталь, даже если точного совпадения нет.
Пример: «Колодки Brembo нет на складе, но есть аналог ATE — подходит для вашего BMW». Клиент покупает вместо ухода к конкурентам.
Скорость обработки ассортимента
Раньше команда ассортимента вручную обрабатывала 20 000 товаров в месяц. С системой матчинга весь каталог 9 млн товаров обработан за один раз.
Это означает 450× ускорение работы и возможность держать актуальный каталог без задержек.
Как это работает технически
Система проходит 6 этапов обработки. Среди 9 млн товаров — миллиарды возможных пар для сравнения.
Доля положительных пар ~7% означает, что из 100 сравниваемых пар товаров только 7 действительно являются аналогами. Задача — найти эти 7% среди миллиардов комбинаций.
Этап 1: Понимание смысла товаров
Технология: FastText Embeddings
Что делает система
Превращает текстовые описания товаров в числа, которые отражают смысл. Похожие по смыслу товары получают похожие числа.
Пример: «Колодки тормозные Brembo» и «Brake pads БМВ» система понимает как близкие по смыслу, даже если слова разные.
Зачем это нужно
Вместо сравнения 9 млн товаров со всеми остальными (миллиарды пар), система сразу находит топ-100 наиболее похожих кандидатов для каждого товара.
Результат: 99.44% точность нахождения похожих товаров при сокращении проверок в сотни раз.
Этап 2: Проверка совместимости
Технология: Jaccard Similarity
Система сравнивает два списка для каждой пары товаров: какие автомобили подходят и какие оригинальные артикулы (OE) есть. Чем больше совпадений — тем выше вероятность, что это аналоги.
Пример 1: Совпадение по автомобилям
Товар А: подходит для BMW X5, BMW X6
Товар Б: подходит для BMW X5, Audi Q7
→ Совпадение: BMW X5 (1 из 3 уникальных авто) = 33% сходство
Пример 2: Совпадение по OE-номерам
Товар А: заменяет OE 34116790763, 34116780711
Товар Б: заменяет OE 34116790763
→ Совпадение: 1 OE (1 из 2 уникальных) = 50% сходство
Группировка похожих
Система строит граф связей между товарами и объединяет их в группы по сходству. Если три товара очень похожи друг на друга — они попадают в одну группу.
Технология: Label Propagation (графовая кластеризация)
Подготовка признаков
Для каждой пары товаров собираются все характеристики сходства: семантическое сходство, совпадения по OE и авто, принадлежность к одной группе.
Технология: Feature Store с 15+ признаками на пару
Финальное решение
ML-модель анализирует все признаки и принимает окончательное решение: являются ли два товара аналогами или нет. Точность решения — 95% (F1-score).
Технология: LightGBM (Gradient Boosting)
Финальные группы
Пересборка групп с учётом решений модели. Контроль качества: в одной группе не может быть товаров разных брендов (кроме случаев кросс-брендовых аналогов).
Результат: чистые группы аналогов готовы к использованию
Технологический стек
Python
FastText, Scikit-learn, HNSW, NetworkX
LightGBM
Gradient Boosting для бинарной классификации пар
ClickHouse
Хранение embeddings, пар, feature store, кластеров
FastText
Word embeddings, Common Crawl векторы
HNSW
Hierarchical Navigable Small World для ANN поиска
Label Propagation
Графовая кластеризация альтернатив
Graphistry
Визуализация графов товаров и связей
Apache Airflow
Оркестрация ETL и ML пайплайнов
Результаты проекта
Ключевые достижения после внедрения системы матчинга
Было: 20 000 товаров/месяц вручную → Стало: 9 млн товаров обработано за раз
Контроль качества и KPI
Offline метрики
- • Precision/Recall/F1 по размеченным парам
- • V-measure для качества кластеров
- • Homogeneity и Completeness
- • Стабильность WCD (внутрикластерное расстояние)
- • Мониторинг drift распределений
Online метрики
- • Доля успешных замен товаров аналогами
- • CTR и конверсия из поиска по альтернативам
- • Влияние на GMV и маржинальность
- • Снижение time-to-market для новых товаров
- • Удовлетворённость пользователей подбором аналогов
Нужна система матчинга товаров?
Создадим промышленный ML-пайплайн для автоматического сопоставления товаров под вашу специфику. Настроим интеграцию с поставщиками и обучим команду.
Что входит
Стоимость зависит от объема товаров и числа поставщиков
Почта: info@bi-ai.ru • Telegram: @bi_ai_team • Контакты