Группировка по сезонности

Теория штука хорошая, но на практике иногда бывают ситуации с которыми не справишься, только книжными знаниями. Давайте поможем друг другу и поделимся опытом решения тех или иных практических задач.
Аватар пользователя
Santa83

Группировка по сезонности

Сообщение Santa83 » 22 окт 2008 21:26

Уважаемые коллеги,

Решили для более точного вычисления коэффициентов сезонности, объединить товары по группам. По идеи, это должно снизить влияние выбросов и т.п.

Главный вопрос, на основании чего производить объединение.

Я вижу два пути:

1. Логически выделять группы (по виду товара, марке, ценовому диапазону и т.п.). Потом проверять правильность такого дробления математическими методами.

2. Математически определять группы. То есть группировать на основании схожего поведения (корреляции) продаж товаров в течении года. А потом пытаться объяснить полученные группы аналитическим путем.


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

НУ и конечно, крайне интересно услышать каким путем идут многоопытные коллеги в вопросе группироки по сезонности :D

Реклама
Аватар пользователя
d__4997

Сообщение d__4997 » 23 окт 2008 06:51

Если просто работать с массивом без ярко выраженных сезонных товаров, то я бы вообще ни чего ни куда не объединял, смысла особого нет. И так результат должен быть более мене при прогнозировании.

Если все таки вы понимаете, что товар имеет ярко выраженную сезонность. Тогда дробите. Имеет смысл определять какой товар в какую группу включить на основании экспертов (категорийные менеджеры, закупщики по направлениям, ведущие продавцы). Математика на начальном этапе ни чего не даст, то есть проверять схожесть поведения товара с мат моделью поведения группы смысла нет. Разве что как дополнение к экспертным мнениям.
Даже вещи с супер сезонностью (до обнуления продаж в определенные моменты) обычно начинают продаваться не в тот момент когда могут, а в тот когда на складе появились.
Вот после объединения в группы можно математически с суммой в деньгах работать. Она обычно хоть как то с жизнью корелирует.

Аватар пользователя
d__4997

Сообщение d__4997 » 23 окт 2008 10:00

П.С. По поводу совпадает позиция с группой или не совпадает. Это любой из критериев связи между рядами. Например, критерий Стьюдента подойдет. Или в екселе есть стандартный мат аппарат по оценке зависимости между рядами (или массивами).

dimitrius
Пользователь
Пользователь
Сообщений: 100
Зарегистрирован: 20 июл 2007 03:00

Сообщение dimitrius » 23 окт 2008 16:14

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



шаг 1. Математическая оценка корреляций, выбор товаров с наиболее близким поведением. Здесь запускаем цикл по всей номенклатуре, начиная с товара с наибольшей частотой спроса, находим корреляцию к нему всех прочих позиций, выбираем то, что больше 0,7. Называем "Группа сезонности 1" и т.д.;



шаг 2. Постороение общего индекса сезонности по выбранной группе;



шаг 3. Поиск зависимостей в группах товаров; перегруппировка товаров по сезонному признаку.



Дело в том, что достаточно сложно сориентироваться, насколько верно деление по группам с точки зрения сезонности. А корреляционный анализ порой дает очень интересные результаты, которые не выявляются при опросе экспертов. Это уже потом, показывая экспертам зависимость, и занимаясь поисками объяснения, мы либо подтверждаем гипотезу, либо опровергаем ее.

Аватар пользователя
Роман Бодряков
Авторитет
Авторитет
Сообщений: 5253
Зарегистрирован: 19 апр 2004 03:00
Имя: Роман
Фамилия: Бодряков
Должность: Ген.Директор в кубе - наноолигарх
Откуда: Россия

Сообщение Роман Бодряков » 23 окт 2008 17:05

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

Вопрос.
Есть резон перед превым шагом провести сглаживание каждого товара, а потом проерять кореляцию?
Есть такие решения, после принятия которых тараканы в голове аплодируют стоя! И просят повторить "НА БИС!!!"
Образование круче не у того, кто больше Знает, а у того, кто хоть что-то умеет.

