Большинство наших

Меня зовут Марина Калабина, яруководитель проектов вЛеруа
Мерлен. Пришла вкомпанию в2011 году. Первые пять лет открывала
магазины (когда япришла, ихбыло 13, сейчас 107), потом работала
вмагазине вкачестве руководителя торгового сектора ивот уже полтора
года занимаюсь тем, что спозиции
Леруализмы
Поскольку ядавно работаю вкомпании, торечь моя наполнена специфическими терминами, которые яназываю леруализмы. Чтобы мыговорили свами наодном языке, привожу некоторые изних.
- Сток запас товаров вмагазине.
- Доступный для продажи сток количество товара, свободное отблокировок ирезервов для клиента.
- Экспо витринный образец.
- Артикулы товары.
- Оперативная инвентаризация ежедневный пересчет 5 артикулов вкаждом отделе каждого магазина.
Гарантированный сток
Возможно, вынезнаете, нокогда выоформляете заказ вЛеруа Мерлен, в98% случаев онприходит вмагазин исобирается изторгового зала.
Представьте себе огромные 8000 кв. ммагазина, 40000 артикулов
изадачу собрать заказ. Что может произойти сартикулами вашего
заказа, которые ищет сборщик? Товар может быть уже вкорзине
клиента, который ходит поторговому залу, или даже может быть продан
между тем моментом, когда выего заказали, итем, когда сборщик пошел
заним. Насайте товар есть, авдействительности онлибо
Для того чтобы бороться сразными проблемами, ивтом числе сэтой,
впрошлом году вкомпании было запущено подразделение Data
Accelerator. Его миссия привить
Суть продукта втом, что перед публикацией стока товара насайте мыпроверяем, можемли собрать этот артикул клиенту, гарантируемли ему это. Чаще всего это достигается чуть меньшим количеством стока, который мыпубликуем насайте.
Унас была классная команда: Data Scientist, Data Engineer, Data
Analysis, Product Owner и
Целями нашего продукта были:
- сократить количество несобранных заказов, при этом неповредив количеству заказов впринципе (чтобы оно несократилось);
- сохранить товарооборот вeCom, поскольку мыбудем меньше показывать товаров насайте.
Вобщем, при прочих равных сделать лучше.
Бюро расследований
Когда проект стартовал, мыпоехали вмагазины, клюдям, которые каждый день работают сэтим: мысами пошли собирать заказы. Оказалось, что наш продукт настолько интересен инужен магазинам, что нас попросили запуститься нечерез 3месяца, как было запланировано вначале, авдва раза быстрее, тоесть через 6 недель. Это, мягко говоря, было стрессом, нотем неменее
Мысобрали гипотезы отэкспертов ипошли искать, какиеже унас впринципе есть источники данных. Это был отдельный квест. Фактически бюро расследований показало, что унас имеются такие товары, укоторых обязательно есть витринный образец.
Например, смеситель утаких товаров всегда есть образец взале. Более того, мынеимеем права продать экспо, потому что онможет быть уже поврежден игарантия нанего нераспространяется. Мынаходили такие товары, укоторых непроставлен витринный образец, адоступный сток для продажи показан 1. Но, скорее всего, это тот самый экспо, который мынесможем продать. Аклиент может его заказать. Это одна изпроблем.

Следующая история обратная. Мыобнаружили, что иногда утоваров бывает слишком большое количество витринных образцов. Скорее всего, либо произошел сбой системы, либо вмешался человеческий фактор. Вместо того чтобы насайте показывать 2500 установочных коробок, мыможем показать только 43, потому что унас сбой всистеме. Имынаучили наши алгоритмы находить втом числе итакие косяки.

