Метод обратного распространения ошибки

Метод был разработан и опубликован в 1986 году. Его разработал Дэвид Румельхарт. Метод также известен как метод обобщения дельта-правил.

Общий принцип работы многослойной нейронной сети с обучением методом обратного распространения ошибки заключается в следующем.

Сначала с помощью заранее известных исходных данных и результатов по ним обучают сеть. На ее вход подают входные значения, а на выходе сравнивают значения сети с реальным результатом, и в зависимости от степени их разногласия корректируют внутренние веса нейронов. Добившись удовлетворительной работы сети с заданной погрешностью, прекращают обучение. Теперь сеть готова рассчитывать реальные данные. Для расчета сеть переводится из режима обучения в режим работы. На вход поступают данные, они обрабатываются, и на выходе получается ответ с определенной долей вероятности. Подобным образом работает примитивная нейронная сеть обратного распространения ошибки.

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

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

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

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: