Команда Stylus пришла к нам с задачей составить прогноз на следующий месяц в разрезе ежедневного количества покупок и обращений в call-центр. Также ритейлер хотел заранее узнать, из каких городов будут поступать заказы. Специалисты разработали модели прогнозирования с точностью до 98%. Рассказываем, как нам удалось добиться такой минимальной погрешности.
В eCommerce инструментами веб-аналитики можно измерить все бизнес-процессы: от операционных работ до поведения пользователя на сайте. Особенно важна аналитика, если речь идет о прогнозировании данных и логистическом планировании. И если описательная аналитика требует навыков «чтения» цифр и схем, то прогнозная нуждается в глубоком понимании, как интерпретировать эти цифры, отвечая на вопрос: «Что должно произойти?».
Чтобы составить прогноз для компании Stylus, мы перебрали множество возможных методов анализа данных и остановились на трех моделях прогнозирования временных рядов:
Выбрали именно их, поскольку набор данных имеет ярко выраженную сезонность, и эти модели учитывают ее наилучшим образом.
Для прогнозирования временных рядов мы использовали скрипты, написанные на Python, машинное обучение (machine learning) и различные модели прогнозирования, а также Power BI для четкой и понятной визуализации.
Почему приняли решение использовать именно machinelearning?
Использование моделей прогноза, основанных на машинном обучении, вместо интуитивных методов расчета, позволяет увеличить точность в:
- планировании рекламных бюджетов;
- расчете нагрузки на call-центр;
- планировании нагрузки на склад и логистику.
Этап 1. Тестовый прогноз
Чтобы составить точный прогноз по каждой метрике взяли набор данных из CRM-системы и аккаунта Google Analytics за два последних года. Сделали тестовые прогнозы по сеансам и транзакциям на 3 месяца и 2 года, отследив все аномальные периоды, которые увеличивают погрешность.
Также проанализировали ключевые компоненты: тренд, недельную и годовую сезонность.
Благодаря анализу трендов — поняли, что существенный рост продаж у ритейлера начался с ноября 2018 года.
Благодаря графикам недельной и годовой сезонности — смогли выявить период роста и спада количества транзакций и спрогнозировать частотность заказов с погрешностью 10-15%.
Такие показатели нас не устроили, мы решили составить более точный прогноз, чтобы получить данные в разрезе каждого дня.
Этап 2. Точный прогноз с показателями по транзакциям
Чтобы увеличить точность, доработали модели прогнозирования и создали словарь с праздниками, а также периодами повышенного спроса (Black Friday, Новый год).
Таким образом смогли выявить еще одну закономерность — на резкие изменения тренда сильное влияние оказывают акции, запущенные к периодам высокого спроса. При этом на недельной и годовой сезонности этот факт практически никак не отражается.
После всех доработок нам удалось построить детальный прогноз по количеству транзакций на каждый день с погрешностью всего в ~8%, а в разрезе месяца добиться большего и свести погрешность до ~2-5%.
Этап 3. Прогнозирование логистики
Чтобы распределить нагрузку на склад, понять количество ежедневных отгрузок и спрогнозировать отправку заказов по городам — проработали набор данных из CRM и спрогнозировали общее количество заказов, разделив их по городам. Так же создали словарь населенных пунктов по областям.
Чтобы облегчить восприятие полученной информации, все данные по прогнозируемым транзакциям, звонкам и заказам мы выгрузили в Power Bi и представили команде Stylus в виде наглядных интерактивных дашбордов.
Останавливаться на полученных результатах не будем — и планируем в дальнейшем автоматизировать модели прогнозирования.
Кавер: Unsplash