Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
attachments_16-10-2012_20-40-13 / Лаб 3 Прогнозирование временных рядов в пакете ST NSS.doc
Скачиваний:
21
Добавлен:
09.04.2015
Размер:
2.19 Mб
Скачать

23

Лабораторная по прогнозированию временных рядов в пакете ST Neural Networks NSS

Решение задачи прогнозирования временного ряда с помощью многослойного персептрона.

Постановка задачи.

- Накоплен массив цен на книги определённого формата за несколько лет.

- Цены фиксировались за каждый месяц периода.

- Используя предыдущие значения цен на книги, спрогнозировать значение цены на 6 месяцев вперёд и оценить точность прогноза.

- провести сравнительный анализ результатов прогнозирования, полученных с помощью разных типов сетей

- Использовать для этого модель временного ряда.

План работы.

А) Решить задачу с помощью Конструктора сетей:

  • для 3-хслойного персептрона с 5 нейронами на скрытом слое

  • для линейной сети

Б)Решить задачу с помощью Мастера для:

  • 3-х слойного персептрона и 5-ю нейронами на скрытом слое

  • 4-х слойного персептрона

  • Линейной сети

  • РБФ сети

Для пп.А) и Б) выполнить следующее:

Стартовое окно Нейронных сетей:

1) Выбрать задачу Временные ряды – см. п. 3.1 Отчёта.

2) Задать типы переменных - см. п. 3.2 Отчёта.

3) Выбрать режим Конструктора (Мастера)

Окно Конструктора сети (Custom Network Designer)

4)Задать тип сети (Quick) - см. п. 3.3 Отчёта.

5)Задать число слоёв и число нейронов на слоях (Units) - - см. п. 3.3 Отчёта.

6)Для обучения сети- см. п. 3.3 Отчёта. :

  • Параметр Временное окно(Steps Used To Predict) задать равным 6 или 12.

  • Параметр Прогноз (Prediced X steps ahead) задать равным 1.

7)Отследить в окне редактора сети задаваемые по умолчанию (кнопка Edit) - см. п. 3.4 Отчёта.:

  • Синаптической функции

  • Функции активации

Окно обучения сети:

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

9)Познакомиться с вкладкой BP(1) – где задаются параметры обучения многослойного персептрона (скорость обучения и момент инерции) - см. п. 3.5 Отчёта.

10)Познакомиться с вкладкой End – где задаются параметры останова обучения- см. п. 3.6 Отчёта.

11) Познакомиться с вкладкой Quick – где задаются алгоритмы обучения на 2-х этапах обучения - см. п. 3.7 Отчёта.

12) Кнопка Sampling – задаём число наблюдения для обучающей, Контрольной и тестовой выборки - см. п. 3.8 Отчёта.

13) Обучить сеть. Понаблюдать за графиками ошибок в процессе обучения.

График ошибок в процессе обучения:

Выйти в окно результатов – нажав кнопку ОК c графиком

График ошибок после обучения- см. п. 3.9 Отчёта. :

Окно Результатов.

14)Получить рисунок обученной сети. Объяснить её конфигурацию (число нейронов на каждом слое) - см. п. 3.9а Отчёта.

15) Получить Таблицу регрессии (Descriptive Statistics)

Проанализировать отношение стандартных отношений и коэффициент корреляции- см. п. 3.10 Отчёта..

16) Построить график зависимости Предсказанных значений от Наблюдаемых (Вкладка Plot). Проанализировать его- см. п. 3.11 Отчёта..

17)Получить Таблицу Предсказанных значений (Вкладка Predicted)

18)Построить Проекцию временного ряда для разных значений параметров (Вкладка Advanced – Кнопка Time Series Projection - Time Series Graph ) - см. п. 3.11 Отчёта и п. 3.13 Отчёта :

  • Начального наблюдения проекции

  • Длины проекции

Выводить на одном рисунке 2 графика:

  • наблюдаемых и

  • прогнозируемых значений сети

19)Вывести Таблицу значений проекции ряда и проанализировать её (Вкладка Advanced – Кнопка Time Series Projection- Time Series Spreadsheet ) - см. п. 3.14 Отчёта:

.

Сравнить прогнозируемые значения с наблюдаемыми для разных значений параметра “Длина проекции”

20)Сравнить предсказания разных сетей (линейной, РБФ, МЛП) для разных значений этого параметра.

Ход работы.

Запустить программу Статистика 7.

Загрузить файл данных.

Запустить Модуль Нейронные сети.

Стартовое окно Нейронных сетей:

1)Выбрать тип задачи Временные ряды- см. п. 3.1 Отчёта :

  • Во вкладке Quick ( Быстрй) в разделе Problem Type(Класс задач)Time Series

2)Вызвать окно для выбора типа переменных:

  • кнопка Variables =>

  • появляется диалоговое окно Select input (independent), output (dependent) and selector variables

Задать типы переменных (одна и та же переменная будет входной и выходной) - см. п. 3.2 Отчёта:

  • Continuous outputs ( Непрерывные выходящие) - Цена

  • Continuous inputs ( Непрерывные входящие) - Цена

3)Задачу будем решать с помощью инструмента Конструктор сетей.

Раздел Select analysis - Выбор анализ:

Доступны 2 опции. Выбрать:

  • Custom Network Designer

Нажмем кнопку OK.

Окно Конструктора сети (Custom Network Designer)

