О компании |  ПартнерыЦены |  Семинары  | Библиотека  | Контакты
BIGroup Labs

 Поиск по сайту
 
  Главная страница |Решения |Технологии |Услуги |Продукция |Клиенты
  Главная страница   >      Аналитиков и маркетологов   >      Прогнозирование   >    Deductor 4 – прогнозировани

Прогнозирование.
Deductor 4 – прогнозировани

Deductor 4 – прогнозирование

Задача прогнозирования

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

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

Прогнозирование в Deductor

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

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

Последовательность работы:

Выдвижение гипотез:

Выдвижение гипотез производится экспертом, полагающимся, в значительной степени, на свой опыт и интуицию. Но в Deductor имеются инструменты, используемые для разведочного анализа – первичной проверки гипотез:

  • Оценка значимости факторов
  • Автокорреляция
  • Многомерный анализ
  • Диаграммы и гистограммы

Сбор данных:

В качестве места хранения данных для прогнозирования лучше всего использовать многомерное хранилище данных – Deductor Warehouse включенное в состав системы.

Deductor обеспечивает:

  • Централизованное хранение
  • Целостность и непротиворечивость данных
  • Высокую скорость извлечения информации
  • Автоматическое обновление
  • Удобные механизмы работы

Минимальные требования к объему:

    1. При прогнозирование на 1-2 месяца вперед, данные за 2 года с разбивкой по месяцам.
    2. При прогнозирование на 2-3 недели вперед, данные за 1,5 года с разбивкой по неделям.

Очистка данных:

Очистка данных – очень важный этап обработки. В реальных данных почти всегда присутствуют пропуски, аномалии и т.п., что значительно ухудшает качество выборки.

Deductor содержит набор инструментов для решения задач очистки данных:

  • Редактирование аномалий
  • Заполнение пропусков
  • Очистка от шумов
  • Сглаживание
  • Редактирование дубликатов и противоречий

Трансформация данных:

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

Deductor Studio реализованы следующие механизмы трансформации:

  • Преобразование к скользящему окну
  • Квантование
  • Группировка
  • Сортировка
  • Приведение типов

Построение моделей:

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

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

Прогнозирование:

После получения прогностической модели можно получить, собственно, сам прогноз. Для этого можно, например, воспользоваться визуализатором «что-если».

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

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

Поддержка работоспособности:

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

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

Законченное аналитическое решение:

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

Задача:

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

Алгоритм решения:

1.Выдвижение гипотез:

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

2.Сбор данных:

Данные должны быть представлены в виде обычной таблицы с полями:

   |  Дата  |  Группа  |  Товар  |  Количество проданного товара. |

Идеальным вариантом является тот, когда товары группируются в смысле их взаимозаменяемости, если представление данных в таком формате представляет затруднение, то достаточно того распределения товаров по группам, которое принято в магазине, выделить взаимозаменяемые товары можно и средствами Deductor

3.Очистка данных:

Изначально прогноз будет строиться не по каждому товару в отдельности, а по группе товаров, с последующей их разгруппировкой пропорциональной вкладу каждого товара за последние несколько недель. Т.е. если например за последние три недели продали 100 товаров данной группы(состоящей из трех товаров), товар1-30, товар2-50, товар3-20, а построенная модель по группе выдает прогноз на следующую неделю-10, то после разгруппировки получаем, что в следующую неделю продадут: товар1-3, товар2-5, товар3-2.

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

  • Итак, очищаем общие суммовые продажи по группе.
  • Редактируем аномалии и удаляем шумы.

4.Трансформация данных:

Преобразуем данные к скользящему окну.

5. Построение модели:

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

6.Прогноз:

Получаем прогнозное значение.

Решение:

Данные о продажах по дням могут находится либо во внешнем источнике данных, либо в строенном в Deductor хранилище данных(после закачки их туда), что является более предпочтительным с точки зрения скорости работы Deductor

Важными данными для построения прогноза объемов продаж – это статистика продаж за предыдущие периоды. Такая информация есть в нашем хранилище.

Для начала нужно импортировать данные из хранилища в программу. Нас интересуют не все данные, а только количество продаваемого товара в разрезе даты и товара. Вызовем мастер импорта и выберем в нем источник «Deductor Warehouse». Отметим загружаемые измерения и факты. После импорта озаглавим узел «Дата, товар, количество».

Рассматривать продажи по дням не имеет смысла, так как каждый день может очень сильно отличаться от другого по объему продаж. Но продажи в среднем по неделям или по месяцам отличаются не сильно. Поэтому вторым шагом будет преобразование даты к неделе. В таблице появится новый столбец «Дата (Год+Неделя)».

Прогнозировать объемы по разным группам товаров не имеет смысла, так как тенденция продаж разных групп товаров может очень сильно отличаться. Поэтому сделаем фильтрацию по каждой группе товара. Для этого к узлу с преобразованием даты по неделям нужно применить обработку «Фильтрация», указав условие, например, «Группа = Группа 1».

Затем следует сгруппировать количество объемов продаж по неделям. Для этого применим обработку «Группировка» к узлу с фильтрацией по группе товара. В качестве измерения укажем поле «Дата (Год+Неделя)», в качестве факта – поле «Количество». Таким образом, будет получена таблица с продажами товара группы 1 сгруппированные по неделям. Кривую продаж можно посмотреть на диаграмме.

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

Теперь есть достаточно хорошо подготовленные для построения модели данные. Но нам необходимо определить сезонность продаж данной группы товара. Для этого служит обработка «Автокорреляция» применим ее к узлу с парциальной предобработкой. Будем искать зависимости в поле «Количество». Такую зависимость следует искать, например, в течение 60 недель, то есть немного больше одного года. Для этого укажем количество отсчетов равное 60. Полученную автокорреляционную функцию можно посмотреть на диаграмме.

На ней видна обратная зависимость в течение примерно 28 недель и прямая зависимость в течение 53 недель, что соответствует половине года и году. Для построения модели будем использовать годовую зависимость объемов продаж.

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

 

| Дата (Год+Неделя) | Количество-53 | Количество-52 | Количество-1 | Количество | Количество+1 |

|Неделя | Объем продаж год назад | Объем продаж предыдущие две недели | Прогнозиру-емый объем продаж|

Это ни что иное, как преобразование столбца «Количество» к скользящему окну. Вызовем обработку «Скользящее окно» к узлу с парциальной обработкой. Укажем столбец «Количество» используемым и для него глубину равной 54 и горизонт 1. Полученная таблица будет содержать столбцы не только указанные выше, но и столбцы «Количество-2» – «Количество-51».

Построим модель, используя линейную регрессию. Вызовем для узла с преобразованием к скользящему окну обработку «Линейная регрессия». Поле «Дата (Год+Неделя)» укажем информационным, чтобы оно не участвовало в построении модели, но присутствовало в результирующей таблице. Поля «Количество-53», «Количество-52», «Количество-1» и «Количество-51» укажем неиспользуемыми или информационными. На этом настройка линейной регрессии завершена. После построения модели можно посмотреть на диаграмме рассеяния качество построенной модели.

Теперь у нас есть модель и можно с ее помощью узнать прогнозные значения объемов продаж на небольшой промежуток времени. Для этого вызовем обработку «Прогнозирование» для узла линейной регрессии и укажем в ней горизонт прогноза, равный четырем. То есть построим прогноз на 4 недели вперед. После построения прогноза результат можно посмотреть в таблице либо на диаграмме прогноза. В таблице будет содержаться примерно следующее.

Дата (Год + Неделя)

Количество-53

Количество-52

Количество

Количество+1

Шаг прогноза

20.09.2004 0:00

23,41

27,61

18,97

23,62

 

27.09.2004 0:00

27,61

31,68

23,62

24,41

 

04.10.2004 0:00

31,68

28,34

24,41

19,09

 

04.10.2004 0:00

28,34

27,12

19,09

18,86

1

04.10.2004 0:00

27,12

33,43

18,86

23,83

2

04.10.2004 0:00

33,43

36,63

23,83

22,48

3

