Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Інтелектуальні системи Методичні вказівки до ви...doc
Скачиваний:
7
Добавлен:
25.11.2019
Размер:
4.88 Mб
Скачать

Завдання на лабораторну роботу.

  1. Cтворити нечітку модель бази знань на основі трьох вхідних векторів і одного вихідного. Зафіксувати початкові параметри моделі.

  2. Задати 100 циклів навчання, встановивши допустиму похибку 0. Зафіксувати після навчання параметри відповідних функцій належності і записати похибку. Протестувати гібридну систему.

  3. Задати 300 циклів навчання, записати параметри і похибку. Протестувати гібридну систему.

  4. Задати 500 циклів навчання, записати параметри і похибку. Протестувати гібридну систему.

До протоколу занести: набір даних, що використовувався в роботі (якщо він великий – навести фрагмент), опис процесу використання програмного забезпечення для обробки набору даних, що має бути ілюстрований зображеннями екранних форм. Результати роботи програмного забезпечення (зображення структури отриманої мережі, її ваги, результати прийняття рішень, інші характеристики).

Методика проведення роботи.

Для виконання лабораторної роботи необхідно завантажити програмне забезпечення МАТLАВ. ANFIS-редактор викликається з командного вікна командою anfisedit. У результаті виконання цієї команди з’явиться графічне вікно, зображене на рис. 16. На цьому ж рисунку зазначено функціональні області ANFIS-редактора, опис яких приведено нижче.

ANFIS-редактор містить 3 верхніх меню: File, Edit і View, область візуалізації, область властивостей ANFIS, область завантаження даних, область генерації початкової системи нечіткого логічного виведення, область навчання, область тестування, область виведення поточної інформації, а також кнопки Help і Close, що дозволяють викликати вікно довідки і закрити ANFIS-редактор, відповідно.

Призначення команд меню Edit: Undo – скасовує раніше зроблену дію. FIS Properties… – відкриває FIS-редактор. Membership Functions… – відкриває редактор функцій належності. Rules… – відкриває редактор бази знань. Anfis… – відкриває ANFIS-редактор.

Область візуалізації містить два типи інформації: при навчанні системи – крива навчання у виді графіка залежності помилки навчання від порядкового номера ітерації; при завантаженні даних і тестуванні системи – експериментальні дані і результати моделювання.

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

Експериментальні дані і результати моделювання виводяться у вигляді множини крапок у двовимірному просторі. При цьому по вісі абсцис відкладається порядковий номер рядка даних у вибірці (навчальної, тестової або контрольної), а по осі ординат – значення вихідної змінної для даного рядка вибірки. Використовуються наступні маркери: блакитна крапка () – тестова вибірка; блакитна окружність (o) – навчальна вибірка; блакитний плюс (+) – контрольна вибірка; червона зірочка (*) – результати моделювання.

В області властивостей ANFIS (ANFIS info) виводиться інформація про кількість вхідних і вихідних змінних, про кількість функцій належності для кожної вхідний змінний, а також про кількість рядків у вибірках. У цій області розташовані дві кнопки Structure і Clear Plot.

Натискання кнопки Structure відкриває нове графічне вікно, у якому система нечіткого логічного висновку представляється у вигляді нейро-нечіткої мережі. Натискання кнопки Clear Plot дозволяє очистити область візуалізації.

В області завантаження даних (Load data) розташовані: меню вибору типу даних (Type), що містить альтернативи (Traning – навчальна вибірка; Testing – тестова вибірка; Checking – контрольна вибірка; Demo – демонстраційний приклад); меню вибору джерела даних (From), що містить альтернативи (disk – диск; worksp. – робоча область MatLab); кнопка завантаження даних Load Data…, по натисканню якої, з’являється діалогове вікно вибору файлу, якщо завантаження даних відбувається з диска, або вікно введення ідентифікатора вибірки, якщо завантаження даних походить з робочої області; кнопка очищення даних Clear Data.

В області генерування (Generate FIS) розташовані меню вибору способу створення вихідної системи нечіткого логічного виведення. Меню містить наступні альтернативи: Load from disk – завантаження системи з диска; Load from worksp. – завантаження системи з робочої області MatLab; Grid partition – генерування системи по методу ґрат (без кластеризації); Sub. clustering – генерування системи за методом субкластеризації.