dimitrius
Пользователь
Пользователь
Сообщений: 100
Зарегистрирован: 20 июл 2007 03:00

Сообщение dimitrius » 23 окт 2008 22:12

Roman писал(а):Вопрос.
Есть резон перед превым шагом провести сглаживание каждого товара, а потом проерять кореляцию?


Ты знаешь, я провожу только очистку от тренда. Сглаживание - нет. Сглаживание идет потом, когда группа сезонности определена, а значения индексов по ней усреднены (что само по себе уже является аналогом сглаживания). Возможно, это не вполне верно. Готов выслушать аргументы.

Что касается 0,7, то эта цифра не с потолка взялась. Когда анализировал свой ассортимент, начинал с 0,98; затем 0,95 - товаров с подобной корреляцией либо мало, либо нет вообще. Опытным путем дошел до 0,7. После усреднения и сглаживания сезонности группы провожу повторный корр. анализ и там уже коэф - выше.

Аватар пользователя
Santa83

Сообщение Santa83 » 24 окт 2008 07:14

dimitrius писал(а):
Roman писал(а):Что касается 0,7, то эта цифра не с потолка взялась. Когда анализировал свой ассортимент, начинал с 0,98; затем 0,95 - товаров с подобной корреляцией либо мало, либо нет вообще. Опытным путем дошел до 0,7. После усреднения и сглаживания сезонности группы провожу повторный корр. анализ и там уже коэф - выше.


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

Может есть какой то алгоритм (кроме экспертного мнения) на основании которого стоит задавать величину групп????

Аватар пользователя
Santa83

Сообщение Santa83 » 24 окт 2008 07:23

В итоге, родился примерно такой алгоритм действий:

1. Очищаем статистику продаж от:

1.1. Дней, когда продаж не было из-за дефицита товара. Заменяем эти дни средними продажами в соседние дни.

1.2. Влияния различных рекламных акций (они могут существено проднять продажи). Делим продажи в дни когда была акция на коэффициент акций (берется частично из статистики, частично экспертно)

2. Сами и с помощью маркетологов, опытных продавцов максимально подробно классифицируем товар. То есть делим его на группы, подгруппы и так далее.

3. Считаем сезонность для самых мелких подгрупп. Прогоняем через мат. аппарат с целью сравнения сезонности небольших подгрупп. Укрупняем их.

Кстати еще вопрос, на какой период нужно считать коэффициент сезонности для розничной сети. Пока есть желание делать коэффициент на две недели....

dimitrius
Пользователь
Пользователь
Сообщений: 100
Зарегистрирован: 20 июл 2007 03:00

Сообщение dimitrius » 24 окт 2008 07:38

Групп будет столько, сколько выделится. Вопрос, как я понимаю, в том какой К корр выбрать...

Действительно, интересно, как будет математически правильно...

Аватар пользователя
d__4997

Сообщение d__4997 » 24 окт 2008 08:48

dimitrius писал(а):Групп будет столько, сколько выделится. Вопрос, как я понимаю, в том какой К корр выбрать...

Действительно, интересно, как будет математически правильно...


Можно поподробней о том как делится товар на группы.

Кореляцию чего с чем сравниваем?

Аватар пользователя
Роман Бодряков
Авторитет
Авторитет
Сообщений: 5253
Зарегистрирован: 19 апр 2004 03:00
Имя: Роман
Фамилия: Бодряков
Должность: Ген.Директор в кубе - наноолигарх
Откуда: Россия

Сообщение Роман Бодряков » 24 окт 2008 18:25

Санта,

Попробуй еще вычленить тренд с количеством покупателей/чеков. Средний чек. Это причинные факторы. Сейчас эти тренды сильно поменяются в связи с кризисом.
Есть такие решения, после принятия которых тараканы в голове аплодируют стоя! И просят повторить "НА БИС!!!"
Образование круче не у того, кто больше Знает, а у того, кто хоть что-то умеет.

