Боровиков В.П. - SNN Нейронные сети, страница 4
Описание файла
PDF-файл из архива "Боровиков В.П. - SNN Нейронные сети", который расположен в категории "". Всё это находится в предмете "нейросетевое моделирование сложных технических систем" из 11 семестр (3 семестр магистратуры), которые можно найти в файловом архиве МГТУ им. Н.Э.Баумана. Не смотря на прямую связь этого архива с МГТУ им. Н.Э.Баумана, его также можно найти и в других разделах. Архив можно найти в разделе "книги и методические указания", в предмете "нейросетевое моделирование сложных технических систем" в общих файлах.
Просмотр PDF-файла онлайн
Текст 4 страницы из PDF
Для некоторых типов сетей (например, сетей Кохонена) большиезначения приводят к большим ошибкам, а решение о классификации принимается,если выходное значение оказалось ниже порога принятия (рис. 9.6 и 9.7).Рис. 9.6Рис. 9.7Редактор сети дает возможность менять некоторые другие параметры сети.Так, можно изменить тип функции ошибок, которая используется при обучении сетии для оценки качества ее работы. Можно также выбрать конкретные слои сети иизменить в них функции активации и постсинаптические потенциальные (PSP)функции.
Имеется также возможность добавлять или удалять элементы сети. Какправило, это можно делать только с промежуточными слоями, поскольку входные ивыходные элементы привязаны к переменным пре– и постпроцессирования (придобавления или удалении переменных будут добавляться или удалятьсясоответствующие элементы).Исключите составляют сети Кохонена, где можно добавлять и удалятьвыходные элементы. Чтобы добавить или удалить скрытые элементы, нужно зайтина вкладку Слои и удалить элементы скрытого слоя.
Можно также использоватьсредства вырезания, копирования и вставки столбцов таблицы весов, которуюможно редактировать на вкладке Веса. Все это позволяет экспериментировать сразличными архитектурами сетей, не создавая сеть каждый раз заново. Из сетиможно удалить некоторый слой целиком. Это требуется в редких случаях, например,для отделения препроцессирующей половины автоассоциативной сети припонижении размерности.В таблице весов показаны все веса и пороги либо для выделенного слоя, либодля всей сети. При желании веса и пороги можно редактировать непосредственно,однако это весьма нехарактерно (значения весов устанавливаются алгоритмамиобучения).
Эти данные выводятся главным образом для того, чтобы значения весовможно было переслать в другую программу для дальнейшего анализа.ОБУЧЕНИЕ СЕТЕЙПосле того, как сеть построена, ее нужно обучить на имеющихся данных. Впакете STATISTICA Нейронные сети для обучения сетей каждого типа имеютсяспециальные алгоритмы, сгруппированные по типам в меню Обучение (этипараметры доступны только при использовании Конструктора сетей).Многослойный персептронДля обучения многослойных персептронов в пакете STATISTICA Нейронныесети реализовано пять различных алгоритмов обучения. Это хорошо известныйалгоритм обратного распространения, быстрые методы второго порядка – спуск посопряженным градиентам и Левенберга–Маркара, а также методы быстрогораспространения и «дельта–дельта с чертой» (представляющие собой вариацииметода обратного распространения, которые в некоторых случаях работаютбыстрее).
Все эти методы являются итерационными и способы их применения вомногом схожи.В большинстве ситуаций следует остановиться на методе сопряженныхградиентов, так как здесь обучение происходит значительно быстрее (иногда напорядок величины), чем методом обратного распространения. Последний следуетпредпочесть только в том случае, когда в очень сложной задаче требуется быстронайти удовлетворительное решение, или когда данных очень много (порядкадесятков тысяч наблюдений) и даже есть известный их избыток.
Метод Левенберга–Маркара для некоторых типов задач может оказаться гораздо эффективнее методасопряженных градиентов, но его можно использовать только в сетях с однимвыходом, среднеквадратичной функцией ошибок и не очень большим числом весов,так что фактически область его применения ограничивается небольшими по объемузадачами регрессии.Итерационное обучениеАлгоритм итерационного обучения последовательно проходит ряд такназываемых эпох, на каждой из которых на вход сети подается – наблюдение занаблюдением – весь набор обучающих данных, вычисляются ошибки и по нимкорректируются веса сети. Алгоритмы этого класса подвержены нежелательномуявлению переобучения (когда сеть хорошо учится выдавать те же выходныезначения, что и в обучающем множестве, но оказывается неспособной обобщитьзакономерность на новые данные).
Поэтому качество работы сети следует проверятьна каждой эпохе с помощью специального контрольного множества (кросс–проверка).За ходом обучения можно следить в окне График ошибки обучения, где награфике изображается среднеквадратичная ошибка на обучающем множестве наданной эпохе. В случае, если включена кросс–проверка, выводится такжесреднеквадратичная ошибка на контрольном множестве. С помощьюрасположенных под графиком элементов управления можно менять масштабизображения, а если график целиком не помещается в окне, под ним появляютсялинейки прокрутки (рис. 9.8).Рис. 9.8Если требуется сопоставить результаты различных прогонов обучения, тонужно нажать кнопку Дополнительно в окне обучения, а затем снова нажать кнопкуОбучить (повторное нажатие кнопки Обучить без инициализации простопродолжит обучение сети с того места, где оно было прервано).
По окончанииобучения с помощью кнопок, расположенных над полем условных обозначений,график можно переслать в систему STATISTICA (кнопка).Важно, что на графике можно легко заметить эффект переобучения. Поначалуи ошибка обучения, и контрольная ошибка убывают. С началом переобученияошибка обучения продолжает убывать, а ошибка контроля начинает расти. Ростпроверочной ошибки сигнализирует о начале переобучения и свидетельствует о том,что алгоритм обучения начинает быть деструктивным (и одновременно о том, чтоболее подходящей может оказаться сеть меньшего размера).Если наблюдается переобучение, то процедуру обучения можно прервать,нажав кнопку Стоп – Stop в окне обучения или клавишу Esc.
Можно также задатьавтоматическую остановку программы STATISTICA Нейронные сети с помощьюусловий остановки.Условия остановки задаются в одноименном окне, доступ к которомуосуществляется через меню Обучение–Окончание анализа.Кроме максимального числа эпох, отводимого на обучение (которое задаетсяна вкладке Быстрый), здесь можно потребовать, чтобы обучение прекращалось придостижении определенного уровня ошибки или когда ошибка перестаетуменьшаться на определенную величину.
Целевое значение и минимальноеуменьшение могут задаваться раздельно для ошибки обучения и контрольнойошибки.Самое лучшее средство борьбы с переобучением – задать нулевой уровеньминимального улучшения (т.е. не допускать ни малейшего ухудшения). Однако,поскольку при обучении присутствует шум, обычно не рекомендуется прекращатьобучение только потому, что на одной очередной эпохе ошибка ухудшилась.Поэтому в системе введен специальный параметр улучшения Окно, в которомзадается число эпох, на протяжении которых должно наблюдаться ухудшение, итолько после этого обучение будет остановлено.
В большинстве случаев для этогопараметра вполне подходит значение 5.Сохранение лучшей сетиНезависимо от того, применяется ли ранняя остановка, в результатепереобучения вы можете получить сеть, которая уже успела ухудшить своисвойства. В таком случае вы можете восстановить наилучшую конфигурацию сетииз всех, полученных в процессе обучения, с помощью команды Лучшая сеть (менюОбучение–Дополнительно) (рис. 9.9).Рис. 9.9Если функция Лучшая сеть включена, программа STATISTICA Нейронныесети автоматически сохраняет наилучшую из сетей, полученных в ходе обучения(по показателю контрольной ошибки).
При этом учитываются все прогоныобучения. Таким образом, программа STATISTICA Нейронные сети автоматическихранит наилучший результат всех ваших экспериментов.Можно также установить штраф за элемент (Unit Penalty) с тем, чтобы присравнении штрафовать сети с большим числом элементов (наилучшая сеть обычнопредставляет собой компромисс между качеством проверки и размером сети).Обратное распространениеПеред применением алгоритма обратного распространения необходимо задатьзначения ряда управляющих параметров. Наиболее важными управляющимипараметрами являются скорость обучения, инерция и перемешивание наблюдений впроцессе обучения (заметим здесь, что преимущество метода сопряженныхградиентов заключается не только в скорости, но и малом числе управляющихпараметров) (рис.