Анализ изменения объема продаж в розничной торговле с причинно-следственными связями: Тематическое исследование в Carrefour

Автор: Дмитрий Иванов [Команда P9X]

~8 минут чтения

Раскрытие информации:

Я работаю в Carrefour. Мнения, выраженные в этой статье, являются моими собственными. Данные и примеры представлены с разрешения моего работодателя и не содержат конфиденциальной информации.

Ассортимент магазина

Ассортимент магазина — это полный и разнообразный набор товаров, продаваемых покупателям. Он может меняться под воздействием различных факторов, таких как: экономические условия, потребительские тенденции, прибыльность, проблемы с качеством или соответствием, обновление некоторых продуктовых линеек, уровень запасов, сезонные изменения и т. д.

Когда товар больше не доступен на полках магазина, часть его продаж может перейти на другие товары. Для крупного продуктового ритейлера, такого как Carrefour, крайне важно точно оценить этот сдвиг продаж, чтобы управлять риском потерь из-за недоступности товара и приблизительно оценить потери из-за этого.

Измерение служит индикатором последствий отсутствия товара. Кроме того, оно постепенно формирует ценную историю оценок влияния сдвига продаж.

Однако оценка сдвигов продаж — это сложная задача. Поведение покупателей, на которое влияют трудно предсказуемые эмоциональные факторы, сезонность определённых товаров или внедрение новых товаров, может повлиять на сдвиги продаж. Кроме того, многие товары становятся недоступны во всех магазинах одновременно, что делает невозможным установление контрольной группы.

Подход к синтетическому контролю Causal Impact

Подход к синтетическому контролю Causal Impact, разработанный командой Google, соответствует особенностям нашей аналитической платформы. Он позволяет нам выделить влияние отсутствия товара на продажи от влияющих факторов и подходит как для квазиэкспериментальных, так и для обсервационных исследований.

Основанный на байесовских структурных моделях временных рядов, Causal Impact выполняет контрфактуальный анализ, рассчитывая влияние на продажи как разницу между продажами, наблюдаемыми после того, как товар становится недоступным, и продажами, которые были бы зафиксированы, если бы товар оставался доступным (через синтетический контроль).

I) Определение варианта использования

Отсутствие товара может происходить в двух основных формах:

  • Полная недоступность: товар больше не доступен в национальном ассортименте, что влияет на все магазины.
  • Частичная недоступность: товар больше не доступен в некоторых — но не во всех — магазинах. Он остаётся доступным в других.

Мы считаем, что надёжная оценка влияния сдвига продаж должна точно оценивать как потерянные продажи, так и часть продаж, перешедших на другие товары. Однако точное значение этих величин невозможно узнать, что усложняет эту задачу.

Наше исследование анализирует случаи полной недоступности товаров, поскольку они наиболее значимы с точки зрения влияния на продажи.

Обратите внимание, что причинно-следственный вывод — это не прогноз будущих событий: он выявляет причинно-следственные связи в прошлом, а не прогнозирует будущие события.

II) Почему мы выбрали модель Google Causal Impact?

Причинно-следственные подходы направлены на понимание причинно-следственных связей между переменными, объясняя, как одна влияет на другую, изолируя эффект, который мы пытаемся проанализировать, от всех других существующих эффектов.

Среди этих инструментов Causal Impact — удобная для пользователя библиотека, работающая в полностью байесовской среде, позволяющая интегрировать предварительную информацию, обеспечивая при этом встроенные доверительные интервалы в своих результатах. Её прогнозы представляют ожидаемые результаты, если бы вмешательство не произошло, выраженные в виде функций распределения, а не отдельных значений.

Causal Impact генерирует прогнозы, объединяя эндогенные компоненты, такие как сезонность и локальный уровень, с выбранными пользователем внешними временными рядами (ковариатами). Эти ковариаты не должны быть затронуты вмешательством и должны отражать тенденции или факторы, которые могут повлиять на основную временную серию. Мы обсудим выбор ковариат позже.

III) Управление выбросами и аномалиями в данных

Чтобы обеспечить точный анализ, мы рассмотрели аномалии данных о продажах, выполнив два ключевых шага:

  • Мы исключили временные ряды с отрицательными продажами или большим количеством нулевых продаж из анализа.
  • Для временных рядов со случайными нулевыми продажами мы заменили эти значения средним значением продаж за предшествующую и последующую недели.

IV) Дизайн модели

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

Кроме того, важно учитывать размер эффекта сдвига продаж по сравнению с исследуемой временной серией: если ожидается, что вмешательство повлияет на целевую серию всего на несколько процентов, серия может оказаться неподходящей, поскольку небольшие эффекты трудно отличить от случайного шума (особенно, как показали разработчики библиотеки, эффекты менее 1% трудно доказать как связанные с вмешательством). Поэтому мы анализировали сдвиг продаж только тогда, когда теоретическая максимальная скорость сдвига продаж превышает 5% от продаж в его подсемействе. Мы рассчитали это как S/(1-S), где S представляет процент оборота, который продукт генерировал в своём подсемействе до того, как стал недоступен.

Учитывая эти предварительные соображения, мы разработали нашу модель Causal Impact следующим образом:

Целевая серия

В качестве целевой временной серии мы выбрали сумму продаж для подсемейства продукта, исключая товар, который стал недоступен.

Ковариаты

Сначала мы исключили следующие типы временных рядов:

  • Продукты из того же подсемейства, что и снятый с производства продукт, чтобы предотвратить любое влияние его недоступности.
  • Продукты из других семейств, чем у снятого с производства продукта, поскольку ковариаты должны оставаться актуальными для бизнеса.
  • Временные ряды, которые показали корреляцию, но не коинтеграцию с целевой серией, чтобы избежать ложных связей.

