4.6. Алгоритм обучения по ошибке обратной связи
Этот алгоритм предложен в работах [40], [41] и представляет собой особый случай схемы нейронного управления параллельного типа. Первоначальный вариант схемы обучения по ошибке обратной связи показан нарис. 4.2.4. Ошибка обратной связи представляет собой выход контроллера обратной связи, она подается обратно через слои нейронной сети в течение нескольких тысяч циклов обучения, пока не достигается сходимость. После этого нейронная сеть принимает на себя управление в качестве основного контроллера, исключая действие обычного контроллера. Общая схема управления с обучением по ошибке обратной связи, как уже отмечалось, показана на рис. 4.2.4.
В данном разделе рассматривается модифицированный вариант этой схемы обучения, показанной нарис. 4.5.2. В ходе обучения минимизируется функция ошибки Е, задаваемая выражением (4.5.1). Предполагается, что NN2 — трехслойная нейронная сеть, а функция активации на выходном слое — отображение тождества, т.е.
Используя алгоритм наискорейшего спуска, получим для выходного слоя
и для скрытого слоя
Используя цепное правило, получим
где
— управляющие входные сигналы, задаваемые соответственно обычным и нейронным контроллером. Здесь
Таким образом, если положить
то получим
где
для
для
— выход
нейрона скрытого слоя. Для этого алгоритма также требуется знать якобиан объекта управления
Для его задания имеются
два способа: применить эмулятор, показанный на рис. 4.5.2, или найти знак якобиана и выбрать скорость обучения
используя в дальнейшем абсолютную величину якобиана
Алгоритм обучения по ошибке обратной связи основан на механизме управления движением, реализуемом в мозге. Пример такой схемы обучения, взятый из биологии, приведен в разделе 4.2.1. То, что именно такой механизм обучения используется в человеческом мозге, доказано в биологии [54]-[56]. Для практического применения можно подобрать лучшую схему для моделирования нейронных сетей NN1 и NN2. Их можно моделировать, используя архитектуры, показанные на рис. 4.3.4 и 4.3.6; кроме того, исходя из своего опыта, авторы рекомендуют для ускорения моделирования эмулятора использовать структуру, показанную на рис. 4.3.7.