В області також розташована кнопка Generate, по натисканню якої генерується вихідна система нечіткого логічного висновку.

При виборі Load from disk з’являється стандартне діалогове вікно відкриття файлу.

При виборі Load from worksp. з’являється стандартне діалогове вікно введення ідентифікатора системи нечіткого логічного висновку.

При виборі Grid partition з’являється вікно введення параметрів методу сіток, у якому потрібно вказати кількість термів для кожен вхідний змінної і тип функцій приналежності для вхідних і вихідної змінних.

При виборі Sub. clustering з’являється вікно введення наступних параметрів методу субкластеризації: Range of influence – рівні впливу вхідних змінних; Squash factor – коефіцієнт пригнічення; Accept ratio – коефіцієнт, що встановлює у скільки разів потенціал даної точки повинний бути вище потенціалу центра першого кластера для того, щоб центром одного з кластерів була призначена розглянута точка; Reject ratio - коефіцієнт, що встановлює у скількох разів потенціал даної точки повинний бути нижче потенціалу центра першого кластера, щоб розглянута точка була виключена з можливих центрів кластерів.

В області навчання (Train FIS) розташовані меню вибору методу оптимізації (Optim. method), поле завдання необхідної точності навчання (Error tolerance), поле завдання кількості ітерацій навчання (Epochs) і кнопка Train Now, натискання якого запускає режим навчання. Проміжні результати навчання виводяться в область візуалізації й у робочу область MatLab. У ANFIS-редакторі реалізовані два методи навчання: backpropa – метод зворотного поширення помилки, заснований на ідеях методу найшвидшого спуска; hybrid – гібридний метод, що поєднує метод зворотного поширення помилки з методом найменших квадратів.

В області тестування (Test FIS) розташовані меню вибору вибірки і кнопка Test Now, по натисканню по який відбувається тестування нечіткої системи з виведення результатів в область візуалізації.

Область виведення поточної інформації: у цій області виводиться найбільш істотна поточна інформація, наприклад, повідомлення про закінчення виконанні операцій, значення помилки чи навчання тестування і т.п.

За допомогою редактора m-файлів або будь-якого текстового редактору створити файл, який буде містити таблицю. Наприклад, для відділення приготування опари при виробництві хліба таблиця матиме вигляд (температура і вологість опари, тривалість бродіння опари, втрати сухих речовин при бродінні опари):

Числа в рядку розділяються клавішею «Space», а перехід на наступний рядок відбувається натисненням клавіші «Enter» . Слід зберегти цей файл у робочій теці work каталогу Matlab з будь-якою назвою та розширенням *.dat. Взагалі, вхідні дані представляють собою звичайну числову матрицю розмірності m(n+1), у якій кількість рядків m відповідає обсягу вибірки, перші п стовпців — значенням вхідних змінних моделі, а останній стовпчик — значенню вихідної змінної.

Х оча по кількості рядків матриці вхідних даних не існує формальних рекомендацій, прийнято вважати, що якість навчання гібридної мережі, а, отже, і точність одержуваних результатів пропорційно залежить від обсягу навчальної вибірки. Що стосується кількості стовпців матриці вхідних даних, то слід зазначити можливі проблеми з працездатністю системи МАТLАВ, якщо кількість вхідних змінних перевищує 5- 6.

Для створення гібридної мережі необхідно завантажити дані (кнопка Load Data). Після завантаження файлу із даними в редактор АNFIS у робочому вікні редактора буде зображений графік (рис.17), ордината якого відображає значення вхідної математичної функції (кількість продукції у прикладі).

Рис.17. Графічний інтерфейс редактора ANFIS після завантаження файлу з даними.

Необхідно згенерувати структуру системи нечіткого виводу FIS, яка аналогічна структурі системи нечіткого виводу типу Сугено. Тобто, має в своєму складі лінгвістичні вхідні змінні; вихідну змінну, терми якої представляються у вигляді числових констант або лінійних функцій від вхідних змінних; систему правил виводу.

Крім того, можна завантажити структуру уже створеної FIS з диска (Load from disk), або з робочої області (Load from worksp). При створенні структури нової FIS можна незалежно розбити усі вхідні змінні на області їх значень (Grid partision) чи скористатися процедурою субтрактивної кластеризації для попередньої розбивки значень вхідних змінних на кластери близьких значень (Sub. clustering).

