5.3.4. Алгоритмы обучения модуляКак уже отмечалось, задача сети, состоящей из слоев L1 - L3, заключается в определении степени соответствия входных данных каждому правилу. Для наилучшей адаптации этой сети к поставленной задаче будем применять алгоритм обратного распространения ошибки, под которой понимается разность между заданным (эталонным) значением выходной величины и фактическим значением на выходе сети. В реальных ситуациях обучающие выборки представляются не парами входных сигналов Способ функционирования и обучения модуля управления можно разделить на следующие этапы. Этап 1. Формирование набора нечетких правил для конкретной системы управления. Для рассматриваемой сети невозможно автоматическое построение правил (например, путем обучения), поэтому способ управления данным объектом должен быть известен, а соответствующие правила могут формулироваться, например, экспертом. Вначале должны быть зафиксированы все входные и выходные нечеткие множества, после чего на их базе конструируются правила типа IF - THEN. Этап 2. Построение нечеткой системы на основе анализа базы правил. Сеть строится на правилах, сформулированных на предыдущем этапе. Количество узлов в каждом слое, связи между ними, значения весов и параметров непосредственно определяются в ходе анализа базы правил с учетом функций, выполняемых конкретными слоями. Количество узлов, их связи и значения весов фиксируются при конструировании сети и не подлежат в дальнейшем какой-либо модификации. Этап 3. Построение и обучение нейронной сети. Способ конструирования нейронной сети очевидным образом связан с количеством
Применим теперь формулы (2.83) - (2.86) и обозначения, введенные в разд. 2.5. Начнем с построения выражения, описывающего изменения весов связей между элементами выходного L6 и скрытого L5 слоев. Изменение
где
Рекурсия, определяющая изменение весов
где
Изменение весов
где
В процессе обучения нейронных сетей очень часто используется так называемый момент (momentum - см. п. 2.5). В этом случае формулы для модификации весов принимают вид
Следует обратить внимание на тот факт, что в качестве входных сигналов Этап 4. Доработка функций принадлежности входных нечетких множеств на основе обучающих данных. При описании первого блока рассматриваемого модуля нечеткого управления было установлена невозможность прямого определения погрешности на его выходе (т.е. на выходе слоя L3) из-за отсутствия необходимых данных. Поэтому для обучения этой части модуля погрешность должна оцениваться на основе ошибки, распространяемой в обратном направлении с верхних слоев нейронной сети вплоть до слоя L3. Погрешности в высших слоях рассчитываются по формулам (5.36), (5.38) и (5.40). Легко заметить, что погрешность для
Если бы существовали данные
где
ошибкой, распространяемой в обратном направлении из нейронной сети до слоя L3, т.е.
Получив оценку погрешности на выходе слоя L3, можно применить градиентный метод (gradient descent method), который позволяет подобрать параметры
Для упрощения записи примем следующие обозначения:
Ее взятие может быть связано с некоторыми трудностями, поскольку в структуре модуля нечеткого управления имеются функции maximum и minimum
которые, как известно, не имеют производных. Для таких элементов устанавливается, что сигнал погрешности передается на все узлы предыдущего слоя (с которыми данный элемент связан) одинаково, т.е.
Другой подход заключается в распространении сигнала погрешности только к тем элементам, которые выработали соответственно максимальное или минимальное значение:
Можно также распространять погрешность пропорционально входным значениям таким образом, чтобы значение погрешности возрастало с приближением величины сигнала к его максимальному (или минимальному) значению:
Определенная проблема возникает и при взятии частной производной
Для параметров
Блок-схема полной процедуры построения и модификации модуля нечеткого управления представлена на рис. 5.21. Рис. 5.21. Алгоритм обучения модуля нечеткого управления, описанного в п. 5.3.3.
|