Основні поняття про нейронні мережі
Найбільш часто нейронні мережі використовуються для вирішення наступних задач:
- класифікація образів – вказівка на приналежність вхідного образу, представленого вектором ознак, одному або кільком попередньо визначеним класам;
- кластеризація – класифікація образів при відсутності навчальної вибірки з мітками класів;
- прогнозування – передбачення значення y(tn+1) при відомій послідовності y(t1), y(t2) … y(tn);
- оптимізація – знаходження рішення, що задовольняє систему обмежень і максимізує або мінімізує цільову функцію. Пам'ять, що адресується за змістом (асоціативна пам'ять) – пам'ять, доступна при вказівці заданого змісту;
- управління – розрахунок такого вхідного впливу на систему, за якого система працює по бажаній траєкторії.
Структурною основою нейронної мережі є формальний нейрон. Нейронні мережі виникли із спроб відтворити здатність біологічних систем навчатися, моделюючи низькорівневу структуру мозку. Для цього в основу нейромережвої моделі покладається елемент, який імітує у першому наближенні властивості біологічного нейрона – формальний нейрон (далі просто нейрон). В організмі людини нейрони це особливі клітини, здатні поширювати електрохімічні сигнали.
Нейрон має розгалужену структуру для введення інформації (дендрити), ядро і вихід, що розгалужується (аксон). Будучи з'єднаними певним чином, нейрони утворюють нейронну мережу. Кожен нейрон характеризується певним поточним станом і має групу синапсів – односпрямованих вхідних зв'язків, з'єднаних з виходами інших нейронів, а також має аксон – вихідний зв'язок даного нейрона, за яким сигнал (порушення або гальмування) надходить на синапси наступних нейронів (рис. 8.1).
Рис. 0.1. Структура формального нейрона.
Кожен синапс характеризується величиною синапсичного зв'язку або його вагою wi, що по фізичному змісту еквівалентна електричній провідності.
Поточний стан (рівень активації) нейрона визначається, якщо зважена сума його входів:
Ошибка! Объект не может быть создан из кодов полей редактирования. (1)
де множина сигналів, позначених x1, x2,…, xn, надходить на вхід нейрона, кожен сигнал збільшується на відповідну вагу w1, w2,…,wn,і формує рівень його активації – S. Вихід нейрона є функція рівня його активації:
Ошибка! Объект не может быть создан из кодов полей редактирования. (2)
При функціонуванні нейронних мереж виконується принцип паралельної обробки сигналів. Він досягається шляхом об'єднання великого числа нейронів у так звані шари і з'єднання певним чином нейронів різних шарів, а також, у деяких конфігураціях, і нейронів одного шару між собою, причому обробка взаємодії всіх нейронів ведеться пошарово.
Рис. 0.2. Архітектура нейронної мережі з n нейронами у вхідному і трьома нейронами у вихідному шарі (одношаровий персептрон).
Як приклад найпростішої нейронної мережі, розглянемо одношаровий перcептрон з n нейронами у вхідному і трьома нейронами у вихідному шарі (рис. 8.2). Коли на n входів надходять якісь сигнали, вони проходять по синапсам на 3 вихідні нейрони. Ця система утворює єдиний шар нейронної мережі і видає три вихідних сигнали:
Очевидно, що усі вагові коефіцієнти синапсів одного шару нейронів можна звести в матрицю wj, кожен елемент якої wij задає величину синапсичного зв'язку i-го нейрона вхідного і j-го нейрона вихідного шарів (3).
Ошибка! Объект не может быть создан из кодов полей редактирования. (3)
Таким чином, процес, що відбувається в нейронній мережі, може бути записаний у матричній формі:
Ошибка! Объект не может быть создан из кодов полей редактирования., (4)
де x і y – відповідно вхідний і вихідний вектори, f(v) – активаційна функція, що застосовується поелементно до компонентів вектора v.
Вибір структури нейронної мережі здійснюється відповідно до особливостей і складності задачі. Для рішення деяких окремих типів задач вже існують оптимальні конфігурації. Якщо ж задача не може бути зведена до жодного з відомих типів, розробнику доводиться вирішувати складну проблему синтезу нової конфігурації.
Можлива така класифікація існуючих нейромереж. :
За типом вхідної інформації:
- мережі, що аналізують двійкову інформацію;
- мережі, що оперують з дійсними числами.
- За методом навчання:
- мережі, які необхідно навчити перед їхнім застосуванням;
- мережі, що не потребують попереднього навчання, здатні самонавчатися в процесі роботи.
За характером поширення інформації:
- односпрямовані, у яких інформація поширюється тільки в одному напрямку від одного шару до іншого;
- рекурентні мережі, у яких вихідний сигнал елемента може знову надходити на цей елемент і інші елементи мережі цього або попереднього шарів як вхідний сигнал.
За способом перетворення вхідної інформації:
- автоасоціативні;
- гетероасоціативні.
Розвиваючи далі питання про можливу класифікацію нейронних мереж, важливо відзначити існування бінарних і аналогових мереж. Перші з них оперують із двійковими сигналами, і вихід кожного нейрона може приймати тільки два значення: логічний нуль ("загальмований" стан) і логічна одиниця ("збуджений" стан). Ще одна класифікація поділяє нейронні мережі на синхронні й асинхронні. У першому випадку у кожний момент часу свій стан змінює лише один нейрон. У другому – стан змінюється відразу в цілої групи нейронів, як правило, у всього шару.
Мережі також можна класифікувати за числом шарів. На рис. 8.3 представлений двошаровий персептрон, отриманий з персептрона з рис. 8.2 шляхом додавання другого шару, що складається з двох нейронів.
Рис. 0.3. Архітектура нейронної мережі з односпрямованим поширенням сигналу – двошаровий персептрон.
Якщо розглядати роботу нейронних мереж, що вирішують задачу класифікації образів, то загалом їхня робота зводиться до класифікації (узагальнення) вхідних сигналів, що належать n-мірному гіперпростору, по деякому числу класів. З математичної точки зору це відбувається шляхом розбивки гіперпростору гіперплощинами (запис для випадку одношарового персептрона)
Ошибка! Объект не может быть создан из кодов полей редактирования., (5),
де k=1...m – номер класу.
Кожна отримана область є областю визначення окремого класу. Число таких класів для однієї нейронної мережі персептронного типу не перевищує 2m, де m – число виходів мережі. Однак не усі з них можуть бути розподілені даною нейронною мережею.
Наприклад, одношаровий персептрон, що складається з одного нейрона з двома входами, не здатний розділити площиною (двовимірний гіперпростір) на дві півплощини так, щоб здійснити класифікацію вхідних сигналів по класах A і B у випадку, представленому в таблиці 8.1 – «задача АБО, що не розділяється».
Таблица 0.1
x1 x2 | ||
А | У | |
У | А |
Рівняння мережі для цього випадку
Ошибка! Объект не может быть создан из кодов полей редактирования. (6)
є рівнянням прямої (одномірної гіперплощини), що ні при яких умовах не може розділити площину так, щоб точки з безлічі вхідних сигналів, що належать різним класам, виявилися по різні сторони від прямої.