dimitrius
Пользователь
Пользователь
Сообщений: 100
Зарегистрирован: 20 июл 2007 03:00

Сообщение dimitrius » 24 окт 2008 23:14

Можно поподробней о том как делится товар на группы.

Кореляцию чего с чем сравниваем?


Я ж говорю, первоначально берется позиция с самой большой частотой продаж, и с ней сравниваются все остальные. Задача этого этапа - поиск позиций, близких друг к другу по динамике (сезонности); и объединение их в группу. Вне зависимости от товарной категории, так "прогоняется" весь ассортимент.

По практике: групп, обладающих сезонностью, не так уж и много (по крайней мере, в той сфере где я работаю).

Дальше - интереснее. Теперь посмотрим какие именно позиции попали в выделенную сезонную группу, и пытаемся объяснить почему. Как правило, все вполне предсказуемо для экспертов. Но иногда попадаются сюрпризы. Ну как если бы "вдруг" выяснилось, что кабель одной и той же марки, но разных сечений имеет разную сезонность. Ну не замечали этого раньше, и марку делили только на две группы "больших" и "мелких" сечений (условно), по которым считали сезонность. А тут оказывается что два "близких" типоразмера совершенно различаются по сезонности, а один из них тесно коррелирует с продажами продукции совсем другой группы.

И тут вдруг эксперты хлопают себя по лбу и говорят, что на самом-то деле все это вполне логично. И раньше вроде-бы знали (причины), но объединить в группу - как-то не задумывались.

Алгоритм Ромаса вполне хорош. Предложенный мной вариант - это как-бы взгляд "наоборот", попытка посмотреть со стороны на процессы.

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

Аватар пользователя
Роман Бодряков
Авторитет
Авторитет
Сообщений: 5253
Зарегистрирован: 19 апр 2004 03:00
Имя: Роман
Фамилия: Бодряков
Должность: Ген.Директор в кубе - наноолигарх
Откуда: Россия

Сообщение Роман Бодряков » 26 окт 2008 13:05

dimitrius писал(а): Алгоритм Ромаса вполне хорош. Предложенный мной вариант - это как-бы взгляд "наоборот", попытка посмотреть со стороны на процессы.


Оговорка по Фрейду. Алгоритм я (Роман) не писал. А если не я то Ромас.
 :D  :D  :D

Коллеги попробовал по Диминому пути пойти - полный бред получился.

У меня сейчас данные по аптечкам. Товар очень разнообразно заменяется. Поэтому и бред. Продажи одного товара и сезонность не имеют связи. Апсиринов пять видов и они друг друга меняют причудливым образом.

Заменять пропуски с наличием - средними продажами на мой взгляд некорректно.

Для этого подхода нужна значительная часть товара присутствующая более менее постоянно. А если ее нет?

Я всегда действовал по пути, который Санта описал.
1. Экспертное деление на группы.
2. Усреднение по сумме группы.
3. Потом весь товар на соответствие трендам разных групп.
4. И по результатам корректировка сезонных групп.

Искренне считаю, что трендов не получится больше 10, только доказать не могу.
Есть такие решения, после принятия которых тараканы в голове аплодируют стоя! И просят повторить "НА БИС!!!"
Образование круче не у того, кто больше Знает, а у того, кто хоть что-то умеет.

dimitrius
Пользователь
Пользователь
Сообщений: 100
Зарегистрирован: 20 июл 2007 03:00

Сообщение dimitrius » 27 окт 2008 08:39

dimitrius писал(а):Алгоритм Ромаса вполне хорош. Предложенный мной вариант - это как-бы взгляд "наоборот", попытка посмотреть со стороны на процессы.


Прошу прощения, оговорка действительно по Фрейду :).
Санта, сильно извиняюсь - издержки ночного бдения...

Аватар пользователя
d__4997

Сообщение d__4997 » 27 окт 2008 08:41

