TechShape.ru

Информационные технологии

Основные разделы

Алгоритм обратного распространения «Back Propagation»

В середине 1980-х несколькими исследователями независимо друг от друга был предложен эффективный алгоритм обучения многослойных персептронов, основанный на вычислении градиента функции ошибки. Алгоритм был назван "обратным распространением ошибки".

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

В нейропарадигме "back propagation" чаще всего используются сигмоидальные передаточные функции, например

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

Функционирование многослойной сети выполняется в соответствии с формулами:

где s - выход сумматора, w - вес связи, y - выход нейрона, b - смещение, i - номер нейрона, N - число нейронов в слое, m - номер слоя, L - число слоев, f- функция активации.

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

- способ быстрого расчета градиента функции ошибки.

Расчет производится от выходного слоя к входному по рекуррентным формулам и не требует пересчета выходных значений нейронов.

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

В алгоритме обратного распространения вычисляется вектор градиента поверхности ошибок. Этот вектор указывает направление кратчайшего спуска по поверхности из данной точки, поэтому если мы "немного" продвинемся по нему, ошибка уменьшится. Последовательность таких шагов (замедляющаяся по мере приближения к дну) в конце концов приведет к минимуму того или иного типа. Определенную трудность здесь представляет вопрос о том, какую нужно брать длину шагов [3].

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

Рис. 7. Метод градиентного спуска при минимизации ошибки сети

Еще статьи

Синтез автомата модели Мили
Согласно заданию необходимо провести синтез автомата модели Мили. На вход автомата поступает 16 различных входных последовательностей длины 4, составленных из букв алфавита 0, 1. На выходе вырабатывается 16 выходных последовательностей, составленных из букв того же алфавита. Для задания работы автомата ...

Все права защищены! 2020 - www.techshape.ru