Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Лр №8

.doc
Скачиваний:
95
Добавлен:
24.03.2015
Размер:
792.58 Кб
Скачать

Министерство образования и науки

Российский Государственный Университет

Инновационных Технологий и Предпринимательства

Северный Филиал

«Прогнозирование продаж с помощью

с помощью линейной регрессии»

Лабораторная работа №8 по дисциплине «Информационные системы»

Принял преподаватель

______________ В.В.Дронов

"____"_________ 2010 г.

Выполнил студент группы И831

______________ Озерцов М.В.

"____"_________ 2010 г.

Великий Новгород

2010

1. Рекомендуемая литература:

- Руководство аналитика стр. 109-111 «Линейное программирование»

- Руководство аналитика стр. 108-109 «Линейная регрессия»

- http://www.basegroup.ru : Deductor – презентации – прогнозирование в Deductor`е.

2. Постановка задач прогнозирования.

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

Задача прогнозирования может возникать, например, в следующих случаях:

- оптимизация складских запасов (позволяет сократить объем товаров, хранящихся на складе до 50% и увеличить, таким образом оборачиваемость товара, освободить оборотные средства, снизить зависимость компании от кредитов) и финансовых потоков;

- бюджетирование (процесс составления и принятия бюджетов, последующий контроль за их исполнением)

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

На практике очень сложно получить качественный прогноз за один шаг. Технология включает несколько действий:

А) очистка данных от помех и искажений

Б) трансформация данных

В) построение модели

Г) решение задачи прогнозирования на построенной модели для заданного горизонта прогнозирования

Д) интерпретация результатов полученного прогноза

В Deductor заложены средства для выполнения следующих этапов решения задачи прогнозирования:

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

- Оценка значимости факторов

- Автокорреляция

- OLAР-кубы

- Диаграммы и гистограммы

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

- Удобные механизмы работы

- Централизованное хранение

- Целостность и непротиворечивость данных

- Высокую скорость извлечения информации

В) Очистка данных– очень важный этап. Deductor Studio содержит набор инструментов для решения задач очистки данных:

- Редактирование аномалий

- Заполнение пропусков

- Очистка от шумов

- Сглаживание

- Поиск дубликатов и противоречий

Г) Трансформация данных является последним шагом перед построением прогностической модели. В Deductor Studio реализованы следующие способы трансформации:

- Преобразование к скользящему окну

- Квантование

- Группировка и сортировка

- Приведение типов

Д) Преобразование к скользящему окну

Е) Построение модели (в нашем примере линейная регрессионная модель будет строиться с помощью нейронной сети)

Ж) Прогнозирование В Studio встроены следующие типы моделей:

- Пользовательские

- Классические статистические модели

- Линейная регрессия

- Нейронные сети

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

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

3. Понятие о линейной регрессионной модели.

Линейная регрессионная модель – это функция вида:

Y = а01х12х2+…+ anxn

где

х1n – значения факторов которые влияют на выходной показатель Y.

Y = Y OUT - приближенная (прогностическая оценка) величины Y при заданных значения факторов.

Если прогноз делается на основе имеющейся истории изменения Y, то в качестве xj выбираются предшествующие значения Y. Эта модель называется авторегрессионной. Для построения такой модели требуется преобразование данных к скользящему окну.

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

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

4. Технология решения задачи прогнозирования продаж в системе Deductor.

Шаг первый:

А) Запускаем мастер импорта Trade1. txt

Б) В шестом окне мастер импорта выбираем следующие параметры:

Дата:

- Тип данных – строковый

Количество:

- Тип данных - целый

- Вид данных - дискретный

- Назначение – используемое:

В) В восьмом окне мастера импорта выбираем параметры «таблица» и «диаграмма»:

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

На диаграмме видны:

А) годовая периодичность

Б) имеются малые шумы

Шаг второй:

А) Открываем мастер обработки. В первом окне выбираем пункт «Парциальная обработка»:

Б) В 4-ом окне:

Количество - отмечаем «вычитание шума»:

В) В 6-ом окне выбираем «таблицу» и «диаграмму»

В результате получается более сглаженная диаграмма:

Шаг третий – расчет автокорреляционной функции:

А) Снова запускаем мастер обработки и в первом окне выбираем пункт «Автокорреляция»:

Б) Во 2-ом окне «Количество»:

Количество отсчетов = 14:

В) В пятом окне ставим галочку у «количества», а у «лага» убираем.

В результате на диаграмме выводится автокорреляционная функция, откуда видно, что существенная корреляция имеется между у(t) и y(t-1).. y(t-5) и y(t-10). На лаге 10 имеется подъем. Можно сделать вывод, что целесообразно включить прошлые отчеты.

Шаг четвёртый:

А) Выбираем в сценариях «парциальная предобработка» и запускаем мастер обработки. В первом окне выбирается скользящее окно:

Б) Во втором окне мастера обработки «количество»:

– глубина погружения = 11

– горизонт прогнозирования = 1

В) 4-ое окно отмечаем «количество» - -10, -1,-2,-3,-4,-5 и +1:

Модель, полученная скользящим окном, дает прогноз только на один шаг вперед. Для прогноза на большее количество шагов, целесообразно построить линейную регрессионную модель, в которой учесть связи текущего значения y(t) с теми предыдущими значениями y(t-1), y(t-2)...... которые имеют высокую корреляцию с y(t):

y(t)=а0 + а1y(t-1)+а2y(t-2)+а3y(t-10) +а4y(t-11)

Эта модель будет строиться путем обучения нейронной сети, для этого на ход нейронной сети надо будет задавать 4 столбца.

Шаг пятый:

А) Открываем мастер обработки, где выбираем «нейросеть»:

Б) Второе окно мастера обработки:

- «дата» - информационное;

- «количество»: -12 – неиспользуемое, -11 – входное, -10 – входное, [-9- -5] – неиспользуемое:

В) В восьмом окне выбираем: «граф нейросети», «что-если», «таблица, диаграмма»:

Г) В девятом окне:

С помощью нейросети построено уравнение линейной регрессии.

Шаг шестой:

Для построения прогноза на большее количество шагов в Deductor`e имеется специальное средство «прогнозирование», которое работает на модели построенной с помощью нейронной сети:

А) Выбираем в сценариях нейросети и открываем мастер обработки, где выбираем средство «прогнозирование»:

Б) Во втором окне мастера обработки – «горизонт прогноза» = 3:

В) В третьем окне выбираем «диаграмму прогноза» и «таблицу»:

Г) В четвертом окне ставим галочки у «количество» и «шаг прогноза»

12