Оригинальная идея у Димитриуса. Вот только наличие кореляции это не есть сезонность. Вы где то гипотезу о наличии сезоности проверяете математически?
Кроме того через коэффициент 0,7 можно практически весь массив к друг другу привязать. Вот взяли первый по частоте ряд, все что в пределах 0,7 туда привязали. Потом ,я так понимаю, берется следующий по частоте ряд, который не попал в первую выборку и проверяется , что по нему попадет в 0,7 и т.д. А вы проверяли после разделения на группы возможность не корректного объеденения. Возможно что в первую выборку попал товар у которого кореляция со второй группой выше? Например 0,9.

Аватар пользователя
Роман Бодряков
Авторитет
Авторитет
Сообщений: 5253
Зарегистрирован: 19 апр 2004 03:00
Имя: Роман
Фамилия: Бодряков
Должность: Ген.Директор в кубе - наноолигарх
Откуда: Россия

Сообщение Роман Бодряков » 27 окт 2008 12:45

А что если развить идею?

1. Определить тренды посетителей по объекту.
2. Выделить их из товара.
3. Потом смотреть кореляцию между товарами
Есть такие решения, после принятия которых тараканы в голове аплодируют стоя! И просят повторить "НА БИС!!!"
Образование круче не у того, кто больше Знает, а у того, кто хоть что-то умеет.

Аватар пользователя
Дядя_Ежик

Сообщение Дядя_Ежик » 27 окт 2008 13:05

Roman писал(а):У меня сейчас данные по аптечкам. Товар очень разнообразно заменяется. Поэтому и бред. Продажи одного товара и сезонность не имеют связи. Апсиринов пять видов и они друг друга меняют причудливым образом.

А я уже давно твердю, что нужна таблица аналогов.
И коэффициент заменяемости внутри этой таблицы. По типу один ко многим. Без этого вряд ли что реальное получится.

И... А зачем вам сезонность?
Вы всерьез считаете, что сезонность - это есть нечто данное нам навечно в помощь, для облегчения сложной жизни закупщиков? :roll:
Тогда почему в прошлом году сезонность СЕРЬЕЗНО отличалась от сезонности за 3 предыдущих. Я не говорю, что там где должен был быть резкий подъем - мы упали, нет. Но подъем начинался не в том месяце и шел не так резко... Какими факторами определяется сезонность. Так ли они постоянны? Гарантирую приличное искажение и в этом году... Сезонность - фактор стабильной экономики (если мы говорим про коэф. а не про краткосрочный тренд) в момент роста и спада она удет работать с точностью до плюс/минус пол-кирпича. Как-то не вовремя вы про нее вспомнили...

Аватар пользователя
Роман Бодряков
Авторитет
Авторитет
Сообщений: 5253
Зарегистрирован: 19 апр 2004 03:00
Имя: Роман
Фамилия: Бодряков
Должность: Ген.Директор в кубе - наноолигарх
Откуда: Россия

Сообщение Роман Бодряков » 27 окт 2008 14:11

Твердить можно до посинения. Только вот составить.... я пока нормальных не встречал. Покажешь свою таблицу?
Проще объединить близких родственников в группу. Что мы всегда и делаем.

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

Тренд линейный по году - инфляция, рост ассортимента, рост средней покупки (рост доходов). Все вместе - чохом.
Тренд гармонический (сезонный) - изменение числа покупателей, изменение спроса на товары разных групп. и тд. - тоже чохом.

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

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

Таким образом, если текущие продажи бытовой техники на 10% ниже прогноза. Это плохо, но не смертельно, вдруг в ноябре нагоним.

А если учесть, что 30% составляют - "инвестиционные покупки". То реальный спрос на 40% меньше прогноза. А вот это уже - смертельно.
В январе-марте будет очень грустно.
Есть такие решения, после принятия которых тараканы в голове аплодируют стоя! И просят повторить "НА БИС!!!"
Образование круче не у того, кто больше Знает, а у того, кто хоть что-то умеет.

Аватар пользователя
Дядя_Ежик

Сообщение Дядя_Ежик » 27 окт 2008 14:42

Кстати, в ручную коэф. аналогичности я расставлю...
Только это не быстро, а у меня другой работы..... :roll: ...

