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


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

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

Алгоритм обратного распространения используется для обучения многослойных нейронных сетей с последовательными связями. Нейроны в таких сетях делятся на группы с общим входным сигналом - слои. На каждый нейрон первого слоя подаются все элементы внешнего входного сигнала. Все выходы нейронов m-го слоя подаются на каждый нейрон слоя m+1. Нейроны выполняют взвешенное суммирование элементов входных сигналов. К сумме элементов входных сигналов, домноженных на соответствующие синаптические веса, прибавляется смещение нейрона. Над результатом суммирования выполняется нелинейное преобразование - функция активации (передаточная функция). Значение функции активации есть выход нейрона.

На рисунке 1 показана подробная схема многослойной сети с обозначенными синапсами, смещениями, сумматорами.

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


Рис. 1. Многослойная сеть с последовательными связями

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

Функция Ферми (экспоненциальная сигмоида):

(1.1.1)

где s - выход сумматора нейрона, - некоторый параметр.

Рациональная сигмоида:

(1.1.2)

Гиперболический тангенс:

(1.1.3)

Перечисленные функции относятся к однопараметрическим. Значение функции зависит от аргумента и одного параметра. Также используются многопараметрические передаточные функции, например:

(1.1.4)

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

Наиболее эффективной передаточной функцией является рациональная сигмоида. Для вычисления гиперболического тангенса требуется больше всего тактов работы процессора.

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

(1.1.5)

(1.1.6)

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

Обучение сети разбивается на следующие этапы:

1) Инициализация сети:

Весовым коэффициентам и смещениям сети присваиваются малые случайные значения из диапазонов и соответственно.

2) Определение элемента обучающей выборки:

(<текущий вход>, <желаемый выход>). Текущие входы (x0, x1... xN-1), должны различаться для всех элементов обучающей выборки. При использовании многослойного персептрона в качестве классификатора желаемый выходной сигнал (d0, d1... dN-1) состоит из нулей за исключением одного единичного элемента, соответствующего классу, к которому принадлежит текущий входной сигнал.

3) Вычисление текущего выходного сигнала:

Текущий выходной сигнал определяется в соответствии с традиционной схемой функционирования многослойной нейронной сети.

4) Настройка синаптических весов:

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

(1.1.7)

где wij - вес от нейрона i или от элемента входного сигнала i к нейрону j в момент времени t, xi' - выход нейрона i или i-ый элемент входного сигнала, r - шаг обучения, gj - значение ошибки для нейрона j.

Если нейрон с номером j принадлежит последнему слою, то

(1.1.8)

где dj - желаемый выход нейрона j, yj - текущий выход нейрона j.

Если нейрон с номером j принадлежит одному из слоев с первого по предпоследний, то

(1.1.9)

где k пробегает все нейроны слоя с номером на единицу больше, чем у того, которому принадлежит нейрон j.

Внешние смещения нейронов b настраиваются аналогичным образом.

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

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

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

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

Были предложены многочисленные модификации алгоритма обратного распространения, которые связаны с использованием различных функций ошибки, различных процедур определения направления и величины шага:

1) функции ошибки:

2) процедуры определения величины шага на каждой итерации:

(1.1.10)

(a - некоторое положительное число, меньше единицы)

3) процедуры определения направления шага:


smallogo При использовании информации, находящейся на данной странице, вы обязаны ссылаться на следующую работу:

Отчет по научно-исследовательской работе "Создание аналитического обзора информационных источников по применению нейронных сетей для задач газовой технологии"; Копосов А.И., Щербаков И.Б., Кисленко Н.А., Кисленко О.П., Варивода Ю.В. и др., ВНИИГАЗ, 1995.