Валидация
Поисследовав данные, мысобирали
Что касается примеров, когда мынаходили слишком большое
количество витринных образцов, практически в60% случаев мыбыли
правы, предполагая ошибку. Акогда мыискали недостаточное количество
экспо или ихотсутствие, тобыли правы в81%, что,
в
Запуск MVP. Первый этап
Поскольку нам надо было уложиться в6 недель, мызапускали proof
ofconcept вот стаким линейным алгоритмом, который находил
аномальные значения, делал поправку наэти значения перед тем, как
публиковать насайт. Иунас было два магазина, вдвух разных регионах,
чтобы мымогли сравнить эффект.
Кроме того, был сделан дашборд, где, содной стороны, мымониторили
технические параметры, асдругой показывали нашим заказчикам, посути
магазинам, как отрабатывают наши алгоритмы. Тоесть мысравнивали,
как они работали дозапуска икак стали работать после, показывали,
сколько денег позволяет заработать использование этих
алгоритмов.
Правило -1. Второй этап
Эффект отработы продукта быстро стал заметен, инас стали спрашивать, почему мыобрабатываем такое маленькое количество артикулов: Давайте возьмем весь сток магазина, изкаждого артикула вычтем одну штуку, и, может быть, это нам позволит решить проблему глобально. Кэтому моменту мыуже начали работать над моделью машинного обучения, нам казалось, что подобная ковровая бомбардировка может навредить, новозможность такого эксперимента упускать нехотелось. Имызапустили тест на4магазинах для того, чтобы проверить эту гипотезу.
Когда через месяц мыпосмотрели нарезультаты, товыяснили два
важных обстоятельства.
ML-модель . Третий этап
Итак, мысделали
- Модель реализована спомощью градиентного бустинга наCatboost, иэто дает предсказание вероятности того, что сток товара вданном магазине вданный момент является некорректным.
- Модель была обучена нарезультатах оперативной иежегодной инвентаризаций, ивтом числе наданных поотмененным заказам.
- Вкачестве косвенных указаний навозможность некорректного стока использовались такие признаки, как данные опоследних движениях постоку данного товара, опродажах, возвратах изаказах, одоступном для продажи стоке, ономенклатуре, онекоторых характеристиках товара ипрочем.
- Всего вмодели использовано около 70 фичей.
- Среди всех признаков были отобраны важные сиспользованием различных подходов коценки важности, втом числе Permutation Importance иподходов, реализованных вбиблиотеке Catboost.
- Чтобы проверить качество иподобрать гиперпараметры модели, данные были разбиты натестовую ивалидационную выборки всоотношении 80/20.
- Модель была обучена наболее старых данных, апроверялась наболее новых.
- Финальная модель, которая витоге пошла впрод, была обучена
наполном датасете сиспользованием гиперпараметров, подобранных
спомощью разбиения наtrain/
valid-части . - Модель иданные для обучения модели версионируются спомощью DVC, версии модели идатасетов хранятся наS3.
Итоговые метрики полученной модели навалидационном наборе данных:
-
ROC-AUC : 0.68 - Recall: 0.77
Архитектура
Немного про архитектуру как это унас реализуется впроде. Для
обучения модели используются реплики операционных ипродуктовых
систем компании, консолидированные ведином DataLake наплатформе
GreenPlum. Наоснове реплик рассчитываются фичи, хранящиеся
вMongoDB, что позволяет организовать горячий доступ кним.
Оркестрация расчета фичей иинтеграция GreenPlum иMongoDB
реализована сиспользованием
Модель машинного обучения представляет собой контейнеризованное

Результаты
Унас было 6магазинов ирезультаты показали, что изплановых 15%
мысмогли сократить количество несобранных заказов на12%, при этом
унас выросли товарооборот
Наданный момент, обученная нами модель используется нетолько для редактирования стока перед публикацией насайте, ноидля улучшения алгоритмов оперативной инвентаризации. Какие артикулы нужно сегодня посчитать именно вэтом отделе, именно вэтом магазине такие, закоторыми придут клиенты, икоторые хорошо былобы проверить. Вобщем модель оказалась еще имультифункциональной ипереиспользуется вкомпании вдругих подразделениях.
p.s.Статья написана по выступлению на митапе Avito.Tech, посмотреть видео можно по ссылке.