Представление знаний нейронными сетями - Сети обратного распространенияНейронные сети обратного распространения — это мощнейший инструмент поиска закономерностей, прогнозирования, качественного анализа. Такое название — сети обратного распространения (back propagation) они получили из-за используемого алгоритма обучения, в котором ошибка распространяется от выходного слоя к входному, то есть в направлении, противоположном направлению распространения сигнала при нормальном функционировании сети. Нейронная сеть обратного распространения состоит из нескольких слоев нейронов, причем каждый нейрон слоя i связан с каждым нейроном слоя i+1, то есть речь идет о полносвязной НС. В общем случае задача обучения нейронной сети сводится к нахождению некой функциональной зависимости Y=F(X) где X — входной, а Y — выходной векторы. В общем случае такая задача, при ограниченном наборе входных данных имеет бесконечное множество решений. Для ограничения пространства поиска при обучении ставится задача минимизации целевой функции ошибки нейронной сети, которая находится по методу наименьших квадратов:
yj — значение j-го выхода нейронной сети, dj — целевое значение j-го выхода, p — число нейронов в выходном слое. Обучение нейронной сети производится методом градиентного спуска, то есть на каждой итерации изменение веса производится по формуле
yj — значение выхода j–го нейрона Sj — взвешенная сумма входных сигналов, определяемая по формуле (7.1). При этом множитель
Далее рассмотрим определение первого множителя формулы (5.19)
Введем вспомогательную переменную
Тогда мы сможем определить рекурсивную формулу для определения
Нахождение же
Запишем формулу (5.18) в раскрытом виде
Рассмотрим теперь полный алгоритм обучения нейронной сети. 1. Подать на вход нейронной сети один из требуемых образов и определить значения выходов нейронов нейросети. 2. Рассчитать 3. Рассчитать по формулам (7.23) и (7.25) соответственно 4. Скорректировать все веса нейронной сети
5. Если ошибка существенна, то перейти на шаг 1. На втором этапе нейронной сети поочередно в случайном порядке предъявляются векторы из обучающей последовательности. Полный цикл рассмотрения всех имеющихся образцов называется эпохой. Все образцы подаются на рассмотрение сети снова и снова, эпоха за эпохой, пока на протяжении одной эпохи все значения реального вывода для каждого образца не попадут в допустимые рамки.
Читайте также:
|
, (7.17)
, (7.18)
, (7.19)
, (7.20)
, (7.21)
. (5.22)
n–ного слоя если нам известно
следующего (n +1)–го слоя.
(7.23)
для последнего слоя нейронной сети не представляет трудности, так как нам известен целевой вектор, то есть вектор тех значений, которые должна выдавать НС при данном наборе входных значений.
(7.24)
(7.25)
для выходного слоя нейронной сети по формуле (7.24) и рассчитать
изменения весов выходного слоя N по формуле (7.25).
и
для остальных слоев НС, n= N-1 … 1
(7.26)