Студопедия — Алгоритм обратного распространения ошибки
Студопедия Главная Случайная страница Обратная связь

Разделы: Автомобили Астрономия Биология География Дом и сад Другие языки Другое Информатика История Культура Литература Логика Математика Медицина Металлургия Механика Образование Охрана труда Педагогика Политика Право Психология Религия Риторика Социология Спорт Строительство Технология Туризм Физика Философия Финансы Химия Черчение Экология Экономика Электроника

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






При рассмотрении различных моделей нейронов мы обсуждали основ­ные технологии их обучения. Чаще всего обучение осуществлялось следую­щим образом. Рассчитывалась сумма произведений входных сигналов на со­ответствующие им веса. Далее полученное значение подавалось на вход ис­пользуемой функции активации, на выходе которой появлялся выходной сигнал нейрона. Поскольку требуемое выходное значение нам известно (оно равно эталонному выходному значению, содержащемуся в обучающей выборке), то погрешность сигнала на выходе нейрона определяется доста­точно просто. Искомая погрешность равна разности между фактическим вы­ходным значением и эталонным значением. Аналогичным образом можно рассчитать погрешность для последнего слоя в многослойных сетях. Одна­ко в этой ситуации возникает сложность с расчетом погрешности для скры­тых слоев, поскольку учитель не знает эталонные значения на выходах рас­положенных в них нейронов. На помощь приходит наиболее распростра­ненная технология обучения многослойных нейронных сетей, называемая методом обратного распространения ошибки. Для описания этого ал­горитма необходимо формально определить соответствующую меру по­грешности. Она представляет собой функцию, в которой в роли перемен­ных выступают все веса многослойной нейронной сети. Обозначим иско­мую функцию Q(w), где w - вектор всех весов сети. В процессе обучения будем стремиться минимизировать значение Q (w) относительно вектора w. Разложим функцию Q(w) в ряд Тейлора в непосредственной близости от известного фактического решения w. Разложение в направлении р предста­вим следующим образом:

 

Q (w+p)= Q (w)+[g(w)]Tp+0,5 p TH(w)p +..., (2.95)

 

где g (w) обозначает вектор градиента, т.е.:

 

(2.96)

 

a H(w) - гессиан, т.е. матрица вторых производных:

 

(2.97)

Веса модифицируются по формуле

 

w(t+1) = w(t) + η(t)p(t), (2.98)

 

где η - коэффициент обучения (способ подбора значения этого параметра бу­дет описан несколько позднее).

Веса могут модифицироваться так долго, пока функция Q не достигнет минимума либо ее значение не станет меньше априори заданного порога. Та­ким образом, задача сводится к поиску вектора направления р, обеспечиваю­щего уменьшение погрешности на выходе сети на очередных шагах алгорит­ма. Это означает, что на следующих итерациях должно выполняться неравен­ство Q( w (t + 1))< Q (w(t)). Ограничим ряд Тейлора, аппроксимирующий функ­цию погрешности Q, линейным разложением, т.е.

 

Q (w+ p) = Q (w) + [g(w)]Tp. (2.99)

 

