Построение гибридной системы с использованием пакета Fuzzy Logic Toolbox




Цель работы. Целью данной практической работы является знакомство с гибридными системами, реализованными в прикладном программном пакете Matlab и приобретение навыков по построению гибридных систем.

 

КРАТКИЕ ТЕОРЕТИЧЕСКИЕ СВЕДЕНИЯ

Графический интерфейс гибридных (нечетких) нейронных систем вызывается функцией (из режима командной строки) апfisedit. Исполнение функции приводит к появлению окна редактора гибридных систем (ANFIS Editor, ANFIS-редактор), вид которого приведен на рис. 1.

 

Рис. 1. Окно редактора гибридных систем

 

С помощью данного редактора осуществляется создание или загрузка структуры гибридной системы, просмотр структуры, настройка ее параметров, проверка качества функционирования такой системы. Создание структуры и настройка параметров и проверка осуществляются по выборкам (наборам данных) — обучающей (Training data), проверочной (Checking data) и тестирующей (Testing data), которые предварительно должны быть представлены в виде текстовых фалов (с расширением.dat и разделителями-табуляциями), первые колонки которых соответствуют входным переменным, а последняя (левая) — единственной выходной переменной; количество строк в таких файлах равно количеству образцов (примеров).

 

 

Так, обучающая выборка, сформированная по табл. 1, представляется в виде

-1 1

-0.6 0.36

0.0 0.00

0.4 0.16

1 1

Строгих рекомендаций по объемам указанных выборок не существует, по-видимому, лучше всего исходить из принципа «чем больше, тем лучше». Обучающая и проверочная выборки непосредственно задействуются в процессе настройки параметров гибридной сети (проверочная — для выяснения ситуации: нет ли так называемого переобучения сети, при котором ошибка для обучающей последовательности стремится к нулю, а для проверочной — возрастает; впрочем, наличие проверочной выборки не является строго необходимым, оно лишь крайне желательно). Тестовая (или тестирующая выборка) применяется для проверки качества функционирования настроенной (обученной) сети.

Поясним пункты меню и опции редактора.

Пункты меню File и View, в общем идентичны аналогичным пунктам FIS-редактора, за тем исключением, что здесь работа может происходить только с алгоритмом нечеткого вывода Sugeno. Пункт меню Edit содержит единственный подпункт — Undo (Отменить выполненное действие).

Набор опций Load data (Загрузить данные) в нижней левой части окна редактора включает в себя:

• тип (Туре) загружаемых данных (для обучения — Training, для тестирования — Testing, для проверки — Checking, демонстрационные — Demo);

• место, откуда должны загружаться данные (с диска — diskили из рабочей области MATLAB-workspace).

К данным опциям относятся две кнопки, нажатие на которых приводит к требуемым действиям — Load Data... (Загрузить данные) и Clear Data (очистить, т.е. стереть введенные данные).

Следующая группа опций (в середине нижней части окна ANFIS-редактора) объединена под именем Generate FIS (Создание нечеткой системы вывода). Данная группа включает в себя опции:

• загрузку структуры системы с диска (Load from disk);

• загрузку структуры системы из рабочей области MATLAB (Load from worksp.);

• разбиение (деление) областей определения входных переменных (аргументов) на подобласти — независимо для каждого аргумента (Grid partition);

• разбиение всей области определения аргументов (входных переменных) на подобласти — в комплексе для всех аргументов (Subtract clustering или Sub. clustering), а также кнопку Generate FIS, нажатие которой приводит к процессу создания гибридной системы с точностью до ряда параметров.

Следующая группа опций — Train FIS (Обучение нечеткой си­стемы вывода) — позволяет определить метод «обучения» (Optim. Method) системы (т.е. метод настройки ее параметров) — гибридный (hybrid) или обратного распространения ошибки (back-ргора), установить уровень текущей суммарной (по всем образцам) ошибки обучения (Error Tolerance), при достижении которого процесс обучения заканчивается и количество циклов обучения (Epochs), т.е. количество «прогонов» всех образцов (или примеров) обучающей выборки; процесс обучения, таким образом заканчивается либо при достижении отмеченного уровня ошибки обучения, либо при проведении заданного количество циклов.

