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

Опишем алгоритм нечеткого распространения ошибки в нечеткой нейронной сети.

  1. После того как устройство DEFUZ сгенерировало , оно передает на обратном ходе правильное значение и фактическое значение выхода в S-модуль.
  2. Проверяется условие принадлежности области определения S. Если оно не выполняется (т.е. области определения S), то эксперт должен добавить новое правило в базу правил и текущее выходное значение должно быть пересчитано перед началом процедуры обучения. В противном случае переходим на следующий шаг.
  3. Если S-модуль передает в обратном направлении и , то высота S () и максимальная высота каждого нечеткого множества, не соответствующего вершине , принадлежат T-модулям.
  4. Каждый S-модуль проверяет:
    1. Если высота = высоте S: и не принадлежит области определения , то посылаем , и понижающий сигнал всем подключенным к -модулям.
    2. Если и принадлежит области определения , но , то изменяем форму таким образом, чтобы определяло положение максимума вместо .
    3. Если и принадлежит области определения , то посылаем значения высоты , и повышающий сигнал, всем -модулям, подключенным к , принимаем как и изменяем форму таким образом, чтобы достигался в точке , вместо точки .
    4. Если и не принадлежит области определения , то прерываем распространение ошибки в этом модуле.
  5. Каждый -модуль проверяет:
    1. Если поступает понижающий сигнал и , то изменяем форму так, чтобы
    2. Если поступает повышающий сигнал и , то изменяем форму так, чтобы .

На рис.3 приведена иллюстрация описанного алгоритма.

Рис.3. Регулирование путем увеличения/уменьшения формы
всех или одного из Т нечетких множеств

Итак мы представили алгоритм Back propagation для ошибки в нечетком контроллере, путем применения технологии обучения НС. Мы рассматривали нечеткий контроллер как НС, где характеристики модели не определены путем весовых связей, но нечеткие множества хранятся в узлах системы. Алгоритм обучения определяет модуль, который отвечает за ошибку в сигнале на выходе и распространяет информацию в обратном направлении через нейронную сеть, что позволяет модулю изменять его нечеткие множества (точки их ФП). Здесь нет необходимости присоединять веса к правилам. Каждое правило одинаково важно. При изменении нечетких множеств семантика каждого правила, предложенного экспертом, не изменяется, но ошибки, возникшие в результате моделирования, постоянно устраняются, и скорректированные правила легко поддаются интерпретации.

Как обучение весовых правил влияет на интерпретацию нечетких систем?

Один из простых путей усовершенствования нечеткой системы – это использование весовых правил. Однако применение весовых правил полностью меняет ФП, так что она уже не может больше интерпретироваться как лингвистическая переменная. Такие правила полностью разрушают интерпретируемость нечеткой системы (под интерпретируемостью понимается, что ФП являются нормальными, выпуклыми). Поскольку основная идея данного подхода состоит в том, что пользователь нечеткой системы должен пометить каждое нечеткое множество удобным лингвистическим термом .

Такие системы (с весовыми правилами) находят широкое применение при аппроксимации функций, что будет рассмотрено далее. Эти нечеткие системы состоят из правил, которые уже не должны интерпретироваться как логические правила. Каждое нечеткое правило рассматривается как многомерное нечеткое множество в пространстве данных. Применение весовых правил к таким нечетким системам означает изменение представления этих многомерных нечетких множеств.

Интерпретация весовых правил.

Правило, имеющее вес, часть которого называют “с w”, где w - действительное значение (вес), которое может быть различным для каждого правила. Например, “если x есть A и y есть B, тогда z есть C с w”, где x и y – входные переменные , A,B,C – нечеткие множества, z – выходная переменная, w – весовое правило, принимающее действительное значение.

Необходимо определить операцию “с w”.

Мы рассмотрим только 2 следующих случая:

  1. Веса правил применяются только к полным правилам. Сначала рассчитывается предикат правила, а потом умножается на вес данного правила.
  2. Веса правил применяются только к последовательным частям правил. Здесь вычисляем следствие, а затем умножаем его на все правила. Если заключение является нечетким множеством, то его область определения изменяется таким же способом.

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

Здесь возможны следующие способы интерпретации:

  1. Интерпретация вида “если нет …,то”

    Такое описание соответствует глобальному описанию функции. Если входное значение находится вне пределов области, то функция получает значение, представленное в следствии.

  2. Правило с отрицательным весом может также интерпретироваться как отрицательная последовательность: (если …, то не…).

Влияние весовых правил.

Рассмотрим весовые правила нечеткой системы Мамдани.

Возьмем для простоты 2 следующих нечетких правила:

М1: если x есть A и y есть B, то z есть D с ;

М2: если x есть A и y есть C , то z есть D с ,

где A, B, C, D – нечеткие множества, x, y – входные переменные, z – выходная переменная, - весовое правило.

Каждое нечеткое множество помечается индивидуальным лингвистическим термом.Если весовое правило используется для изменения степени выполнения правила, то мы можем эквивалентным образом изменить его путем изменения ФП.

Рассмотрим 2 наиболее распространенных случая, когда степень выполнения определяется либо с помощью оператора min, либо с помощью оператора умножения (пересечения в сильном смысле).

  1. В случае применения оператора минимума степень выполнения весового правила вычисляется так:

  2. В случае применения оператора степень выполнения весового правила вычисляется как: