Лабораторна робота № 3 Нейронні мережі на основі радіальних базисних функцій Мета: отримати навички розв’язання практичних задач за допомогою мереж на основі радіальних базисних функцій. 2.1. Теоретичні відомості Основні відомості Мережа на основі радіальних базисних функцій (РБФ-мережа) — це тришарова нейронна мережа з одним прихованим шаром. Прихований шар виконує фіксоване нелінійне перетворення без налаштування параметрів. Найновіші модифікації методу передбачають налаштування параметрів першої матриці зв’язків. .
Рис. 2.1. Структура РБФ-мережі При переході від вхідного шару до прихованого здійснюється нелінійне перетворення простору, тобто відображення (рис. 2.1)
де — радіальні функції виду (рис. 2.2).
Рис. 2.2. Приклад радіальної функції В якості радіальної функції зазвичай вибирають функцію Гауса: . Нейрони вихідного шару здійснюють лінійне перетворення простору (є лінійною комбінацією виходів попереднього шару):
або у векторній формі . Навчання мережі на основі радіальних базисних функцій Навчання мережі на основі радіальних базисних функцій включає: 1. Вибір параметрів (середнього та дисперсії) радіальних функцій. 2. Навчання вихідного шару за наступною формулою: . Приклад: проблема виключаючого АБО Проблема виключаючого АБО (XOR-проблема) полягає в апроксимації таблиці істинності логічної функції x XOR y.
1 0
1 0 1
0 1 0
Ця функція набуває значення 1 тільки у тих випадках, коли значення аргументів відрізняються. РБФ-мережа забезпечує перетворення простору, при якому класи значень 1 та 0 стають лінійно роздільними (рис. 2.3).
Рис. 2.3. Перетворення простору для XOR-проблеми , . 2.2. Порядок виконання роботи 1. Реалізувати нейронну мережу на основі радіальних базисних функцій, використовуючи такі мови програмування як C++, Java, Fortran. 2. За допомогою побудованої нейроної мережі розв’язати задачу згідно з номером варіанту. (Номер варіанту визначається за номером у списку групи.) Для цього на основі відповідного файлу (ім’я dataномер_варіанту.csv) необхідно випадковим чином сформувати навчальну та тестову вибірки (у співвідношенні 4:1). Навчити нейронну мережу на навчальній вибірці. 3. Перевірити роботу нейронної мережі на тестових даних. 4. Результати роботи оформити звітом, який має містити: постановку задачі, навчальну вибірку даних та їх представлення у графічному виді на R2, результати роботи на тестовій множині даних, всі параметри нейронної мережі, що навчилася, вихідний код програми.