Представление исходных данных. Визуализация многомерных данных в среде Statistica (Лабораторная работа № 1), страница 21

Далее  через  пункт  меню  Train  -  MultilayerPerceptronBackPropagation   (Обучение – Многослойный  персептрон – Обратное  распространение)открыть  диалоговое  окно  BackPropagation   (Обратное  распространение),  которое  представлено  на  рис.8.

Рисунок  8  -  Диалоговое окно  обратного  распространения

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

Через  пункт меню  Statistics – Training  Graph …  (Статистики – График  обучения)открыть  окно  TrainingErrorGraph(График  ошибки  обучения). Этого  же можно достичь,  нажав  специальную  кнопку  (восьмую  справа  в  верхнем  ряду). 

Передвинуть  последние  два  окна  так, чтобы  они  не  пересекались  и  были  удобно расположены.  Нажать  кнопку  Train(Обучить)в  диалоговом  окне  BackPropagation   (Обратное  распространение).   При  этом  будет  запущен  алгоритм  обучения,  а  на  графике  появится    зависимость  ошибки  от  числа  эпох  (рис.9).

Рисунок  9   -   График  ошибки  обучения

Кратко  опишем  наиболее  важные  параметры  диалогового  окна  BackPropagation   (Обратное  распространение):

· Epochs(Эпохи). Задает  число  эпох  обучения,  которые  проходятся  при  одном  нажатии  кнопки  Train(Обучить).  На  каждой  эпохе  через  сеть  пропускается  все  обучающее  множество,  и   на  основании  этих  данных  производится  коррекция весов  сети.

· LearningRate(Скорость  обучения).При  увеличении  скорости  обучения  алгоритм  работает  быстрее,  но  в  некоторых  случаях  это может  привести  к неустойчивости.

· Momentum(Инерция).Этот  параметр  ускоряет обучение  в  ситуациях,  когда  ошибка  мало  меняется,  а  также  придает  алгоритму  дополнительную  устойчивость.  Значение  этого  параметра  должно  лежать  в диапазоне  (0 …1).  В  данной задаче  выбрать  его  значение  ближе  к 1  (положим  0,9).

· ShuffleCases(Перемешивать  наблюдения).  При  выборе  этой  опции  порядок, в котором  наблюдения  подаются  на  вход  сети,   меняется  в каждой  новой  эпохе.  Это  добавляет  в  обучение  некоторый  шум,  так  что  ошибка  может   испытывать  небольшие  колебания.

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

4. Укажем  условия  остановки  алгоритма  при обучении  сети.  Самое  простое  из  таких  условий  заключается  в том,  что  обучение  должно   прекращаться  по  истечении  заданного  числа эпох  (т.е. полных  прогонов  всего  множества  обучающих  наблюдений).  Именно  такое  условие  остановки  используется  чаще  всего.

Через  меню  Train - Auxiliary - StoppingConditions(Обучение -  Дополнительные – Условия  остановки)вызывается  диалоговое  окно условий  остановки,  показанное  на  рис.10.  По  умолчанию  таким  условием  является  число  эпох,  которое  также  задано  в  диалоговых  окнах  всех  обучающих  алгоритмов.

Рисунок  10 -   Окно  условий  остановки

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

·  На текущем  наборе   данных  -  целиком на  всем  наборе  или   на  отдельных  наблюдениях.

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

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

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