Кнопка Train Now (Начать обучение) процесс обучения, т.е. процесс настройки параметров гибридной сети.

В правом верхнем углу окна ANFIS-редактора выдается информация (ANFIS Info.) о проектируемой системе: о количестве входов, выходов, функций принадлежности входов; нажатие кнопки Structure (Структура) позволяет увидеть структуру сети. Кнопка Clear (Очистить) позволяет стереть все результаты.

Опции Test FIS в правом нижнем углу окна позволяют провести проверку и тестирование созданной и обученной системы с выводом результатов в виде графиков (соответствующие графики для обучающей выборки — Training data, тестирующей выборки — Testing data и проверочной выборки — Checking data. Кнопка Test Now позволяет запустить указанные процессы.

Работу с редактором рассмотрим на примере восстановления зависимости у = х2 по данным табл. 1. Предположим, что эти данные сохранены в файле Proba.dat. Создание и проверку системы, как и раньше, проведем по этапам.

1. В окне ANFIS-редактора выберем тип загружаемых данных Training и нажмем кнопку Load data. В последующем стандартном окне диалога укажем местоположение и имя файла. Его открытие приводит к появлению в графической части окна редактора набора точек, соответствующих введенным данным (рис. 2).

 

 

 

Рис.2 – Окно редактора после загрузки обучающей выборки

 

 

2. В группе опций Generate FIS по умолчанию активизирована опция Grid partition. He будем ее изменять и нажмем кнопкуGenerate FIS, после чего появится диалоговое окно (рис. 3) для задания числа и типов функций принадлежности.

 

Рис.3 – Окно задания функций принадлежности

 

Сохраним все установки по умолчанию, согласившись с ними нажатием кнопки ОК. Произойдет возврат в основное окно ANFIS-редактора. Теперь структура гибридной сети создана, и ее графический вид можно просмотреть с помощью кнопки Structure (рис. 4).

 

Рис.4 – Структура созданной гибридной сети

 

3. Перейдем к опциям Train FIS. He будем менять задаваемые по умолчанию метод настройки параметров (hybrid — гибридный)и уровень ошибки (0), но количество циклов обучения изменим на 40, после чего нажмем кнопку начала процесса обучения (TrainNow). Получившийся результат в виде графика ошибки сети в зависимости от числа проведенных циклов обучения (из которого следует, что фактически обучение закончилось после пятого цикла)представлен на рис. 5.19.

 

 

Рис.5 – Функция ошибки обучения сети

 

4. Теперь нажатием кнопки Test Now можно начать процесс тестирования обученной сети, но, поскольку использовалась только одна — обучающая — выборка, ничего особенно интересного ожидать не приходится. Действительно, выход обученной системы практически совпадает с точками обучающей выборки(рис.6).

 

Рис. 6. Результат тестирования обученной системы

5. Сохраним разработанную систему в файл на диске с именем Probal (с расширением.Us) и для исследования разработанной системы средствами FIS-редактора из командной строки MATLABвыполним команду fuzzy, а затем через пункты меню File/OpenFIS from disk... откроем созданный файл. С созданной системой можно теперь выполнять все приемы редактирования (изменение имен переменных и т. п.) и исследования, которые были рассмотрены выше. Здесь нетрудно, кстати, убедиться, что качество аппроксимации данных существенно не улучшилось — слишком мало данных.

Что можно сказать про эффективность использования гибридных систем (и ANFIS-редактора)?

В данном случае используется только один алгоритм нечеткого вывода — Sugeno (нулевого или первого порядков), может быть только одна выходная переменная, всем правилам приписывается один и тот же единичный вес. Вообще говоря, возникают значительные проблемы при большом (более 5-6) количестве входных переменных. Это — ограничения и недостатки подхода.

Его несомненные достоинства: практически полная автоматизация процесса создания нечеткой (гибридной) системы, возможность просмотра сформированных правил и придания им содержательной (лингвистической) интерпретации, что позволяет, кстати говоря, рассматривать аппарат гибридных сетей как средство извлечения знаний из баз данных и существенно отличает данные сети от классических нейронных.

Рекомендуемая область применения: построение аппроксиматоров зависимостей по экспериментальным данным, построение

 

 

систем классификации (в случае бинарной или дискретной выходной переменной), изучение механизма явлений.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-05-16 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: