Блог KeepRise

Кластеризация магазинов на практике

Шаг первый. Определение параметров.

Кластеризация – это объединение магазинов по определенным параметрам, в целях дальнейшего ценообразования. Такими параметрами могут быть:
1) Характеристики самого магазина – близость к оживленным местам, площадь магазина, количество касс и т.д.
2) Характеристики спроса – процент реализации определенной товарной категории, средний чек, выручка, прибыль, продажи в штуках, количество чеков и так далее.
Эти параметры определяются экспертным путем, так как они могут сильно различаться в разных сферах и отраслях бизнеса. Для одних важен средний чек, для других наличие рядом парковочных мест.

Шаг второй. Сбор данных

Далее мы приступаем к сбору данных по параметрам, которые эксперт определил как значимые для наших торговых точек. Эти данные необходимы для того, чтобы понять особенности структуры спроса в магазинах. Например, это редкие, но дорогие покупки или это частые, но дешевые.

Шаг третий. Нормализация данных

Когда данные собраны, эксперт назначает им коэффициент. Как правило, это "0" и "1" или "-1" и "1".
Единица – это максимально удовлетворяющий нашу характеристику пример среди "кластеризуемых" магазинов. Например, количество касс в одном магазине достигается максимального значения 8 и ему присуждаем коэффициент единицы.
Минус один или ноль – минимально удовлетворяющий. В этих магазинах у нас минимальное количество касс, например, одна.
Приведем другой пример – наличие парковки. Если парковка рядом с магазином есть, то ответ положительный, но ответ "да" нам необходимо перенести в численное значение, поэтому если "да", то "1", а если "нет", то "0".
Это делается для того, чтобы создать единый цифровой формат, который будет:
А) Легче интерпретироваться и визуализироваться;
В) Обрабатываться машинным образом;
С) Унифицировать полученные нами данные
Далее, свою работу начинает data science. Однако если мы ограничиваемся тремя параметрами кластеризации, то можно привести пример модели, которая позволяет осуществить кластеризацию "вручную". Основывается она на Декартовой системе координат и Эвклидовом расстоянии.

Шаг четвертый. Создание модели

Чтобы визуально нам легче было себе это представить, мы возьмем Декартову систему координат, где у нас будут три оси, знакомые всем из школьного курса геометрии, x, y, z.
Определим три параметра, по которым мы хотим кластеризовать. Пусть это будет:
Х - Внутренняя характеристика самого магазина. Средний чек;
Y - Конкурентная среда, иначе говоря, степень удовлетворения наших правил наценки относительно конкурентов, где 0 будет "мы стоим дороже всех", 1 "мы стоим дешевле всех", 0.5 "стоим дешевле\дороже половины конкурентов";
Z - Процент реализуемого фреша в соотношении к тому, что остается на остатках склада магазина. (Реализовали 85% - значение 0.85)
На самом деле, поменяем ли мы здесь величину "средний чек" на "1" и "0" не суть важно, поэтому оставим его как есть, в понятном рублевом отношении.
Собрав данные за прошедший месяц в десяти наших магазинах, мы получили такую таблицу:
Переносим эти данные на нашу трехмерную Декартовскую систему координат и получаем следующее:
Покрутить и посмотреть созданную модель можно по этой ссылке.

Шаг пятый. Интерпретация данных и создание математического кластера

Как мы видим на изображении ниже, некоторые точки образуют скопления. Их мы можем относить к одному кластеру магазинов, согласно заданным трем параметрам.
https://chart-studio.plotly.com/~Evgendalf/1/#plot
Или в табличном отношении:
Как вы могли заметить, некоторые торговые точки образуют отдельные кластера. Такая ситуация практикуется и вполне допустима.
В результате проделанной работы у нас получается математический кластер. После, он проверяется на практике. В результате проверки в работу могут включаться дополнительные параметры, любые из вышеупомянутых или новые, такие как расстояние между торговыми рядами.
Есть еще одна задача, которую определяет эксперт с помощью Data Science – какое расстояние между двумя точками должно быть, чтобы они относились к одному кластеру. То есть, в пределах какой дальности мы собираем торговые точки в один кластер. В данном подходе оно определяется по формуле, которая так же известна из курса школьной геометрии. Для этого берем минимальное и максимальное расстояние между точками, нормализуем их, установив правило, что точки с расстоянием меньше Х не объединяются.
Дифференцированное ценообразование исходит из идеи о готовности покупателя платить справедливую цену за ту ценность, которую он получает от продукта. Спрос и ценность одних и тех же вещей сильно отличается для жителя мегаполиса или небольшого населенного пункта. Этот инструмент может открыть для вашего бизнеса совершенно новые стратегические точки роста, как в плане увеличения финансовых показателей, так и в борьбе за лояльность покупателя.
Мы попытались осветить кластеризацию как можно более доступно, насколько это возможно без погружения в ML.
Кластеризация