Після натискання кнопки Generate FIS викликається діалогове вікно з вказівкою числа і типу функцій належності для окремих термів вхідних змінних і вихідної змінної (рис. 18). В цьому вікні можна вибрати тип функцій належності і кількість термів кожної вхідної змінної, а також тип вихідної змінної. Встановивши параметри генерації, наприклад, як на рис.18, одержимо структуру FIS.

Після генерації структури гібридної мережі можна її подивитись, натиснувши кнопку Structure в правій частині графічного вікна. Структура отриманої в результаті системи нечіткого виводу FIS відображається в окремому вікні (рис.19). Проаналізуйте її зміст.

Рис. 18. Діалогове вікно для задання кількості і типу функцій належності.

Рис. 19. Структура згенерованої гібридної моделі.

Перед навчанням гібридної мережі необхідно задати параметри навчання, для чого варто скористатися наступною групою опцій у правій нижній частині робочого вікна:

  1. Вибрати метод навчання гібридної мережі — зворотного розповсюдження (backprорa) чи гібридний (hybrid), що представляє собою комбінацію мeтоду найменших квадратів і методу зворотного розповсюдження помилки.

  2. Встановити рівень помилки навчання (Error Tolerance) — за замовчуванням значення 0.

  3. Задати кількість циклів навчання (Epochs) — за замовчуванням значення 3 (рекомендується збільшити і для розглянутого приклада задати його значення рівним 100).

При натисканні кнопки Trian Now хід процесу навчання ілюструється у вікні візуалізації у формі графіка — залежність помилки від кількості циклів навчання (рис.20).

Рис. 20. Результат навчання нейро-нечіткої мережі.

Настроювання параметрів побудованої і навченої гібридної мережі може бути виконане за допомогою розглянутих раніше стандартних графічних засобів пакета Fuzzy Logic Toolbox. Для цього рекомендується зберегти створену систему нечіткого виводу в зовнішньому файлі з розширенням fis. При роботі безпосередньо в редакторі ANFIS стають доступними редактор функцій належності системи нечіткого виводу (Membership Function Editor), редактор правил системи нечіткого виводу (Rule Editor), програма перегляду правил системи нечіткого виводу (Rule Viewer) і програма перегляду поверхні системи нечіткого виводу (рис.21) (Surface Viewer). Проаналізуйте правила та функції належності, які були побудовані даною системою апроксимації виробничої функції. Спробуйте їх корегувати і слідкувати за зміною результатів.

Рис. 21. Графічний інтерфейс поверхні згенерованої системи нечіткого виводу.

Аналіз адекватності побудованої моделі можна виконати за допомогою перегляду правил відповідної системи нечіткого виводу (рис.22).

Рис. 22. Графічний інтерфейс правил згенерованої системи нечіткого виводу.

Перевірка побудованої моделі гібридної мережі може бути виконана для декількох значень вихідної змінної. З цією метою необхідно ввести конкретне значення в поле вводу Input, після натискання клавіші <Enter> за допомогою побудованої моделі буде отримане відповідне значення вихідної змінної. Порівнюючи отримане значення з точним значенням функції (таблиця початкових даних), одержимо відносну помилку. Якщо похибка велика, то необхідно провести додаткове настроювання моделі можливими способами, а саме:

  • Підготовка і завантаження більшого за обсягом вибірки файлу з вхідними даними.

  • Редагування типів і значень параметрів функцій належності термів вхідної і вихідної змінних за допомогою редактора функцій належності системи МАТLАВ.

Після видалення усіх раніше завантажених даних кнопкою Clear Data завантажимо новий файл із навчальною вибіркою. При генерації структури нової FIS збільшимо кількість термiв і, відповідно, кількість функцій належності вхідної змінної до 7, залишивши їх тип без зміни. Процес навчання виконаємо аналогічно раніше розглянутому. У результаті буде отримана нова система нечіткого виводу.

Необхідно відмітити, що навіть найпростіший розглянутий приклад відбиває творчий характер процесу побудови й аналізу моделей гібридних мереж. При цьому вибір того чи іншого способу додаткового настроювання нечітких моделей залежить не тільки від специфіки розв’язуваної задачі, але і від обсягу доступної вибірки даних.