04.10.2004 0:00

36,63

33,37

22,48

16,98

4

 

В поле «Количество+1» в последних четырех строках содержатся прогнозные значения количества продаж на четыре недели в сумме по группе товара номер 1. На диаграмме прогноза можно посмотреть будущую тенденцию продаж.

 

 

 

Было бы интересно узнать прогноз объемов не по группе товара, а по каждому товару в группе. Это можно сделать на предположении, что пропорциональный вклад каждого товара в объемы продаж в прошлом сохранится и в будущем. Применим к узлу прогнозирования обработку разгруппировки. Укажем все поля информационными, а поле «Количество+1» – фактом. В поле «Исходный столбец» выберем «Количество», в поле «Восстановить» выберем «Наименование». Установим переключатель «По последним значениям». В поле «Управляющий столбец» выберем «Дата (Год+Неделя)», а в поле «Количество значений» укажем 5. То есть будем считать пропорциональный вклад каждого товара в общее количество за последние 5 недель и использовать эту пропорцию для восстановления количества каждого товара группы. Наглядно результаты разгруппировки можно посмотреть с помощью куба. Выберем визуализатор «Куб» и в его настройках укажем измерения «Наименование», «Шаг прогноза» и факт «Количество+1».

В результате получим таблицу.

 

 

1

2

3

4

Итого

Товар 1

0,87

1,10

1,04

0,78

3,79

Товар 10

1,02

1,28

1,21

0,91

4,42

Товар 11

0,87

1,10

1,04

0,78

3,79

Товар 12

0,73

0,92

0,86

0,65

3,16

Товар 2

1,31

1,65

1,56

1,18

5,69

Товар 4

1,74

2,20

2,08

1,57

7,58

Товар 5

4,64

5,87

5,53

4,18

20,22

Товар 6

1,45

1,83

1,73

1,31

6,32

Товар 7

3,05

3,85

3,63

2,74

13,27

Товар 8

1,74

2,20

2,08

1,57

7,58

Товар 9

1,45

1,83

1,73

1,31

6,32

Итого

18,86

23,83

22,48

16,98

82,15

 

Как видно, значения «итого» для каждого шага прогноза совпадают со значениями из таблицы прогноза. Теперь можно сделать вывод, какой товар необходим на складе в течение следующих четырех недель. Это важный шаг на пути решения задачи оптимизации складов. Однако Deductor Studio не решает задачи оптимизации. Это необходимо делать в других программах, которые используют прогнозные значения для решения задачи оптимизации. Таким образом, возникает необходимость экспортировать результаты прогноза во внешний файл. Но при прогнозировании мы добавили в результирующую выборку исходные данные. Это те строки таблицы, где значение поля «Шаг прогноза» равен пустому значению. Вызовем для узла разгруппировки обработку фильтрации и укажем в ней условие: «Шаг прогноза не пустой». В результате будет получена таблица, готовая для экспорта. Вызовем для этого последнего узла фильтрации мастер экспорта и выберем источник, например, «Microsoft Excel». Далее следует указать экспортируемые поля таблицы. Укажем поля: «Количество+1», «Шаг прогноза» и «Наименование». В итоге будет сформирован файл Excel с прогнозными значениями количества продаваемого товара на следующие 4 недели.

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

 

Deductor – аналитическая платформа:

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

Deductor предоставляет аналитикам инструментальные средства, необходимые для решения самых разнообразных аналитических задач: аналитическая отчетность, прогнозирование, сегментация, поиск закономерностей – эти и другие задачи, где применяются такие методики анализа, как OLAP, Knowledge Discovery in Databases и Data Mining

Deductor является идеальной платформой для создания систем поддержки принятий решений.

 

BaseGroup Labs.


Задайте вопрос ›
Внесите изменения ›
Обсудите статью ›



Выскажите свое мнение о статье

Ваше имя:
E-mail:
Профессия:
Комментарий:
 


Библиотека | Партнеры | Семинары | Контакты | Карта сайта
© 2012, BIGroup Labs.    Лаборатория Интеллектуального Бизнеса - 2004г.