Хайкин С. - Нейронные сети (778923), страница 47
Текст из файла (страница 47)
2. Если нейрон ) — скрытый, то градиент б,(л) равен произведению производной р' (и, (и)) иа взвешенную сумму градиентов, вычисленных для нейронов следующего скрытого или выходного слоя, которые непосредственно связаны с данным нейроном 7' (см. выражение (4.24)). Два прохода вычислений у,(') =ф(с,( )) (4.2б) где и,(л) — иидуцироваииое локальное поле нейрона ); определяемое выражением е,(п) = 2 ш,з(п)У,(п), е=в (4.27) При использовании алгоритма обратного распространения различают два прохода, выполняемых в процессе вычислений. Первый проход называется прямым, второй— обратным. При прямом проходе ((огигаг(1 рава) сииаптические веса остаются неизменными во всей сети, а функциональные сигналы вычисляются последовательно, от нейрона к нейрону.
Функциональный сигнал иа выходе нейрона з вычисляется по формуле 4.3. Апгорнтм обратного распространения 333 где т — общее число входов (за исключением порога) нейрона з; за,,(п) — сииаптический вес, соединяющий нейроны з и з'; у;(и) — входной сигнал нейрона з или выходной сигнал нейрона г. Если нейрон ) расположен в первом скрытом слое сети, то т = тш а индекс ( относится к (-му входному терминалу сети, для которого можно записать у,(п) = х,(п), (4.28) где х,(п) — г-й элемент входного вектора (образа). С другой стороны, если нейрон з расположен в выходном слое сети, то т = ть, а индекс т' означает з-й выходной терминал сети, для которого можно записать у,(п) = о,(п), где о (п) — у-й элемент выходного вектора.
Выходной сигнал сравнивается с желаемым откликом г( (и), в результате чего вычисляется сигнал ошибки е (и) для з-го выходного нейрона. Таким образом, прямая фаза вычислений начинается с представления входного вектора первому скрытому слою сети и завершается в последнем слое вычислением сигнала ошибки для каждого нейрона этого слоя. Обратный проход начинается с выходного слоя предъявлением ему сигнала ошибки, который передается справа налево от слоя к слою с параллельным вычислением локального градиента для каждого нейрона. Этот рекурсивный процесс предполагает изменение сииаптических весов в соответствии с дельта-правилом (4.25).
Для нейрона, расположенного в выходном слое, локальный градиент равен соответствующему сигналу ошибки, умноженному на первую производную нелинейной функции активации. Затем соотношение (4.25) используется для вычисления изменений весов, связанных с выходным слоем нейронов. Зная локальные градиенты для всех нейронов выходного слоя, с помощью (4.24) можно вычислить локальные градиенты всех нейронов предыдущего слоя, а значит, и величину коррекции весов связей с этим слоем. Такие вычисления проводятся для всех слоев в обратном направлении. Заметим, что после предъявления очередного обучающего примера ои "фиксируется" иа все время прямого и обратного проходов. функция активации Вычисление локального градиента Ь для каждого нейрона многослойного персептроиа требует знания производной функции активации д( ), связанной с этим нейроном. Для существования такой производной функция активации должна быть непрерывной.
Другими словами, дифференцируеность является единственным требованием, которому должна удовлетворять функция активации. Примером непрерывно диффереицируемой нелинейной функции активации, которая часто используется в многослойных персептроиах, является сигноидальиая нелинейная функция (з)8гпо)да! попИпеапгу), две формы которой описываются ниже. 234 Глава 4. Мноюслойный пврсвптрон 1. Логистическая функция Эта форма сигмоидальиой нелинейности в общем виде определяется следующим образом: 1 ц(и;(п)) =, а ) О, — оо < с,(п) <+ос, (4.30) 1+ ехр( — ас,(п)) ' где е, (п) — иидуцированиое локальное поле нейрона з.
Из (4.30) видно, что ампли- туда выходного сигнала нейрона с такой активациоииой функцией лежит в диапазоне 0< у <1. Дифференцируя (4.30) по и, (и), получим: а ехр( — аи, (и) ) [1+ ехр( — ает(п))]з (4,31) Так как уз(п) = <рт(и (п)), то можно избавиться от экспоненты ехр( — ат (и)) в вы- ражении (4.31) и представить производную функции активации в следующем виде: р,'(ст( )) = ау (п)[1 — у.(п)]. (4.32) Для нейрона т', расположенного в выходном слое, у (п) = от(п). Отсюда локальный градиент нейрона т' можно выразить следующим образом: Ь,(п) = е,(п)<р',.(сз(п)) = а[4,(п) — о,(п)]о,(п)[1 — о,(п)], (4.33) где о.
(п) — функциональный сигнал иа выходе нейронами; дт(п) — его желаемый сиг- нал. С другой стороны, для произвольного скрытого нейрона з локальный градиент можно выразить так: Ь,(п) = у,'.(с;(п))~~~ Ь„(п)ш„,(п) = ау,(п)[1 — уз(п)]~~> Ьь(п)ш„,(п). (4.34) Обратите внимание, что, согласно выражению (4.32), производная гр',(е.
(и)) достигает своего максимального значения при у (и) =0,5, а минимального (нуля)— при ут(п) =0 и у,(п) = 1,0. Так как величина коррекции сииаптических весов в сети пропорциональна производной гр',. (с (и) ), то для максимального изменения сииаптических весов нейрона его функциональные сигналы (вычислениые в соответствии с сигмоидальиой функцией) должны находиться в середине диапазона. Согласно [914), именно это свойство алгоритма обратного распространения вносит наибольший вклад в его устойчивость как алгоритма обучения. 4.3. Апгоритм обратного распространения 236 2. Функция гиперболического тангенса Еще одной часто используемой формой сигмоидальиой нелинейности является функ- ция гиперболичесюго таитеиса, которая в общем виде описывается выражением ~рт(от(п)) = ат)т(Ьот(п)), (а, Ь) > О, (4.35) где а и Ь вЂ” юистаиты. В действительности функция гиперболического таигеиса явля- ется ие более чем логистической функцией, только масштабироваииой и смещенной.
Ее производная по аргументу от(п) определяется следующим образом: гр,'(о (и)) = аЬ вес)з (Ьот(п)) = аЬ(1 — т)т (Ьо,(п))) = Ь = — [а — у,(п)[[а+ у,(п)). (4.36) Для нейрона 3, расположенного в выходном слое, локальный градиент будет иметь вид Ь,(п) е.(п) р'(о.(п)) = — [г(.(п) — о (п)][а — о.(п))[а+ о (и)). (4.37) Ь Для нейрона т', расположенного в скрытом слое, локальный градиент приобретает вид Ь,(п) = е'.(о (п)) ~~> Ьь(п)шьт(п) = Ь = — [а — у (п)[[а+у (п)[~~~ Ьь(п)гаго(п). а ь (4.38) Используя формулы (4.33) и (4.34) для логистической функции и формулы (4.37) и (4.38) для гиперболического таигеиса, можно вычислить локальный градиент даже без явного знания активациоииой функции. Скорость обучения Алгоритм обратного распространения обеспечивает построение в пространстве весов "аппроксимации" для траектории, вычисляемой методом наискорейшего спуска.
Чем меньше параметр скорости обучения т), тем меньше корректировка сииаптических весов, осуществляемая иа каждой итерации, и тем более гладкой является траектория в пространстве весов. Однако это улучшение происходит за счет замедления процесса обучения. С другой стороны, если увеличить параметр т) для повышения скорости обучения, то результирующие большие изменения сииаптических весов могут привести систему в неустойчивое состояние. Простейшим способом повышения скорости обучения без потери устойчивости является изменение дельта-правила (4.13) за счет 236 Глава 4. Многослойный персептрои б(л) у,(и) Рис.
4.6. Граф прохождения сигнала, иллюстрирующий эффект по- стоянной момента а Ьид(и -!) Ьиэ(л) добавления к нему момента инерцииз [914): Ьшл(п) = а(зшл(п — 1) + )]бу(п)уг(п), (4.39) где а — как правило, положительное значение, называемое постоянной момента (пюшеп(шп сопя(ап!). Как показано на рис. 4.б, она является управляющим воздействием в контуре обратной связи для Ьш„(п), где е ' — оператор единичной задержки. Уравнение (4.39) называется обобн(еннмм дельта-правилом~ (яелега!]яег[ г[е](а гп1е).
При а =0 оно вырождается в обычное дельта-правило. Для того чтобы оценить влияние последовательности представления обучающих примеров на синаптические веса в зависимости от константы а, перепишем (4.39) в виде временного ряда с индексом 8. Значение индекса Ф будет изменяться от нуля до текущего значения п. При этом выражение (4.39) можно рассматривать как разностное уравнение первого порядка для коррекции весов Ьшуг(п). Решая это уравнение относительно Ьшгг(п), получим временной ряд длины п + 1: Ьш,г(п) = т]~~ а" 'бу(8)уг(8).
г=о (4.40) Из уравнений (4.11) и (4.14) видно, что произведение Ь (п)уг(п) = — дЕ(п)/д(егг(п). Следовательно, соотношение (4.40) можно переписать в эквивалентной форме: -г дЕ(~) -"(п)=-~Х -д.„) г=о (4.4! ) з Для частного случая алгоритма смет было показано, что использование постоянной момента и уменьшмт диапазон устойчивости параметра скорости обучения г! и может привести к неустойчивости, если последний выбран неверно. Более того, с увеличением значения а рассогласование возрастаес Более подробно этот вопрос описан в [908].