4)Задать тип сети (Quick) - выбрать Multiplayer Perceptron - см. п. 3.3 Отчёта

5)Задать число слоёв и число нейронов на слоях (Вкладка Units)

  • Зададим число скрытых слоёв – 1

  • Число нейронов на скрытом слое – 5

6)Задать параметры Временного ряда – вкладка Time Serie s- см. п. 3.3 Отчёта

:

Прогноз вперёд (Steps Used To Predict )– 1

Временное окно(Prediced X steps ahead) – 12 (Так как информация дана помесячно на несколько лет)

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

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

Поэтому первые 12 наблюдений не игнорир-ся, а явл-ся входами для 1-го блока данных. Выходной переменной явл-ся 13-я переменная ряда.

Т.о. на каждому наблюдению соответствует блок из 13-ти данных.

7)Отследить в окне редактора сети (кнопка Edit) задаваемые по умолчанию:

  • Синаптической функции

  • Функции активации

7) Отследить в окне редактора сети задаваемые по умолчанию:

  • Синаптической функции

  • Функции активации

Посмотреть варианты этих функций. - см. п. 3.4 Отчёта

Войдём в окно Редактора сети – кнопка Edit:

Во вкладке Layers (слои) – задаются синаптическая и активационная функции.

Переход в Окно Обучение многослойного персептрона из окна конструктора: кнопка ОК

Окно обучения сети (Training Multiplayer Perceptron):

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

  • Задать интерактивный режим – вкладка Interactive окна Train Multiplayer… (Обучение многослойного персептрона):

  • Установить Training and Selection Error - график обучающей и контрольной ошибок

9)Познакомиться с вкладкой bp(1) – где задаются параметры обучения многослойного персептрона (скорость обучения и момент инерции) - см. П. 3.5 Отчёта

10)Познакомиться с вкладкой End – где задаются параметры останова обучения

Задать ошибку можно во вкладке END- см. п. 3.6 Отчёта

:

11) Познакомиться с вкладкой Quick – где задаются алгоритмы обучения на 2-х этапах обучения- см. п. 3.7 Отчёта

Задать метод обучения сетиОбратного распространения:

Вкладка Quick:

12)Задать обучающее и контрольное множества - Кнопка Sampling (Выборки) – Окно выбора множеств (Sampling of Case Subset) – вкладка Quick - см. п. 3.8 Отчёта

:

Задать ( или оставить по умолчанию):

  • Обучающих наблюдений (Training) – 46

  • Контрольных (Selection) – 26

Выбрать Random (Случайное задание выборок).

Возвратиться в Окно обучения (Train Multiplayer Perceptration) – кнопка ОК.

13) Обучить сеть. Начать обучение – ОК.

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

Выйти в окно результатов – нажав кнопку ОК c графиком

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

Окно Результатов (Results).

14)Получить рисунок обученной сети. Объяснить её конфигурацию (число нейронов на каждом слое).

Вкладка Advancedкнопка Network Illustrationвкладка Illustration

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

15) Получить Таблицу регрессии (Вкладка Descriptive Statistics) - см. п. 3.10 Отчёта

Проанализировать отношение стандартных отклонений и коэффициент корреляции.

16) Построить график зависимости Предсказанных значений от Наблюдаемых (Вкладка Plot). Проанализировать его - см. п. 3.11 Отчёта.

17)Получить Таблицу Предсказанных значений (Вкладка Predicted) и проанализировать её.

18)Построить Проекцию временного ряда для разных значений параметров (Вкладка Advanced – Кнопка Time Series Projection - вкладка Quick ):

  • Задать Длину проекции (Length of projection)

  • Задать номер наблюдения, С которого будем строить Проекцию (Case Starts From)

Рассуждения:

    • У нас всего 84 наблюдения

    • 12 первых удаляются при процессировании

    • Остаётся 72

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

  • Зададим длину проекции – 70

  • Начальное наблюдение – 21

Выводить на одном рисунке 2 графика:

  • реальных и

  • прогнозируемых значений сети

Задать их отображение на графике (Вкладка Advanced –“Галочка” в Include observed values in graph/spreadsheet)

Построим График Временного ряда – кнопка Time Series Graph:

На графике изображены как заданные значения (Var1), так и предсказанные сетью (Var1.10).

18.а) Изменять значения начальной точки построения Проекции ряда и Длины Проекции ряда и получать графики Проекций и наблюдаемых значений. Например:

Начальная точка Проекции ряда

Длина Проекции ряда

13

6

13

80

25

6

25

70

61

32

61

6

70

22

80

12

Учитывать, что требуется прогноз на 6 месяцев будущего периода.

Проанализировать- см. п. 3.12 Отчёта - см. п. 3.13 Отчёта.

19)Вывести Таблицу значений проекции ряда и проанализировать её (Вкладка Advanced – Кнопка Time Series Projection- Time Series Spreadsheet ) - см. п. 3.14 Отчёта:

Сравнить прогнозируемые значения с наблюдаемыми для разных значений параметра “Длина проекции”

В Таблице 2 столбца:

  • 1 столбец (Цена) – реальные значения

  • 2 столбец (Цена1) – предсказанные в результате проекции временного ряда

20)Сравнить предсказания разных сетей (линейной, РБФ, МЛП) для разных значений этого параметра (обучение Мастером сетей).

Соседние файлы в папке attachments_16-10-2012_20-40-13