Заказная разработка и консалтинг
Корпоративные хранилища данных
Лучшие решения для хранения данных
LLM & NLP аутсорс
Усиление собственной команды
Усиление собственной команды
Data Science/Machine Learning аутсорс
Сбор, анализ, визуализация и обработка данных о состоянии бизнеса
AI Антифрод система
Инструменты работы с обратной связью покупателей
Анализ отзывов с помощью ИИ
AI Нейроанализ отзывов
Формирование персональных предложений на основе анализа поведения пользователей
Рекомендательные системы
Умный клиентский опыт
(Smart CX)
Предиктивная аналитика
Для поиска и анализа корпоративных документов
AI-Ассистенты
Для автоматизации поддержки клиентов
Клиентская аналитика
Product Matching
Умный бенчмаркинг
Гибкая подстройка цен под изменения рыночных факторов
Динамическое ценообразование
Для предсказания будущих событий и трендов на основе анализа исторических данных
Прогнозирование спроса
Создание инфраструктуры
Умный поиск
Обсудить проект

ML-искусство переживать проблемы: как избегать разочарований и находить аналоги товаров в периоды out-of-stock

Новости
Публикации в СМИ
11.08.2023
Приветствуем вас в блоге компании «ДатаЛаб»!

Мы — команда специалистов по анализу данных и машинному обучению, и с этой статьи начинаем серию материалов о практических решениях для онлайн-ритейла. Наша цель — показать, как Data Science помогает магазинам повышать выручку, сокращать издержки и грамотно управлять рисками.

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

Автор: Андрей Шелюх, руководитель проекта.
Выбираешь продукт, переходишь в карточку — а там надпись: «нет в наличии». Разочарование — это полбеды. Главное — что покупатель уходит в другой магазин. Возможно, навсегда.
В обычной рознице товар просто убирают с полки. В онлайне всё сложнее: позиция всё ещё висит в каталоге, попадает в результаты поиска, и человек теряет время — без результата. А магазин теряет выручку и доверие.

Почему отсутствие товара в онлайн-магазине — не просто неудобство

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

Почему так происходит и что с этим можно сделать

неудачные прогнозы
Причин у «out-of-stock» может быть масса:
баги в системе учета
задержки с поставками
неожиданный всплеск спроса
1.
2.
Механизм предзаказа
Клиент может заказать товар заранее — и получит его, как только он снова появится в продаже.
Уведомления о поступлении
Автоматическая рассылка сообщений, когда нужный товар возвращается в каталог.
3.
4.
Использование ассортимента других точек
Вариант — рекомендовать аналоги из других складов или магазинов, если они есть в системе.
Резерв для клиента
Когда товар только планируется к поступлению — его можно «забронировать» заранее.
Мы же сосредоточились на первом варианте — автоматическом поиске замен через машинное обучение, и далее — подробности этого проекта.
5.
Автоматический подбор похожих товаров
Система на базе ML подбирает замену отсутствующему продукту — максимально похожую по характеристикам.
В каждом товаре есть масса параметров — от названия и фото до веса, состава и вкуса. Эти данные мы преобразуем в числовые векторы, а дальше — ищем ближайшие товары с похожим профилем по косинусной мере.

Как это выглядело на практике: проект для «ВкусВилл»

Проекты могут длиться 9–12 месяцев
Рынок требует скорости
Проекты могут длиться 9–12 месяцев
Заменить один вид батончика на другой — это не то же самое, что поменять телевизор. Важно учитывать кучу деталей: упаковку, состав, пищевые свойства.
У «ВкусВилла» более 37 тысяч SKU. Чтобы модель работала качественно, пришлось вручную разметить категории и тщательно готовить датасет.
Если в категории всего два товара, а один закончился — алгоритму сложно предложить действительно подходящий аналог.
Но всё не так просто — вот с какими вызовами мы столкнулись:
Собрали текстовые описания, изображения, характеристики. Объединили всё в единый датасет, вручную выверили категории, связали фото с карточками.
Подготовка данных

Как строили систему: от данных к эмбеддингам

Векторы склеивались, после чего применялся дополнительный полносвязный слой
Изображения — через ResNet-34 (ImageNet)
Тексты обрабатывались с помощью rubert-tiny2
Пробовали и другие подходы — например, ArcFace для улучшения представлений или работу с более крупными трансформерами (вроде LaBSE), но они оказались избыточны — модели страдали от затухающих градиентов. Лучше сработали лёгкие архитектуры, дообученные на нашей предметной области.

Выход: эмбеддинги с хорошим разделением, где текст и картинка уравновешены по значимости.
Архитектура модели
Модель училась определять точную подкатегорию товара. Тренировка велась на GPU Tesla V100, оптимальные результаты — к 20 эпохе. После обучения мы просто удаляли последний слой классификатора и использовали полученные эмбеддинги для поиска аналогов.

Что получилось и к чему пришли

Выручка магазина остаётся на уровне
Покупатель чувствует заботу и получает замену
Уходит необходимость вручную затыкать дыры в ассортименте
Снижается число уходов с сайта
Да, есть риски: без качественных данных модель даст слабый результат. Но если инвестировать в разметку и регулярно обновлять информацию — это мощный инструмент.
Внедрение рекомендательной системы, которая предлагает клиенту похожие товары, когда нужный закончился, даёт ощутимый эффект:
Студенты МИФИ, МИСИС и ЮФУ изучают PostgreSQL с помощью СУБД Pangolin
В 2024 году команда СУБД Pangolin организовала доступ к продукту для студентов
Публикации в СМИ
В 2024 году команда СУБД Pangolin организовала доступ к продукту для студентов
Студенты МИФИ, МИСИС и ЮФУ изучают PostgreSQL с помощью СУБД Pangolin
Новости
Как low-code ускоряет разработку и вывод продуктов на рынок
Как low-code ускоряет разработку и вывод продуктов на рынок Как low-code ускоряет разработку и вывод продуктов на рынок
Новости
Блог