logo search
Романов В

Обратное распространение ошибки

Рассмотрим теперь наиболее распространенный алгоритм обучения нейронных сетей с прямой связью - алгоритм обратного распростране­ния ошибки (Backpropagation, ВР), представляющий собой развитие так называемого обобщенного дельта-прав WIG. Этот алгоритм был заново от­крыт и популяризирован в 1986 г. Ру-мельхартом и МакКлеландом из зна­менитой Группы по изучению параллельных распределенных процессов в Массачусетском технологическом институте. В этом пункте мы более под­робно рассмотрим математическую суть алгоритма. Он является алгорит­мом градиентного спуска, минимизирующим суммарную квадратичную ошибку

Здесь индекс i пробегает все выходы многослойной сети.

Основная идея ВР состоит в том, чтобы вычислять чувствительность

ошибки сети к изменениям весов. Для этого нужно вычислить частные про­изводные от ошибки по весам. Пусть обучающее множество состоит из Р образцов, и входы k-гo образца обозначены через {х l}. Вычисление част­ных производных осуществляется по правилу цепи: вес входа i-гo нейрона, идущего от j-гo нейрона, пересчитывается по формуле

где 1:: - длина шага в направлении, обратном к градиенту.

Если рассмотреть отдельно k-й образец, то соответствующее изменение

весов равно

Множитель O~ вычисляется через аналогичные множители из после­

дующего слоя, и ошибка, таким образом, передается в обратном направле­нии.

Для выходных элементов мы получаем:

Для скрытых элементов множитель 0k определяется так:

( 13.13)

с учетом того, что

(13.14)

получаем:

(13.15)

где индекс h пробегает номера всех нейронов, на которые воздействует i-й нейрон.

Данный алгоритм используется в двух вариантах. В стохастическом ва­рианте веса пересчитываются каждый раз после просчета очередного образ­ца, а в «эпохальном», или off-line варианте, веса меняются после просчета всего обучающего множества.