Поскольку функция Q( w ) зависит от весов, найденных на шаге t, a Q( w+р) - от весов, найденных на шаге (t+ 1 ) то для выполнения неравенства Q( w (t+1))<Q( w (t) достаточно подобрать вектор р(t), при котором g(w(t)Tp(t)<0. Легко заметить, что это условие выполняется при

 

p(t)=-g(w(t)). (2.100)

При подстановке зависимости (2.100) в формулу (2.98) получаем следую­щее выражение для изменения весов многослойной нейронной сети:

 

w (t+ l)= w (t) - ηg(w (t)). (2.101)

Зависимость (2.101) известна в литературе под названием «правило на­искорейшего спуска». Для эффективного использования выражения (2.101) с целью вывода алгоритма обратного распространения ошибки необходимо формально описать структуру многослойной нейронной сети и ввести соот­ветствующие обозначения.

Эта структура изображена на рисунке 2.16. В каждом слое расположено Nk элементов, k =1,..., L, обозначаемых Nki, i = 1, ..., Nk. Элементы Nki будем называть нейронами, причем каждый из них может иметь сигмоиду на выходе. Обсуждаемая нейронная сеть имеет N0 входов, на которые подаются сигналы х1 (t), ...,xN0 (t), записываемые в векторной форме как

 

x = [ x 1(t),..., xN0 (t)]T, t = 1,2,.... (2.102)

 

 

Рис.2.16. Многослойная нейронная сеть

 

Выходной сигнал i -го нейрона в k- мслое обозначается уi(k)(t), i = 1,. .,Nk, k = 1,..., L. На рисунке 2.17 показана детальная структура i -го нейрона в k- мслое.

Рис. 2.17. Структура нейрона

 

Нейрон Nki имеет Nk входов, образующих вектор

 

(2.103)

 

причем xi(k)(t) = +1 для i = 0 и k = 1, ...,L.

Обратим внимание на факт, что входной сигнал нейрона Nki связан с вы­ходным сигналом (k - 1)-го слоя следующим образом:

 

для   для   для
(2.104)

На рисунке 2.17 символом wij(k) (t) обозначен вес входа i -го нейрона, i=1,…Nk, расположенного в k слое, который соединяет этот нейрон с j -м входным сигналом xi(k)(t), j= 0,1 ,...,Nk. Вектор весов нейрона Nki будем обозначать

 

, k =1,..., L, i = 1 ..,,Nk. (2.105)

 

Выходной сигнал нейрона Nki в момент t, t = 1,2,... определяется как


yi(k)(t) = f(si(k)(t)), (2.106)

причем

(2.107)

 

Отметим, что выходные сигналы нейронов L -го слоя

 

(2.108)

одновременно являются выходными сигналами сети в целом. Они сравни­ваются с так называемыми эталонными сигналами сети

 

(2.109)

 

Погрешность на выходе сети определяется следующим образом:

 

(2.110)

 

При использовании зависимостей (2.101) и (2.110) получаем

 

(2.111)

Обратим внимание, что

(2.112)

 

Если ввести обозначение

(2.113)

то получим равенство

 

(2.114)

 

При этом алгоритм (2.111) принимает вид

 

(2.115)

 

Способ расчета значения зависит от номера слоя. Для последнего слоя получаем

 

(2.116)

 

Для произвольного слоя k ≠ L получаем

 

(2.117)

Определим погрешность для i -го нейрона в k -м (не последнем) слое в виде

 

k = 1,…,L - 1. (2.118)

 

При подстановке выражения (2.118) в формулу (2.117) получаем

(2.119)

 

В результате алгоритм обратного распространения ошибки можно запи­сать в виде

(2.120)

 

 

 

(2.123)

 

(2.124)

 

Мы рассмотрели последовательность математических выражений, опи­сывающих способ обучения многослойной нейронной сети. Выполнение ал­горитма начинается с подачи обучающей последовательности на вход сети. Вначале эта последовательность обрабатывается нейронами первого слоя. Конечно, под «обработкой» мы понимаем здесь расчет значений выходных сигналов (см. формулы (2.106), (2.107)) для каждого нейрона этого слоя. Полученные сигналы подаются на входы нейронов следующего слоя. Описан­ный цикл повторяется, т.е. вновь рассчитываются выходные сигналы нейро­нов очередного слоя, которые передаются далее - вплоть до выходного слоя. После получения выходного сигнала последнего слоя и выбора соответствую­щего эталонного сигнала из обучающей последовательности рассчитывается погрешность на выходе сети по формуле (2.121). Веса нейронов последнего слоя можно модифицировать при помощи дельта-правила также как и веса оди­ночного нейрона с сигмоидой на выходе - для этого используются формулы (2,121), (2.123), (2,124). Однако этот способ непригоден для модификации ве­сов нейронов в скрытых слоях, поскольку значения для этих нейронов не­известны, а целевая функция, заданная выражением (2.110), зависит от весов всех нейронов сети. Поэтому выходная погрешность распространяется в обрат­ном направлении (от выходного слоя к входному) в соответствии с межслойными соединениями нейронов и с учетом их функций активации (см. формулы (2.122) - (2.124)). Таким образом, название алгоритма объясняется способом его реали­зации, т.е. погрешность «возвращается» от выходного слоя к входному слою.

27. Принцип обучения нейронной сети «без учителя»







Дата добавления: 2015-09-06; просмотров: 649. Нарушение авторских прав; Мы поможем в написании вашей работы!



Композиция из абстрактных геометрических фигур Данная композиция состоит из линий, штриховки, абстрактных геометрических форм...

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

ТЕОРЕТИЧЕСКАЯ МЕХАНИКА Статика является частью теоретической механики, изучающей условия, при ко­торых тело находится под действием заданной системы сил...

Теория усилителей. Схема Основная масса современных аналоговых и аналого-цифровых электронных устройств выполняется на специализированных микросхемах...

Дренирование желчных протоков Показаниями к дренированию желчных протоков являются декомпрессия на фоне внутрипротоковой гипертензии, интраоперационная холангиография, контроль за динамикой восстановления пассажа желчи в 12-перстную кишку...

Деятельность сестер милосердия общин Красного Креста ярко проявилась в период Тритоны – интервалы, в которых содержится три тона. К тритонам относятся увеличенная кварта (ув.4) и уменьшенная квинта (ум.5). Их можно построить на ступенях натурального и гармонического мажора и минора.  ...

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

Потенциометрия. Потенциометрическое определение рН растворов Потенциометрия - это электрохимический метод иссле­дования и анализа веществ, основанный на зависимости равновесного электродного потенциала Е от активности (концентрации) определяемого вещества в исследуемом рас­творе...

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

Сущность, виды и функции маркетинга персонала Перснал-маркетинг является новым понятием. В мировой практике маркетинга и управления персоналом он выделился в отдельное направление лишь в начале 90-х гг.XX века...

Studopedia.info - Студопедия - 2014-2024 год . (0.007 сек.) русская версия | украинская версия