Используя эти фильтры, мы выбрали 60 ковариат:

  • 20 ковариат были выбраны на основе их наивысшей коинтеграции с целевой серией в течение года до вмешательства.
  • 40 дополнительных ковариат были выбраны из 200 наиболее коинтегрированных серий на основе их наибольшей корреляции с целевой серией в течение года до вмешательства.

Обратите внимание, что эти числа (20, 40 и 60) являются эмпирическими правилами, полученными из наших предыдущих модельных подгонок.

Этот эмпирический подход объединяет временные ряды, которые отражают как долгосрочные тенденции (через коинтеграцию), так и краткосрочные вариации (через корреляцию). Мы намеренно выбрали большое количество ковариат, потому что Causal Impact использует метод «шипа и слэба», который автоматически уменьшает влияние менее значимых серий, присваивая им почти нулевые коэффициенты регрессии, в то время как важным даёт больший вес.

V) Валидация модели

Чтобы проверить нашу стратегию выбора ковариат, мы в значительной степени опирались на подход, используемый разработчиками Causal Impact. Мы провели исследование частичной недоступности товаров следующим образом:

  1. Мы изучили случаи, когда товары становились частично недоступными, и провели первоначальный традиционный статистический анализ, используя различия в различиях.
  2. Мы применили Causal Impact, используя в качестве ковариат контрольную популяцию, которая состояла из продаж подсемейства продукта (исключая недоступный продукт) в магазинах, где продукт оставался доступным. Эти ковариаты предоставили наилучшее доступное контрфактуальное значение, поскольку эти магазины не были затронуты вмешательством.
  3. Наконец, мы применили Causal Impact без контрольной популяции, вместо этого используя наш процесс отбора, основанный на коинтеграции и корреляции, как описано в разделе «Дизайн модели».

Согласованные оценки по нескольким отчётам (охватывающим различные продукты, количества и категории) продемонстрировали бы, что мы можем надёжно применять этот подход в более широком масштабе.

Кроме того, мы разработали две метрики для оценки качества синтетического контроля: мера пригодности и мера прогнозирующей способности.

  • Мера пригодности, оцениваемая от 0 до 1, оценивает, насколько хорошо синтетический контроль моделирует цель в течение предвмешательственного периода.
  • Мера прогнозирующей способности — это форма бэктестинга, которая оценивает качество синтетического контроля во время смоделированного ложного вмешательства в прошлом.

VI) Полная недоступность: упаковка риса больше не доступна

Мы изучили общенациональный случай, когда упаковка риса определённого бренда стала недоступна. Мы ограничили наш анализ несколькими месяцами после того, как продукт стал недоступен, чтобы избежать учёта несвязанных эффектов, которые могут возникнуть в течение более длительного периода. Теоретическая максимальная скорость сдвига продаж для этого продукта составила 31,2%. Мы применили методологию выбора ковариат, описанную ранее, чтобы оценить потенциальный эффект сдвига продаж.

VII) Рекомендации по использованию и отчёт об опыте

Causal Impact — это надёжный и удобный инструмент для причинных выводов. Однако после значительного времени, потраченного на настройку модели и повышение её точности, мы столкнулись с трудностями в тонкой настройке её для получения промышленного решения.

  • Первый момент, который мы хотим подчеркнуть, — это важность принципа «мусор на входе, мусор на выходе», который особенно актуален при использовании Causal Impact. Независимо от используемых ковариат, Causal Impact всегда будет выдавать результат, иногда с очень высокой вероятностью, даже в случаях, когда результаты нереалистичны или невозможны.
  • Временные ряды, выбранные исключительно на основе критерия коинтеграции, иногда затмевают другие в важности модели, что может резко снизить точность оценки, когда корректировка не контролируется должным образом.
  • Выбор 20 серий для коинтеграции и 40 для корреляции является эмпирическим правилом. Хотя оно эффективно в большинстве случаев, с которыми мы столкнулись, оно могло бы выиграть от дальнейшей доработки.

Заключение

В этой статье мы предложили причинный подход к оценке эффекта сдвига продаж, когда товар становится недоступным, используя Causal Impact. Мы изложили методологию выбора анализируемых продуктов и ковариат.

Хотя этот подход функционален и надёжен в большинстве случаев, у него есть ограничения и области для улучшения. Некоторые из них структурные, в то время как другие требуют больше времени на настройку модели.

  • Мы протестировали методологию на различных продуктах с многообещающими результатами, но она не является исчерпывающей. Некоторые очень сезонные продукты или продукты с небольшим объёмом исторических данных создают проблемы. Кроме того, продукты, которые стали недоступны только в нескольких магазинах, встречаются редко, что ограничивает нашу способность проверять метод на большом количестве разнообразных случаев.
  • Ещё одним структурным ограничением является требование модели к постфактумному анализу: инструмент не позволяет прогнозировать эффект сдвига продаж до того, как товар станет недоступен. Возможность сделать это принесла бы большую пользу бизнес-командам. Работа ведётся над приближением прогнозирования сдвига продаж с помощью байесовского структурного временного ряда.
  • Анализ эффекта сдвига продаж игнорирует влияние маржи: товар, который стал недоступен, может иметь более высокую удельную маржу, чем товары, на которые перешли его продажи. Коммерческие выводы, которые следует сделать, могут отличаться, но анализ на уровне подсемейства исключает такой уровень детализации.
  • Наконец, мы могли бы изучить альтернативные синтетические контроли, такие как Augmented SC, Robust SC, Penalized SC, или даже другие причинные подходы, такие как модель с двумя фиксированными эффектами.