А по прогнозам... и, кстати, :!: по сибиозу потребителей и поставщиков - Есть у нас компания - постоянно требует квартальные и годовые планы. По мере возможности я их всегда рисовал... Не сразу, а как время было, но достоверные планы. В этом году... Мои стоны, что план на следующий год я сделать пока не готов ввиду кризиса и прочих неопределенностей не принимались. В итоге они получили план... Если они начнут работать по этому плану - я им не завидую. И кто виноват в данной ситуации???

Аватар пользователя
Роман Бодряков
Авторитет
Авторитет
Сообщений: 5253
Зарегистрирован: 19 апр 2004 03:00
Имя: Роман
Фамилия: Бодряков
Должность: Ген.Директор в кубе - наноолигарх
Откуда: Россия

Сообщение Роман Бодряков » 27 окт 2008 17:13

Виноват кризис.

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

Будет корректным сейчас пересмотреть планы. Пока они их в производство не запустили. Кроме этого надо совместно с ними пересмотреть горизонт планирования/перепланирования в сторону сокращения.

И вы и они заинтересованы в точности. А какая может быть точность долгосрочного прогноза в изменяющейся вокруг нас ситуации.
Есть такие решения, после принятия которых тараканы в голове аплодируют стоя! И просят повторить "НА БИС!!!"
Образование круче не у того, кто больше Знает, а у того, кто хоть что-то умеет.

dimitrius
Пользователь
Пользователь
Сообщений: 100
Зарегистрирован: 20 июл 2007 03:00

Сообщение dimitrius » 27 окт 2008 18:58

Я писал(а):Оригинальная идея у Димитриуса. Вот только наличие кореляции это не есть сезонность. Вы где то гипотезу о наличии сезоности проверяете математически?


Я уже говорил, что прежде чем приступить к корреляционному анализу, ряд динамики очищается от тренда. К тому же данные берутся не за один год, а как минимум за два. В идеале, конечно, за три. Так что на счет сезонности - все в порядке.

С другой стороны, проблема о которой сказал Роман, действительно имеет место быть. Данный подход предполагает наличие в группе по сезонности хотя бы одного товара с полной статистикой по динамике продаж за 2-3 года. Потому товары изначально и сортируются по частоте.

Но! Любопытно другое. Если такой товар (ряд динамики) есть, то корреляция к нему аналогов даже с неполной статистикой продаж будет высокой.

А вы проверяли после разделения на группы возможность не корректного объеденения. Возможно что в первую выборку попал товар у которого кореляция со второй группой выше? Например 0,9.


Да, такая проверка проводится, еще в ходе группировки. Програмка прописана в Access, и выводит лучшую корреляцию "пузырьковым" методом.

Аватар пользователя
Дядя_Ежик

Сообщение Дядя_Ежик » 28 окт 2008 09:11

Roman писал(а):Виноват кризис.

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

Будет корректным сейчас пересмотреть планы. Пока они их в производство не запустили. Кроме этого надо совместно с ними пересмотреть горизонт планирования/перепланирования в сторону сокращения.

И вы и они заинтересованы в точности. А какая может быть точность долгосрочного прогноза в изменяющейся вокруг нас ситуации.


Так я об этом и толкую.
Я им честно сказал, что прогноз на год сейчас - чистая фикция, но... слушать меня не стали - "Дай прогноз и ФСЁ!"... Ну я и дал... :roll:

Аватар пользователя
u-shak-off

Сообщение u-shak-off » 28 окт 2008 09:36

Дядя_Ежик писал(а):
Roman писал(а):Виноват кризис.

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

Будет корректным сейчас пересмотреть планы. Пока они их в производство не запустили. Кроме этого надо совместно с ними пересмотреть горизонт планирования/перепланирования в сторону сокращения.

И вы и они заинтересованы в точности. А какая может быть точность долгосрочного прогноза в изменяющейся вокруг нас ситуации.


