Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги / Статистические и интеллектуальные методы прогнозирования

..pdf
Скачиваний:
6
Добавлен:
12.11.2023
Размер:
8.94 Mб
Скачать

жду исходным выходным сигналом и выходом нейронной сети. В качестве нечеткого вывода используется модель Сугено.

Вызов графического интерфейса ANFIS осуществляется из рабочего поля MATLAB командой: anfisedit.

Загрузка ANFIS-редактора осуществляется по команде anfisedit.

В результате выполнения этой команды появится графическое окно (рис. 7.53) ANFIS-редактора.

Рис. 7.53. Основное окно ANFIS-редактора

Рабочее поле включает в себя несколько полей:

1)поле графического отображения процесса настройки нейронечеткой сети;

2)поле загрузки данных (Load Data);

3)поле генерации системы нечеткого вывода (Generate FIS);

4)поле обучения (Train FIS);

201

5)поле тестирования (Test FIS);

6)поле информации о свойствах ANFIS (ANFIS info). Ввод исходных данных осуществляется в поле, в соответ-

ствии с видом данных можно ввести:

7)Traning – обучающую выборку;

8)Testing – тестирующую выборку;

9)Checking – контрольную выборку;

10)Demo – демонстрационный пример.

Ввод исходных данных. Ввод данных может осуществляться из файла (file) или из рабочей области MATLAB (worksp). Загрузка осуществляется нажатием Load Data. Исходные данные вводятся как Training Data.

Следует отметить, что исходные данные должны быть представлены в виде матрицы, где столбцы с 1 по n – это входные данные, а n+1 – выходная последовательность. После загрузки данных в поле графического отображения отразится выходная выборка.

Выбор структуры системы нечеткого вывода. В поле генерирования системы нечеткого вывода (Generate FIS) клавиши Load… осуществляют ввод существующей системы нечеткого вывода. Этот ввод может быть или из файла (Load from file), или из рабочей области MATLAB (Load from worksp). С помощью этих команд загружается созданная система нечеткого вывода для моделирования или тестирования нейронечеткой сети.

Grid partition осуществляет создание структуры нечеткого вывода системы без кластеризации, а Sub Clustering – по методу субкластеризации.

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

Создание системы нечеткого вывода осуществляется при нажатии Generate FIS, при этом активируется окно параметров системы нечеткого вывода (рис. 7.54).

202

Рис. 7.54. Окно ввода параметров системы нечеткого вывода (без кластеризации)

В данном окне задается количество термов для входных переменных (Number of MFs), выбор функции принадлежности (MF Type) входных и выходных переменных.

Создание структуры системы нечеткого вывода осуществляется OK. Созданную структуру можно посмотреть с помощью Structure в поле ANFIS info, при этом активируется окно ANFIS model Structure. На рис. 7.55 представлена структура системы нечеткого вывода с 3 входами, которым сопоставлены лингвистические переменныес3функциямипринадлежностидлякаждой переменной.

Обучение нейронечеткой сети. В поле Train FIS осуще-

ствляется выбор метода настройки:

Backpropa – метод обратного распространения ошибки

сиспользованием метода оптимизации – наискорейшего спуска;

Hybrid – гибридный метод, объединяющий метод обратного распространения ошибки с методом наименьших квадратов.

203

Рис. 7.55. Пример структуры нейронечеткой сети

Также выбирается точность обучения (Error Tolerance) и количество эпох (Epochs).

Обучение осуществляется нажатием Train Now. По окончании обучения в поле графического отображения появится график ошибки обучения.

Вполе Test FIS можно увидеть результаты моделирования исходных данных (голубой круг – обучающая выборка (исходные данные), красная звездочка – результаты моделирования нейронечеткой сети).

Вслучае необходимости графическую область можно очистить командой Clear Plot в окне ANFIS info.

Тестирование нейронечеткой модели. Анализ адекват-

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

204

выборки (Load Data – Testing Data). Тестирование осуществляется путем выбора Testing в поле тестирования (Test FIS) и нажатия Test Now. Результаты тестирования будут отражены в графическом поле (голубая точка – тестирующая выборка, красная звездочка – результаты моделирования сети по данной тестирующей выборке).

С помощью команд меню File можно перейти в поле Fuzzy Toolbox по выбору New Fis; экспортировать (Export) или импортировать (Import) нейронечеткие сети в/из файла (To/From File) или в/из рабочей области MATLAB (To/From WorkSpace).

Меню Edit позволяет выполнить следующие операции:

Undo – отменить предыдущее действие;

FIS Properties – открыть созданную модель в FIS-

редакторе (Fuzzy Toolbox);

Membership Functions – открыть редактор функций принадлежности созданной сети (Fuzzy Toolbox);

Rules – открыть редактор правил нечеткого вывода функций созданной сети (Fuzzy Toolbox).

Меню View позволяет увидеть графики правил нечеткого вы- вода(Rules)иповерхности«входы-выход»вокнеSurFaceViewer.

ПРИМЕР 7.2. Построить нейронечеткую сеть по исходным данным из примера 7.1.

1. Загрузка исходных данных. В качестве исходных дан-

ных будут использованы значения y(t 1),

y(t 2), y(t 3),

y(t 4), y(t 5) – как входная выборка и y(t)

– выходная вы-

борка. Для обучения будет использовано 135 точек. Обучающая выборка сохранена в рабочей области MATLAB с именем data.

Результат загрузки представлен на рис. 7.56.

2. Создание структуры нейронечеткой системы. При соз-

дании структуры нейронечеткой модели выбраны: для 5 входных переменных выбраны лингвистические переменные с 3 термами; вид функции принадлежности – треугольная (trimf) (рис. 7.57).

205

Рис. 7.56. Главное окно редактораANFIS после загрузки обучающих выборки

Рис. 7.57. Окно параметров структуры системы нечеткого вывода

206

Структура системы нечеткого вывода представлена на рис. 7.58.

Рис. 7.58. Структура созданной системы нечеткого вывода

3. Задание параметров обучения. Для обучения системы нечеткого вывода выбраны следующие параметры: метод обучения гибридной сети (hybrid); уровень ошибки – 0 (рекомендовано не менять); количество эпох – 100.

Результат обучения (ошибка обучения) представлен на рис. 7.59.

По графику ошибки видно, что ошибка не пришла к установившемуся значению, поэтому было проведено обучение с 300 эпохами (рис. 7.60).

207

Рис. 7.59. График зависимости ошибок обучения от количества циклов обучения

Рис. 7.60. График зависимости ошибок обучения при количестве эпох 300

208

4. Моделирование результатов. Моделирование нейроне-

четкой сети и исходной выборки представлено на рис. 7.61.

Рис. 7.61. Графики обучающей выборки и нейронечеткой модели

5. Расчет прогноза. Расчет прогноза будет выполнен в FISредакторе.

Модель нечеткого вывода представлена на рис. 7.62.

В качестве прогноза выбрано значение [601 594 586 578 569]. Точное значение выхода y(t) 600. Результаты прогноза пред-

ставлены на рис. 7.63.

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

209

Рис. 7.62. Структура системы нечеткого вывода

Рис. 7.63. Расчет прогноза y(t) 601

210

Соседние файлы в папке книги