Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Порядок работы с пакетом STATISTICA Neural Networks




Программным обеспечением лабораторной работы является STATISTICA Neural Networks.

Путь к программе: SNN\ Sta_snn.exe.

 
Для создания набора обучающих данных используется встроенный редактор данных (File/New/Data Set) либо загружается файл данных *.sta с диска. В случае создания файла в Microsoft Excel *.csv необходимо провести конвертирование формата данных в формат *.sta (операция проводится автоматически при открытии файла данных).

После открытия данных ST Neural Networks предложит функцию автоматического построения (окно Intelligent Problem Solver). На данном этапе необходимо отказаться от данной функции (Cancel).

При открытии нового файла в ST Neural Networks все переменные считаются входными. Необходимо указать выходные переменные. Щелкните правой кнопкой мыши в поле с названием выходных переменных в окне Data Set Editor, в появившемся контекстном меню выберите Output, цвет заголовка столбца изменится на голубой.

Все наблюдения необходимо поделить на два множества: обучающее (служит для обучения НС) и контрольное (необходимо для оценки хода обучения).

Во втором поле Cases окна Data Set Editor укажите размер контрольного множества (обычно на него отводится половина всего набора данных), нажмите Enter. Строки, содержащие контрольные наблюдения, отмечены красным цветом (находятся в конце списка наблюдений). Затем, командой перемешать (Shuffle) (Edit → Cases → Shuffle →Train and Verify), все наблюдения случайным образом распределяются по различным типам.

Для создания сети используется пункт меню File → New → Network. При этом появляется окно редактора сети (рисунок 11).

 
 
Рисунок 11 – Окно редактора сети

 


Тип сети определяется названием из выпадающего списка Туре.

Количество слоев сети задается в поле No Layers.

Количество нейронов в слое задается в окне Units.

 
Сеть с заданными параметрами и структурой создается после нажатия кнопки Create.

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

Обучение сети.

Для сетей каждого типа используются специальные алгоритмы обучения, которые находятся в пункте меню Train. При выборе алгоритма предлагается определить параметры обучения. Например, при обучении многослойного персептрона методом обратного распространения (Train → Multilayer Perceptrons → Back Propagation) задаются в соответствующем окне (рисунок 12).

 

 
 
Рисунок 12 – Окно редактора параметров обучения

 

 


Epochs - Эпохи. Задает число циклов обучения, которые проходятся при одном нажатии клавиши Train. Значение по умолчанию 100.

Learning rate - Скорость обучения, задает величину шага при изменении весов: при недостаточной скорости алгоритм медленно сходится, при увеличении скорости обучения алгоритм работает быстрее, но в некоторых задачах это может привести к неустойчивости (особенно если данные зашумлены). Для быстрого и грубого обучения подойдут значения от 0,1 до 0,6; для достижения точной сходимости требуются меньшие значения (например, 0,01 или даже 0,001, если эпох много тысяч). Иногда полезно уменьшать скорость в процессе обучения.

Momentum - Инерция. Этот параметр улучшает (ускоряет) обучение в ситуациях, когда ошибка мало меняется, а также придает алгоритму дополнительную устойчивость, помогает алгоритму не застревать в низинах и локальных минимумах. Значение этого параметра всегда должно лежать в интервале [0;1]. Часто рекомендуется использовать высокую скорость обучения в сочетании с небольшим коэффициентом инерции и наоборот.

 
Shuffle Cases - Перемешивать наблюдения. При использовании этой функции порядок, в котором наблюдения подаются на вход сети, меняется в каждой новой итерации. Это добавляет в обучение некоторый шум, так что ошибка может испытывать небольшие колебания. Однако при этом меньше вероятность того, что алгоритм «застрянет», и общие показатели его работы обычно улучшаются.

Cross-verification (кросс-проверка) - Стандартный способ обучения нейронных сетей заключается в том, что сеть обучается на одном из множеств, а на другом проверяется результат; таким образом, контрольное множество для обучения не используется. Это дает независимый способ проверки того, научилась ли сеть чему-нибудь полезному.

Reinitialize - сброс настраиваемых параметров сети, полученных на предыдущем цикле обучения, или для предыдущей сети.

Запуск алгоритма обучения производится нажатием кнопки Train. Каждый раз при нажатии кнопки Train алгоритм совершает N циклов обучения, где N – количество циклов обучения, определяемое в Epochs.

На графике (Statistics → Training Error Graph) можно наблюдать изменение ошибки сети в ходе обучения. Training Error Graph– это отображение среднеквадратичной ошибки выхода на всем обучающем множестве.

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

При изменении параметров сети перед обучением необходимо сбросить весовые коэффициенты (настроенные параметры) предыдущей сети. Для MLP–сети кнопкой Reinitialize.

В пакете STATISTICA Neural Networks предусмотрено автоматическое запоминание лучшей сети во время эксперимента. Для восстановления значений наилучшей сети вызовите меню Train→ Auxiliary→ Best Network.

 
Для просмотра результатов обучения сети используется функция Options в окне Network Set Editor, в появившемся окне нужно нажать Add (добавить). При этом в окне Network Set Editor добавится информационная строка для сети: тип сети, среднеквадратичная ошибка сети (RMS error), количество входов сети, число скрытых элементов в сети, коэффициент регрессии, использованные методы обучения (если в списке Detail shown выбрано Verbose- подробный).

Для расчета данных с помощью сети используется пункт меню Run: Data Set – расчет для всех данных исходного файла;

Single Case – расчет одного наблюдений;

One-off – расчет для произвольного входного вектора.

Расчет производится при нажатии кнопки Run соответствующего окна.

Запускается, как и в предыдущем случае, но в таблицах выводится только фактическое выходное значение.

Откройте меню Run →One-off, введите входные значения, для которых необходимо спрогнозировать выходное, нажмите Run.

Просмотр весовых коэффициентов синаптических связей нейронов возможен в окне Network Editor (рисунок 13) (Edit→Network…). Значение Theshold – пороговое значение, которое вычитается от входного значения нейрона. Значение VAR1 (на рисунке 13) – весовой коэффициент связи.

Номер слоя задается в поле Layer. В данном окне можно просмотреть (задать) функцию активации нейрона каждого слоя (поле Act fn).

 

 
 
Рисунок 13 – Окна просмотра параметров обученной сети

 


 
Просмотр выходных значений нейронов в слое в окне Network Activations (Run → Activations …). Расчет для строки данных (указана в поле Case No) по нажатию кнопки Run.

В пакете STATISTICA Neural Networks предусмотрена возможность автоматического определения структуры лучшей сети для набора обучающих данных (функция доступна через File→New→Intelleigent Problem Solver).

Алгоритм работы сети в пакете STATISTICA Neural Networks.

1 Нормализация входных данных:

,

где - коэффициент нормализации; , максимальное и минимальное значения j- й переменной обучающей выборки; i – номер строки обучающей выборки.

Примечание - Для просмотра и анализа данных обучающей выборки удобно использовать функцию Edit → Cases → Shuffle →Group Sets.

2 Распределение входного вектора на следующий слой с соответствующим весовым коэффициентом (см. Edit→Network…).

3 Вычитание порогового значения на каждом нейроне (см. Edit→Network… поле Theshold).

4 Вычисление функции активации нейрона (результат см. Run → Activations …).

5 Повтор шагов для всех слоев сети.

6 Вычисление выхода сети с учетом коэффициента нормализации:

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

 




Поделиться с друзьями:


Дата добавления: 2014-11-06; Просмотров: 775; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.019 сек.