Так я об этом и толкую.
Я им честно сказал, что прогноз на год сейчас - чистая фикция, но... слушать меня не стали - "Дай прогноз и ФСЁ!"... Ну я и дал... :roll:


Знакомая ситуация, сейчас тоже всем объясняем бессмысленность и бесперспективность долгосрочных планов, но никто не хочет слушать, наооборот, думают что получив долгосрочный план, они автоматом себя обезопасят :) Прогноз становится, неким святым свитком, избавляющим от всех бед :)

Аватар пользователя
Santa83

Сообщение Santa83 » 28 окт 2008 09:59

А кроме корреляции и критерия Стьюдента, какие еще математические методики вы применяете для проверки схожести поведения рядов?

Аватар пользователя
d__4997

Сообщение d__4997 » 28 окт 2008 10:22

Я уже говорил, что прежде чем приступить к корреляционному анализу, ряд динамики очищается от тренда. К тому же данные берутся не за один год, а как минимум за два. В идеале, конечно, за три. Так что на счет сезонности - все в порядке.
[/quote]

Димитрисус проверить на наличие сезонности - это найти корреляцию между кусками одного ряда. Берем первые 12 месяцев сравниваем со вторыми 12 месяцами если ряды коррелируют причем с коэффициентом больше чем 0,7 тогда она есть.

Пример: Всплески в продажах похожих товаров могут быть обусловлены приходом данного товара от одного и того же поставщика в одни и те же временные промежутки. Но сезонностью там и не пахнет. У вас же они попадут в одну из групп сезонности.

Я почему спрашиваю, достоинство вашего метода в автоматизации. И мне кажется в какой то момент надо вставить проверку на сезонность, у вас же происходит проверка на синхронность продаж.

П.С.Вы алгоритм для акссеса сами писали?

Аватар пользователя
Роман Бодряков
Авторитет
Авторитет
Сообщений: 5253
Зарегистрирован: 19 апр 2004 03:00
Имя: Роман
Фамилия: Бодряков
Должность: Ген.Директор в кубе - наноолигарх
Откуда: Россия

Сообщение Роман Бодряков » 28 окт 2008 12:58

Санта,
Расскажи подробней как ты Стьюдента приклеиваешь к сезонности.
Есть такие решения, после принятия которых тараканы в голове аплодируют стоя! И просят повторить "НА БИС!!!"
Образование круче не у того, кто больше Знает, а у того, кто хоть что-то умеет.

Аватар пользователя
Santa83

Сообщение Santa83 » 28 окт 2008 15:53

Roman писал(а):Санта,
Расскажи подробней как ты Стьюдента приклеиваешь к сезонности.


В том то и дело, что я пока ничего не ни к чему не приклеивал.

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

А критерий Стьюдента упомянул Александр, где то в начале поста. Насколько он применим или нет еще не разбирался.


Кстати, Роман, а ты сам какую методику применяшь?

Аватар пользователя
Роман Бодряков
Авторитет
Авторитет
Сообщений: 5253
Зарегистрирован: 19 апр 2004 03:00
Имя: Роман
Фамилия: Бодряков
Должность: Ген.Директор в кубе - наноолигарх
Откуда: Россия

Сообщение Роман Бодряков » 28 окт 2008 16:22

По роду моей деятельности мне приходится действовать быстро и результативно.

Я свой ход уже описывал.
Есть такие решения, после принятия которых тараканы в голове аплодируют стоя! И просят повторить "НА БИС!!!"
Образование круче не у того, кто больше Знает, а у того, кто хоть что-то умеет.

Аватар пользователя
d__4997

Сообщение d__4997 » 28 окт 2008 17:15

Roman писал(а):Санта,
Расскажи подробней как ты Стьюдента приклеиваешь к сезонности.


Приклеиваю я. :) Делишь ряд на две части (или любое требуемое количество) и проверяешь наличие связи.
Кстати в оценке сезонности это первый шаг.


Вернуться в «Реальные задачи из жизни»

Кто сейчас на форуме

Количество пользователей, которые сейчас просматривают этот форум: CommonCrawl [Bot] и 0 гостей