Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Обучение методом обратного распространения ошибок.



Для обучения многослойной сети в 1986 г. Руммельхартом и Хинтоном (Rummelhart D.E., Hinton G.E., Williams R.J., 1986) был предложен алгоритм обратного распостранения ошибок (error back propagation). Многочисленные публикации о промышленных применениях многослойных сетей с этим алгоритмом обучения подтвердили его принципиальную работоспособность на практике.

В начале возникает резонный вопрос - а почему для обучения многослойного персептрона нельзя применить уже известное d -правило Розенблатта (см. Лекцию 4)? Ответ состоит в том, что для применения метода Розенблатта необходимо знать не только текущие выходы нейронов y, но и требуемые правильные значения Y. В случае многослойной сети эти правильные значения имеются только для нейронов выходного слоя. Требуемые значения выходов для нейронов скрытых слоев неизвестны, что и ограничивает применение d -правила.

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

Перейдем к подробному рассмотрению этого алгоритма. Для упрощения обозначений ограничимся ситуацией, когда сеть имеет только один скрытый слой. Матрицу весовых коэффициентов от входов к скрытому слою обозначим W, а матрицу весов, соединяющих скрытый и выходной слой - как V. Для индексов примем следующие обозначения: входы будем нумеровать только индексом i, элементы скрытого слоя - индексом j, а выходы, соответственно, индексом k.

Пусть сеть обучается на выборке (Xa, Ya), a =1..p. Активности нейронов будем обозначать малыми буквами y с соотвествующим индексом, а суммарные взвешенные входы нейронов - малыми буквами x.

Общая структура алгоритма аналогична рассмотренной в Лекции 4, с усложнением формул подстройки весов.

Таблица 6.1. Алгоритм обратного распространения ошибки.

Шаг 0. Начальные значения весов всех нейронов всех слоев V(t=0) и W(t=0) полагаются случайными числами.
Шаг 1. Сети предъявляется входной образ Xa, в результате формируется выходной образ y¹ Ya. При этом нейроны последовательно от слоя к слою функционируют по следующим формулам: скрытый слой выходной слой Здесь f(x) - сигмоидальная функция, определяемая по формуле (6.1)
Шаг 2. Функционал квадратичной ошибки сети для данного входного образа имеет вид: Данный функционал подлежит минимизации. Классический градиентный метод оптимизации состоит в итерационном уточнении аргумента согласно формуле: Функция ошибки в явном виде не содержит зависимости от веса Vjk, поэтому воспользуемся формулами неявного дифференцирования сложной функции: Здесь учтено полезное свойство сигмоидальной функции f(x): ее производная выражается только через само значение функции, f’(x)=f(1-f). Таким образом, все необходимые величины для подстройки весов выходного слоя V получены.
Шаг 3. На этом шаге выполняется подстройка весов скрытого слоя. Градиентный метод по-прежнему дает: Вычисления производных выполняются по тем же формулам, за исключением некоторого усложнения формулы для ошибки d j. При вычислении d j здесь и был применен принцип обратного распространения ошибки: частные производные берутся только по переменным последующего слоя. По полученным формулам модифицируются веса нейронов скрытого слоя. Если в нейронной сети имеется несколько скрытых слоев, процедура обратного распространения применяется последовательно для каждого из них, начиная со слоя, предшествующего выходному, и далее до слоя, следующего за входным. При этом формулы сохраняют свой вид с заменой элементов выходного слоя на элементы соотвествующего скрытого слоя.
Шаг 4. Шаги 1-3 повторяются для всех обучающих векторов. Обучение завершается по достижении малой полной ошибки или максимально допустимого числа итераций, как и в методе обучения Розенблатта.

Как видно из описания шагов 2-3, обучение сводится к решению задачи оптимизации функционала ошибки градиентным методом. Вся “соль” обратного распространения ошибки состоит в том, что для ее оценки для нейронов скрытых слоев можно принять взвешенную сумму ошибок последующего слоя.

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

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

В завершение лекции сделаем замечание относительно настройки порогов нейронов. Легко заметить, что порог нейрона может быть сделан эквивалентным дополнительному весу, соединенному с фиктивным входом, равным -1. Действительно, выбирая W0=Q, x0=-1 и начиная суммирование с нуля, можно рассматривать нейрон с нулевым порогом и одним дополнительным входом:

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

ЛЕКЦИЯ 8. Модель Хопфилда.

Конфигурация и устойчивость сетей с обратными связями. Модель Хопфилда. Правило обучения Хебба. Ассоциативная память. Распознавание образов.

Модель Хопфилда (J.J.Hopfield, 1982) занимает особое место в ряду нейросетевых моделей. В ней впервые удалось установить связь между нелинейными динамическими системами и нейронными сетями. Образы памяти сети соответствуют устойчивым предельным точкам (аттракторам) динамической системы. Особенно важной оказалась возможность переноса математического аппарата теории нелинейных динамических систем (и статистической физики вообще) на нейронные сети. При этом появилась возможность теоретически оценить об'ем памяти сети Хопфилда, определить область параметров сети, в которой достигается наилучшее функционирование.

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

Сети с обратными связями

Рассмотренный нами ранее ПЕРСЕПТРОН относится к классу сетей с направленным потоком распространения информации и не содержит обратных связей. На этапе функционирования каждый нейрон выполняет свою функцию - передачу возбуждения другим нейронам - ровно один раз. Динамика состояний нейронов является безитерационной.

Несколько более сложной является динамика в сети Кохонена. Конкурентное соревнование нейронов достигается путем итераций, в процессе которых информация многократно передается между нейронами.

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

Рис. 8.1. Фрагменты сетей с прямым рапространением (A) и с наличием обратных связей (B).

Безитерационная динамика состояний нейронов является, очевидно, всегда устойчивой. Обратные связи могут приводить к возникновению неустойчивостей, подобно тем, которые возникают в усилительных радитехнических системах при положительной обратной связи. В нейронных сетях неустойчивость проявляется в блуждающей смене состояний нейронов, не приводящей к возникновению стационарных состояний. В общем случае ответ на вопрос об устойчивости динамики произвольной системы с обратными связями крайне сложен и до настоящего времени является открытым.

Ниже мы остановимся на важном частном случае нейросетевой архитектуры, для которой свойства устойчивости подробно исследованы.


Поделиться:



Популярное:

Последнее изменение этой страницы: 2016-07-14; Просмотров: 922; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.02 с.)
Главная | Случайная страница | Обратная связь