Баннер
Баннер

Представление знаний нейронными сетями - Сети обратного распространения

Оглавление
Представление знаний нейронными сетями
Структура нейронной сети
Обучение нейронной сети
Активационная функция нейрона
Представление входных данных
Преобразование числовых входных данных
Подготовка входных данных
Особенности обучения нейронной сети
Сети обратного распространения
Программное обеспечение
Все страницы

Нейронные сети обратного распространения — это мощнейший инстру­мент поиска закономерностей, прогнозирования, качественного анализа. Такое наз­вание — сети обратного распространения (back propagation) они получили из-за используемого алгоритма обучения, в котором ошибка распространяется от вы­ходного слоя к входному, то есть в направлении, противоположном на­прав­лению распространения сигнала при нормальном функционировании сети.

Нейронная сеть обратного распространения состоит из нескольких слоев нейронов, причем каждый нейрон слоя i связан с каждым нейроном слоя i+1, то есть  речь идет о полносвязной НС.

В общем случае задача обучения нейронной сети сводится к нахождению не­кой функциональной зависимости Y=F(X) где X — вход­ной, а Y — вы­ход­ной векторы. В общем случае такая задача, при ограниченном наборе вход­ных данных имеет бесконечное множество решений. Для ограничения про­странства поиска при обучении ставится задача минимизации целевой функции ошибки нейронной сети, которая находится по методу наименьших квадратов:

,                                                  (7.17)
где

yj — значение j-го выхода нейронной сети,

dj — целевое значение j-го выхода,

p  — число нейронов в выходном слое.

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

,                                               (7.18)
где h — параметр определяющий скорость обучения.

,                                          (7.19)
где

yj  — значение выхода j–го нейрона

Sj  — взвешенная сумма входных сигналов, определяемая по формуле (7.1).

При этом множитель

,                                                                          (7.20)
где xi — значение i–го входа нейрона.

Далее рассмотрим определение первого множителя формулы (5.19)

,          (7.21)
где  k — число нейронов в слое n+1.

Введем вспомогательную переменную

.                                                                                 (5.22)

Тогда мы сможем определить рекурсивную формулу для определения  n–ного слоя если нам известно  следующего (n +1)–го слоя.

                                          (7.23)

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

                                                       (7.24)

Запишем формулу (5.18) в раскрытом виде

                                                            (7.25)

Рассмотрим теперь полный алгоритм обучения нейронной сети.

1. Подать на вход нейронной сети один из требуемых образов и определить значения выходов нейронов нейросети.

2. Рассчитать  для выходного слоя нейронной сети по формуле (7.24) и рассчитать изменения весов  выходного слоя N по формуле (7.25).

3. Рассчитать по формулам (7.23) и (7.25) соответственно  и   для остальных слоев НС, n= N-1 … 1

4. Скорректировать все веса нейронной сети

                                                   (7.26)

5. Если ошибка существенна, то перейти на шаг 1.

На втором этапе нейронной сети поочередно в случайном порядке предъ­яв­ляются векторы из обучающей последовательности.

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





Читайте также:

Добавить комментарий


Защитный код
Обновить




Разделы



Главная Представление знаний Представление знаний нейронными сетями