Главная > Нейронные сети для обработки информации
НАПИШУ ВСЁ ЧТО ЗАДАЛИ
СЕКРЕТНЫЙ БОТ В ТЕЛЕГЕ
<< Предыдущий параграф Следующий параграф >>
Пред.
След.
Макеты страниц

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

Также, советуем воспользоваться поиском по сайту, мы уверены, что вы сможете найти больше информации по нужной Вам тематике

ДЛЯ СТУДЕНТОВ И ШКОЛЬНИКОВ ЕСТЬ
ZADANIA.TO

3.2.2. Алгоритм обратного распространения ошибки

Алгоритм обратного распространения ошибки определяет стратегию подбора весов многослойной сети с применением градиентных методов оптимизации. “Изобретенный заново” несколько раз [46], он в настоящее время считается одним из наиболее эффективных алгоритмов обучения многослойной сети. Его основу составляет целевая функция, формулируемая, как правило, в виде квадратичной суммы разностей между фактическими и ожидаемыми значениями выходных сигналов. В случае единичной обучающей выборки целевая функция определяется в виде

При большем количестве обучающих выборок целевая функция превращается в сумму по всем выборкам

Уточнение весов может проводиться после предъявления каждой обучающей выборки (так называемый режим “онлайн”) либо однократно после

предъявления всех выборок, составляющих цикл обучения (режим “оффлайн”). В последующем изложении используется целевая функция вида (3.4), которая соответствует актуализации весов после предъявления каждой выборки.

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

Обучение сети с использованием алгоритма обратного распространения ошибки проводится в несколько этапов. На первом из них предъявляется обучающая выборка х и рассчитываются значения сигналов соответствующих нейронов сети. При заданном векторе определяются вначале значения выходных сигналов скрытого слоя, а затем значения нейронов выходного слоя. Для расчета применяются формулы (3.2) и (3.3). После получения значений выходных сигналов становится возможным рассчитать фактическое значение целевой функции заданной выражением (3.4). На втором этапе минимизируется значение этой функции.

Если принять, что целевая функция непрерывна, то наиболее эффективными способами обучения оказываются градиентные методы оптимизации, согласно которым уточнение вектора весов (обучение) производится по формуле

где

- коэффициент обучения, - направление в многомерном пространстве

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

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

производные функции активации каждого слоя - количество слоев сети).

2. Создание сети обратного распространения ошибок путем изменения направлений передачи сигналов, замена функций активации их производными и подача на бывший выход (а в настоящий момент - вход) сети возбуждения в виде разности между фактическим и ожидаемым значением. Для определенной таким образом сети необходимо рассчитать значения требуемых обратных разностей.

5. Уточнение весов (обучение сети) производится по предложенным выше формулам на основе результатов, полученных в и 2, для оригинальной сети и для сети обратного распространения ошибки.

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

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

Как и ранее, количество входных узлов обозначим буквой количество нейронов в скрытом слое К, а количество нейронов в выходном слое М. Будем использовать сигмоидальную функцию активации этих нейронов. Основу алгоритма составляет расчет значения целевой функции как квадратичной суммы разностей между фактическими и ожидаемыми значениями выходных сигналов сети. В случае единичной обучающей выборки целевая функция задается формулой (3.4), а для множества обучающих выборок - формулой (3.5). Для упрощения излагаемого материала будем использовать целевую функцию вида (3.4), которая позволяет уточнять веса после предъявления каждой обучающей выборки.

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

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

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

Компоненты градиента относительно нейронов скрытого слоя определяются по тому же принципу, однако они описываются другой, более сложной зависимостью, следующей из существования функции, заданной в виде

После конкретизации отдельных составляющих этого выражения получаем:

Если ввести обозначение

то получим выражение, определяющее компоненты градиента относительно весов нейронов скрытого слоя в виде

В обоих случаях (формулы (3.10) и (3.14)) описание градиента имеет аналогичную структуру и представляется произведением двух сигналов: первый соответствует начальному узлу данной взвешенной связи, а второй - величине погрешности, перенесенной на узел, с которым эта связь установлена. Определение вектора градиента очень важно для последующего процесса уточнения весов. В классическом алгоритме обратного распространения ошибки фактор учитываемый в выражении (3.6), задает направление отрицательного градиента, поэтому

В следующем разделе представляются другие, более эффективные методы выбора направления

1
Оглавление
email@scask.ru