Алгоритм обратного распространения ошибки является одним из методов обучения многослойных нейронных сетей прямого распространения. Сегодня нейронные сети успешно используются при решении сложных практических задач.
В классическом варианте алгоритма обратного распространения ошибки формула коррекции весовых коэффициентов, выглядит следующим образом:
где:
- – номер текущей итерации обучения;
- – величина синаптического веса, соединяющего нейрон с нейроном ;
- – коэффициент «скорости обучения», управляет величиной изменения весов;
- – ошибка -нейрона;
- – выход нейрона .
Здесь – константа. При очень маленьких значениях обучение нейронной сети будет проходить медленно. При очень больших значениях возникает вероятность того, что в момент достижения минимума функции ошибки нейронная сеть не сможет попасть в этот минимум и будет бесконечно долго «прыгать» справа и слева от него, производя перерасчеты весовых коэффициентов.
Выбор некоторого среднего значения для всего процесса обучения не позволит достигнуть оптимального множества весовых коэффициентов за минимальное количество шагов. Становится очевидным, что динамическое управление величиной может серьезно повысить эффективность обучения нейронной сети методом обратного распространения ошибки.
Присвоение большего значения в момент начала обучения позволит получить более быстрое приближение к области, где находится оптимальное множество весовых коэффициентов. А для того, чтобы нейронная сеть не «проскочила» минимум функции ошибки необходимо в процессе обучения уменьшать значение . Можно, например, по следующей простой формуле:
где:
- – скорость уменьшения .
Стоит отметить, что существуют более сложные механизмы ускорения обучения нейронной сети, позволяющие изменять скорость обучения каждого отдельного нейрона, исходя из величины его ошибки на предыдущей итерации.
Динамическое управление скоростью обучения нейронной сети в большинстве случаев позволяет значительно повысить эффективность работы алгоритма обратного распространения.