Зміст
Вступ 4
1. Базові поняття штучного нейрона 6
1.1 Штучні нейронні мережі 6
1.2 Біологічний нейрон 7
1.3 Штучний нейрон 8
1.4 Властивості побудови нейронних мереж 8
1.5Активаційна функція 10
1.6 Одношарові штучні нейронні мережі 12
1.7 Багатошарові штучні нейронні мережі 13
1.8 Нелінійна активаційна функція 14
2. Навчання штучних нейронних мереж 15
2.1 Мета навчання 15
2.2 Навчання з учителем 15
2.3 Навчання без учителя 15
2.4 Алгоритми навчання 16
2.5 Алгоритм зворотного розповсюдження помилки 17
Застосування програмних рішень 21
Приклади найбільш вдалих розробок 25
Висновки 27
Список використаної літератури 28
Додатки 29
Вступ
Штучні нейронні мережі застосовуються в різних галузях науки: починаючи від систем розпізнавання мови до розпізнавання вторинної структури білка, класифікації різних видів раку і генної інженерії. Однак, як вони працюють і які в них переваги?
Коли мова йде про завдання, відмінних від обробки великих масивів інформації, людський мозок володіє великою перевагою в порівнянні з комп'ютером. Людина може розпізнавати обличчя, навіть якщо в приміщенні буде багато сторонніх об'єктів і погане освітлення. Ми легко розуміємо незнайомців навіть коли знаходимося в шумному приміщенні. Але, незважаючи на роки досліджень, комп'ютери все ще далекі від виконання подібних завдань на високому рівні.
Людський мозок дивно надійний: у порівнянні з комп'ютером він не перестане працювати тільки тому, що кілька клітин загинуло, в той час як комп'ютер зазвичай не витримує жодних поломок в CPU. Але найдивовижнішою особливістю людського мозку є те, що він може вчитися. Не треба ніякого програмного забезпечення і ніяких оновлень, якщо ми хочемо навчитися їздити на велосипеді.
Розрахунки головного мозку виробляються за допомогою тісно взаємопов'язаних нейронних мереж, які передають інформацію, відсилаючи електричні імпульси через нейронні провідники. У 1943 році, компанія McCulloch and Pitts змоделювала штучний нейрон, як перемикач, який одержує інформацію від інших нейронів і в залежності від загального входу, або приводиться в дію, або залишається неактивним. У вузлі ШНМ приходящі сигнали множаться з відповідною вагою синапсів (див. рис. 1) і підсумовуються. Ці коефіцієнти можуть бути як позитивними (збуджуючими), так і негативними (гальмуючими). У 1960 роках було доведено, що такі нейронні моделі володіють властивостями, подібними з мозком: вони можуть виконувати складні операції розпізнавання образів, і вони можуть функціонувати, навіть якщо деякі зв'язки між нейронами зруйновані. Демонстрація персептона Розенблатта показала, що прості мережі з таких нейронів можуть навчатися на прикладах, відомих у певних областях. Пізніше, Мінський та Паперт довели, що прості пресептони можуть вирішувати тільки дуже вузький клас лінійно сепарабельних(скінченних чи зліченних) завдань, після чого активність вивчення ШНМ зменшилася. Тим не менш, метод зворотного поширення помилки навчання, який може полегшити завдання навчання складних нейронних мереж на прикладах, показав, що ці проблеми можуть бути і не сепарабельні.
Програма NETtalk застосовувала штучні нейронні мережі для машинного читання тексту і була першим широковідомим додатком. У біології, точно такий же тип мережі був застосований для прогнозування вторинної структури білка. Справді, деякі з кращих дослідників досі користуються тим же методом. З цього почалася інша хвиля, яка викликала інтерес до досліджень ШНМ і підняла галас навколо магічного навчання мислячих машин. Деякі з найбільш важливих ранніх відкриттів наведені в джерелі[].
ШНМ можуть бути створені шляхом імітації моделі мереж нейронів на комп'ютері. Використовуючи алгоритми, які імітують процеси реальних нейронів, ми можемо змусити мережу «вчитися», що допомагає вирішити безліч різних проблем.
Базові поняття штучного нейрона
Штучні нейронні мережі отримали широке поширення за останні 20 років і дозволили вирішувати складні завдання обробки даних, часто значно перевершуючи точність інших методів статистики і штучного інтелекту, або будучи єдино можливим методом вирішення окремих завдань. Нейронні мережі (НС) успішно застосовуються в самих різних областях - бізнесі, медицині, техніці, геології, фізики. Такий вражаючий успіх визначається кількома причинами: НС - виключно потужний метод моделювання, який дозволяє відтворювати надзвичайно складні залежності.
1.1 Штучні нейронні мережі
Розвиток штучних нейронних мереж надихається біологією. Тобто розглядаючи мережеві конфігурації і алгоритми, дослідники мислять в термінах організації мозкової діяльності. Але на цьому аналогія може і закінчитися. Наші знання про роботу мозку так обмежені, що мало б знайшлося (керівних орієнтирів) для тих, хто став би їм наслідувати. Тому розробникам мереж доводиться виходити за межі сучасних біологічних знань у пошуках структур, здатних виконувати корисні функції. У багатьох випадках це приводить до необхідності відмови від біологічної правдоподібності, мозок стає просто метафорою, і створюються мережі, неможливі в живій матерії або такі, що вимагають неправдоподібно великих припущень про анатомію і функціонування мозку. Незважаючи на те, що зв'язок з біологією слабкий і часто суттєвий, штучні нейронні мережі продовжують порівнюватися з мозком. Їх функціонування часто нагадує людське пізнання, тому важко уникнути цієї аналогії. На жаль, такі порівняння неплідні і створюють невиправдані очікування, які неминуче ведуть до розчарування. Дослідницький ентузіазм, заснований на помилкових надіях, може випаруватися, зіткнувшись з суворою дійсністю, як це вже одного разу було в шістдесяті роки, і багатообіцяюча область знов прийде в занепад, якщо не буде дотримуватись необхідної стриманості.
1.2 Біологічний нейрон
Незважаючи на зроблені попередження, корисно все ж знати дещо про нервову систему ссавців, оскільки вона успішно розв’язує задачі, до виконання яких лише прямують штучні системи.
/
Рисунок 1. Біологічний нейрон
Нервова система людини, побудована з елементів, званих нейронами, має приголомшуючу складність. Біля 1011 нейронів беруть участь у близько 1015 передаючих зв'язках, що мають довжину більше за метр. Кожному 21 нейрону притаманне багато властивостей, спільних з іншими частинами тіла, але його унікальною властивістю є прийом, обробка і передача електрохімічних сигналів нервовими шляхами, що утворюють комунікаційну систему мозку. На рисунку (рис. 1) показано структуру пари типових біологічних нейронів. Дендрити йдуть від тіла нервової клітки до інших нейронів, де вони приймають сигнали в точках з'єднання, званих синапсами. Прийняті синапсом вхідні сигнали надходять до тіла нейрона. Тут вони підсумовуються, причому одні входи прагнуть збудити нейрон, інші перешкодити його збудженню. Коли сумарне збудження в тілі нейрона перевищує деякий поріг, нейрон збуджується, посилаючи аксоном сигнал іншим нейронам. У цій основній функціональній схемі багато узагальнень і винятків, проте більшість штучних нейронних мереж моделюють лише ці зазначені властивості.
1.3 Штучний нейрон
Штучний нейрон імітує в першому наближенні властивості біологічного нейрона. На вхід штучного нейрона надходить деяка множина сигналів, кожен з яких є виходом іншого нейрона. Кожний вхід перемножується з відповідною вагою, аналогічної синаптичній силі, і всі доданки підсумовуються, визначаючи рівень активації нейрона. На рисунку (рис. 2) представлена модель, що реалізує цю ідею. Хоча мережеві парадигми досить різноманітні, в основі майже всіх їх лежить саме ця конфігурація. Тут множина вхідних сигналів, позначених x1, x2,..., xn, надходить на штучний нейрон. Вхідні сигнали, що в сукупності позначені вектором X, відповідають сигналам, що надходять до синапсів біологічного нейрона. Кожний сигнал перемножується з відповідною вагою w1, w2,..., wn, і надходить на підсумовуючий блок, позначений ∑. Кожна вага відповідає "силі" одного біологічного синаптичного зв'язку. Множина ваг в сукупності позначається вектором W. Підсумовуючий блок, що відповідає тілу біологічного елемента, складає зважені входи алгебраїчно, створюючи вихід, який ми будемо називати NET. У векторних позначеннях це може бути компактно записане таким чином:
NET = XW.
/
Рисунок 2. Штучний нейрон
1.4 Властивості побудови нейронних мереж
Безсумнівно, що технічні засоби нейронних мереж, побудовані на тих же принципах, що і біологічні нейронні мережі, та володіють рядом схожих властивостей. До таких властивостей відносяться:
масовий паралелізм,
розподілене представлення інформації і обчислення,
здатність до навчання і здатність до узагальнення,
адаптивність,
властивість контекстуальної обробки інформації,
толерантність до помилок,
низьке енергоспоживання.
Можна виділити основні ідеї, що лежать в основі нейронних мереж і нейромоделювання:
Нейромережа відтворює структуру і властивості нервової системи живих організмів: нейронна мережа складається з великого числа простих обчислювальних елементів (нейронів) і володіє більш складною поведінкою в порівнянні з можливостями кожного окремого нейрона. Нейромережа отримує на вході набір вхідних сигналів і видає відповідний їм відповідь (вихідні сигнали нейромережі), що є рішенням задачі.
Штучна нейромережа, як і природна біологічна нейронна мережа, може навчатися рішенню завдань: нейромережа містить внутрішні адаптивні параметри нейронів і своєї структури, і змінюючи їх, може змінювати свою поведінку.
Місце програмування займає навчання, тренування нейронної мережі: для вирішення завдання не потрібно програмувати алгоритм.
Нейронна мережа навчається вирішення завдання на деякому "підручнику" - наборі ситуацій, кожна з яких описує значення вхідних сигналів нейромережі і необхідний для цих вхідних сигналах відповідь. "Підручник" задає набір еталонних ситуацій з відомими рішеннями, а нейронна мережа при навчанні сама знаходить залежності між вхідними сигналами і відповідями.
Апаратна реалізація ШНМ - нейрокомп'ютер - має суттєві відмінності (як за структурою, так і за класом вирішуваних завдань) від обчислювальних машин, виконаних відповідно з традиційною архітектурою фон Неймана. Порівняльні характеристики нейрокомп'ютерів і традиційних комп'ютерів і традиційних комп'ютерів наведені в таблиці:
Категорії
порівняння
ЕОМ традиційної
архітектури
Нейрокомп'ютер
Процесор
Складний
Високошвидкісний
Один або декілька
Простий
Низькошвидкісний
Велика кількість
Пам'ять
Відокремлена від процесора
Локалізована
Адресація не за змістом
Інтегрована в процесор
Розподілена
Адресація по змісту
Обчислення
Централізовані
Послідовні
Збережені програми
Розподілені
Паралельні
Самонавчання
Надійність
Висока вразливість
Живучість
Спеціалізація
Чисельні і символьні операції
Проблеми сприйняття
Середовище функціонування
Строго визначена
Строго обмежена
Без обмежень
Таблиця 1. Порівняльні оцінки традиційних ЕОМ і нейрокомп'ютерів.
1.5Активаційна функція
Сигнал NET далі, як правило, перетворюється активаційною функцією F
і дає вихідний нейронний сигнал OUT. Активаційна функція може бути
звичайною лінійною функцією
OUT = K(NET),
де К константа порогової функції
OUT = 1, якщо NET > Т,
OUT = 0 в інших випадках,
де Т деяка стала порогова величина, або ж функція, що точніше моделює
нелінійну передатну характеристику біологічного нейрона і надає нейронній
мережі великі можливості.
/
Рисунок 3. Штучний нейрон з активаційною функцією
На рисунку (рис.3) блок, позначений F, приймає сигнал NET і видає сигнал OUT. Якщо блок F звужує діапазон зміни величини NET так, що при будь-яких значеннях NET значення OUT належать деякому кінцевому інтервалу, то F називається "стискаючою" функцією. В якості "стискаючої" функції часто використовується логістична або "сигмоїдальна" (S-подібна) функція, показана на рисунку (рис.4). Ця функція математично виражається як