Штучні нейронні мережіІнтелектуальні системи на основі штучних нейронних мереж дозволяють з успіхом вирішувати проблеми розпізнавання образів, виконання прогнозів, оптимізації, асоціативній пам'яті і керування. Традиційні підходи до рішення цих проблем не завжди надають необхідну гнучкість. Багато застосувань виграють від використання нейромереж. Штучні нейромережі є електронними моделями нейронної структури мозку, який головним чином навчається з досвіду. Природній аналог доводить, що множина проблем, які поки що не підвладні розв'язуванню наявними комп'ютерами, можуть бути ефективно вирішені блоками нейромереж. Тривалий період еволюції додав мозку людини багато якостей, що відсутні в сучасних комп'ютерах з архітектурою фон Неймана. До них відносяться: - розподілене представлення інформації і паралельні обчислення;
- здатність до навчання і здатність до узагальнення;
- адаптивність;
- толерантність до помилок
- низьке енергоспоживання.
Прилади, побудовані на принципах біологічних нейронів мають перелічені характеристики, що можна вважати суттєвим здобутком у індустрії обробки даних. Досягнення в галузі нейрофізіології надають початкове розуміння механізму природного мислення, де збереження інформації відбувається у вигляді образів, деякі з яких є складними. Процес зберігання інформації як образів, використання образів і вирішення поставленої проблеми визначають нову галузь в обробці даних, яка не використовуючи традиційного програмування, забезпечує створення паралельних мереж та їх навчання. В лексиконі розробників та користувачів нейромереж присутні слова, дуже відмінні від традиційної обробки даних, зокрема, "вести себе", "реагувати", "самоорганізовувати", "навчати", "узагальнювати" та "забувати". Історія нейронних мережВивченню людського мозку - тисячі років. З появою сучасної електроніки, почались спроби апаратного відтворення процесу мислення. Перший крок був зроблений у 1943 р. З виходом статті нейрофізіолога Уоррена Маккалоха (Warren McCulloch) і математика Уолтера Піттса (Walter Pitts) про роботу штучних нейронів і представлення моделі нейронної мережі на електричних схемах. В 1949 р. опублікована книга Дональда Хебба (Donald Hebb) "Організація поведінки". В ній досліджена проблематика налаштування синаптичних зв'язків. В 1950-х рр. з'являються програмні моделі штучних нейромереж. Перші роботи провів Натаніел Рочестер (Nathanial Rochester) з дослідної лабораторії IBM. І хоча пізніші реалізації були успішними, його модель зазнала невдачі, оскільки бурхливий зріст традиційних обчислень залишив у затінку нейронні дослідження. В 1956 р. Дартмутський дослідний проект з штучного інтелекту забезпечив підйом штучного інтелекту, зокрема нейронних мереж. Стимулювання досліджень штучного інтелекту розгалузилось в двох напрямках: промислові застосування систем штучного інтелекту (експертні системи) та моделювання мозку. В 1958 р. Джон фон Нейман (John fon Neumann) запропонував імітацію простих функцій нейронів з використанням телеграфної передачі або вакуумних трубок. В 1959 р. Бернард Відров (Bernard Widrow) та Марсіан Хофф (Marcian Hoff) розробили моделі ADALINE та MADALINE (Множинні Адаптивні Лінійні Елементи (Multiple ADAptive LINear Elements)). MADALINE діяла, як адаптивний фільтр, що усував відлуння на телефонних лініях. Ця нейромережа досі в комерційному використанні. Нейробіолог Френк Розенблатт (Frank Rosenblatt) почав роботу над перцептроном. Одношаровий перцептрон був збудований апаратно і вважається класичною нейромережею. На той час перцептрон використовувався у класифікації множини вхідних сигналів у один з двох класів. На жаль, одношаровий перцептрон був обмеженим і зазнав критиці у 1969 р., у книзі Марвіна Мінскі (Marvin Minsky) та Сеймура Пейперта (Seymour Papert) "Перцептрони". Ранні успіхи, були підставою того, що люди перебільшили потенціал нейронних мереж, зокрема в світлі обмеженої на ті часи електроніки. Надмірне сподівання, яке квітнуло у академічному та технічному світах, заразило загальну літературу цього часу. Побоювання у тому, як ефект "мислячої машини" відіб'ється на людині весь час підігрівався письменниками, зокрема серія книг Азімова про роботів показала наслідки на моральних цінностях людини, у випадку спроможності інтелектуальних роботів виконувати функції людини. Ці побоювання, об'єднані з невиконаними обіцянками викликали множину розчарувань фахівців, які критикували дослідження нейронних мереж. Результатом було припинення більшості фінансування. Цей період спаду продовжувався до 80-х років. У 1982 р. відновлення інтересу спричинило декілька подій. Джон Хопфілд (John Hopfield) представив статтю до національної Академії Наук США. Підхід Хопфілда створював докорінно нові підходи до моделювання. У той самий час у Кіото (Японія) відбулась Об'єднана американо-японська конференція по нейронних мережах, які оголосили досягненням п'ятої генерації. Американські періодичні видання підняли цю історію, акцентуючи, що США можуть залишитись позаду, що привело до зросту фінансування в галузі нейромереж. З 1985 р. Американський Інститут Фізики розпочав щорічні зустрічі - "Нейронні мережі для обчислень". В 1989 р. на зустрічі "Нейронні мережі для оборони" Бернард Відров повідомив аудиторії про початок четвертої світової війни, де полем бою є світові ринки та виробництва. У 1990 р. Департамент програм інноваційних досліджень захисту малого бізнесу назвав 16 основних та 13 додаткових тем, де потрібне та можливе використання нейронних мереж. Сьогодні, обговорення нейронних мереж відбуваються скрізь. Перспектива їх використання видається досить яскравою, в світлі вирішення нетрадиційних проблем і є ключем до цілої технології. На даний час більшість розробок нейронних мереж принципово працюючі, але можуть існувати процесорні обмеження. Дослідження скеровані на програмні та апаратні реалізації нейромереж. Компанії працюють над створенням трьох типів нейрочіпів: цифрових, аналогових та оптичних, що обіцяють бути хвилею близького майбутнього. Аналогія з мозкомТочна робота мозку людини - все ще таємниця. Проте деякі аспекти цього дивовижного процесора відомі. Базовим елементом мозку людини є специфічні клітини, відомі як нейрони, що здатні запам'ятовувати, думати і застосовувати попередній досвід до кожної дії, що докорінно відрізняє їх від решта клітин тіла. Кора головного мозку людини є протяжною, утвореною нейронами поверхнею товщиною від 2 до 3 мм із площею близько 2200 см2, що вдвічі перевищує площу поверхні стандартної клавіатури. Кора головного мозку містить близько 1011 нейронів, що приблизно дорівнює числу зірок Чумацького шляху. Кожен нейрон зв'язаний з 103 - 104 іншими нейронами. У цілому мозок людини містить приблизно від 1014 до 1015 взаємозв'язків. Сила людського розуму залежить від числа базових компонент, різноманіття з'єднань між ними, а також від генетичного програмування і навчання. Індивідуальний нейрон є складним, має свої складові, підсистеми та механізми керування і передає інформацію через велику кількість електрохімічних зв'язків. Налічують біля сотні різних класів нейронів. Разом нейрони та з'єднання між ними формують недвійковий, нестійкий та несинхронний процес, що різниться від процесу обчислень традиційних комп'ютерів. Штучні нейромережі моделюють лише найголовніші елементи складного мозку, що надихає науковців та розробників до нових шляхів розв'язування проблеми. Біологічний нейронНейрон (нервова клітка) складається з тіла клітини - соми (soma), і двох типів зовнішніх деревоподібних відгалужень: аксона (axon) і дендритів (dendrites). Тіло клітини вміщує ядро (nucleus), що містить інформацію про властивості нейрону, і плазму, яка продукує необхідні для нейрону матеріали. Нейрон отримує сигнали (імпульси) від інших нейронів через дендрити (приймачі) і передає сигнали, згенеровані тілом клітки, вздовж аксона (передавач), що наприкінці розгалужується на волокна (strands). На закінченнях волокон знаходяться синапси (synapses). Рис. 1. Схема біологічного нейрона. Синапс є функціональним вузлом між двома нейронами (волокно аксона одного нейрона і дендрит іншого). Коли імпульс досягає синаптичного закінчення, продукуються хімічні речовини, названі нейротрансмітерами. Нейротрансмітери проходять через синаптичну щілину, збуджуючи або загальмовуючи, у залежності від типу синапсу, здатність нейрона-приймача генерувати електричні імпульси. Результативність синапсу налаштовується минаючими через нього сигналами, тому синапси навчаються в залежності від активності процесів, у яких вони приймають участь. Нейрони взаємодіють за допомогою короткої серії імпульсів. Повідомлення передається за допомогою частотно-імпульсної модуляції. Останні експериментальні дослідження доводять, що біологічні нейрони структурно складніші, ніж спрощене пояснення, наведене вище і значно складніші, ніж існуючі штучні нейрони, які є елементами сучасних штучних нейронних мереж. Оскільки нейрофізіологія надає науковцям розширене розуміння дії нейронів, а технологія обчислень постійно вдосконалюється, розробники мереж необмежений простір для вдосконалення моделей біологічного мозку. Штучний нейронБазовий модуль нейронних мереж штучний нейрон моделює чотири основні функції природного нейрона (рис. 2). Рис. 2. Базовий штучний нейрон. Вхідні сигнали xn зважені ваговими коефіцієнтами з'єднання wn додаються, проходять через передатну функцію, генерують результат і виводяться. У наявних на цей час пакетах програм штучні нейрони називаються "елементами обробки" і мають набагато більше можливостей, ніж простий штучний нейрон, описаний вище. На рис. 3 зображена детальна схема спрощеного штучного нейрону. Рис. 3. Модель "елементу обробки" Модифіковані входи передаються на функцію сумування, яка переважно тільки сумує добутки. Проте можна обрати багато різних операцій, такі як середнє, найбільше, найменше, OR, AND, тощо, які могли б виробляти деяку кількість різних значень. Окрім того, більшість комерційних програм дозволяють інженерам-програмістам створювати власні функції сумування за допомогою підпрограм, закодованих на мові високого рівня (C, С++, TurboPascal). Інколи функція сумування ускладнюється додаванням функції активації, яка дозволяє функції сумування оперувати в часі. В любому з цих випадків, вихід функції сумування надсилається у передатну функцію і скеровує весь ряд на дійсний вихід (0 або 1, -1 або 1, або яке-небудь інше число) за допомогою певного алгоритму. В існуючих нейромережах в якості передатних функцій можуть бути використані сигмоїда, синус, гіперболічний тангенс та ін. Приклад того, як працює передатна функція показаний на рис. 4. Рис. 4. Сигмоїдна передатна функція. Після обробки сигналу, нейрон на виході має результат передатної функції, який надходить на входи інших нейронів або до зовнішнього з'єднання, як це передбачається структурою нейромережі. Всі штучні нейромережі конструюються з базового формуючого блоку - штучного нейрону. Існуючі різноманітності і фундаментальні відмінності, є підставою мистецтва талановитих розробників для реалізації ефективних нейромереж. Штучні нейронні мережі Інша частина створення і використання нейромереж стосується нескінченої кількості зв'язків, що пов'язують окремі нейрони. Групування у мозку людини відбувається так, що інформація обробляється динамічним, інтерактивним та самоорганізуючим шляхом. Біологічні нейронні мережі створені у тривимірному просторі з мікроскопічних компонент і здатні до різноманітних з'єднань. Але для створеної людиною мережі існують фізичні обмеження. Рис. 5. Діаграма простої нейронної мережі Існуючі на даний час, нейромережі є групуванням штучних нейронів. Це групування обумовлено створенням з'єднаних між собою прошарків. На рис. 5 показана типова структура штучних нейромереж. Хоча існують мережі, які містять лише один прошарок, або навіть один елемент, більшість застосувань вимагають мережі, які містять як мінімум три нормальних типи прошарків - вхідний, прихований та вихідний. Прошарок вхідних нейронів отримує дані або з вхідних файлів, або безпосередньо з електронних давачів. Вихідний прошарок пересилає інформацію безпосередньо до зовнішнього середовища, до вторинного комп'ютерного процесу, або до інших пристроїв. Між цими двома прошарками може бути багато прихованих прошарків, які містять багато нейронів у різноманітних зв'язаних структурах. Входи та виходи кожного з прихованих нейронів просто йдуть до інших нейронів. Напрямок зв'язку від одного нейрону до іншого є важливим аспектом нейромереж. У більшості мереж кожен нейрон прихованого прошарку отримує сигнали від всіх нейронів попереднього прошарку та звичайно від нейронів вхідного прошарку. Після виконання операцій над сигналами, нейрон передає свій вихід до всіх нейронів наступних прошарків, забезпечуючи шлях передачі вперед (feedforward) на вихід. Рис. 6. Мережа зі зворотнім зв'язком При зворотному зв'язку, вихід нейронів прошарку скеровується до нейронів попереднього прошарку (рис. 6). Шлях, яким нейрони з'єднуються між собою має значний вплив на роботу мережі. Більшість пакетів професіональної розробки програмного забезпечення дозволяють користувачу додавати, вилучати та керувати з'єднаннями як завгодно. Постійно корегуючи параметри, зв'язки можна робити як збуджуючими так і гальмуючими. Навчання штучної нейронної мережіЗдатність до навчання є фундаментальною властивістю мозку. Процес навчання може розглядатися як визначення архітектури мережі і налаштування ваг зв'язків для ефективного виконання спеціальної задачі. Нейромережа налаштовує ваги зв'язків по наявній навчальній множині. Властивість мережі навчатися на прикладах робить їх більш привабливими в порівнянні із системами, які функціонують згідно визначеній системі правил, сформульованої експертами. Для процесу навчання необхідно мати модель зовнішнього середовища, у якій функціонує нейрона мережа - потрібну для вирішення задачі інформацію. По-друге, необхідно визначити, як модифікувати вагові параметри мережі. Алгоритм навчання означає процедуру, в якій використовуються правила навчання для налаштування ваг. Існують три загальні парадигми навчання: "з вчителем", "без вчителя" (самонавчання) і змішана. У першому випадку нейромережа має у своєму розпорядженні правильні відповіді (виходи мережі) на кожен вхідний приклад. Ваги налаштовуються так, щоб мережа виробляла відповіді як можна більш близькі до відомих правильних відповідей. Навчання без вчителя не вимагає знання правильних відповідей на кожен приклад навчальної вибірки. У цьому випадку розкривається внутрішня структура даних та кореляція між зразками в навчальній множині, що дозволяє розподілити зразки по категоріях. При змішаному навчанні частина ваг визначається за допомогою навчання зі вчителем, у той час як інша визначається за допомогою самонавчання. Обґрунтованість застосування нейромережНейромережі не можна вважати рішенням для всіх обчислювальних проблем. Традиційні комп'ютери та обчислювальні методи є ідеальними для багатьох застосувань. Сучасні цифрові обчислювальні машини перевершують людину по здатності робити числові і символьні обчислення. Однак людина може без зусиль вирішувати складні задачі сприйняття зовнішніх даних (наприклад, впізнавання людини в юрбі по його обличчю) з такою швидкістю і точністю, що наймогутніший у світі комп'ютер у порівнянні з ним здається безнадійним тугодумом. У чому причина настільки значного розходження в їхній продуктивності? Машина фон Неймана у порівнянні з біологічної нейронною системоюХарактеристики | Машина фон Неймана | Біологічна нейрона система | Процесор | - Складний
- Високошвидкісний
- Один чи декілька
| - Простій
- Низькошвидкісний
- Велика кількість
| Пам'ять | - Відділена від процесора
- Локалізована
- Адресація не по змісту
| - Інтегрована в процесор
- Розподілена
- Адресація по змісту
| Обчислення | - Централізовані
- Послідовні
- Збережені програми
| - Розподілені
- Паралельні
- Самонавчання
| Надійність | - Висока вразливість
| - Живучість
| Спеціалізація | - Чисельні і символьні операції
| - Проблеми сприйняття
| Середовище функціонування | - Строго визначена
- Строго обмежена
| - Погано визначена
- Без обмежень
| Функції | - Логічно, через правила, концепції, обчислення
| - Через зображення, рисунки, керування
| Метод навчання | - За правилами (дидактично)
| - За прикладами (сократично)
| Застосування | - Числова та символьна обробка інформації
| - Розпізнавання мови
- Розпізнавання образів
- Розпізнавання текстів
|
Представимо деякі проблеми, розв'язувані в контексті нейромоделювання, які представляють інтерес для вчених і інженерів. Класифікація образів. Завдання полягає у визначенні приналежності вхідного образа (наприклад, мовного сигналу чи рукописного символу), представленого вектором ознак, одному чи декільком попередньо визначеним класам. До відомих застосувань відносяться розпізнавання букв, розпізнавання мови, класифікація сигналу електрокардіограми, класифікація кліток крові. Кластеризація/категоризація. При рішенні задачі кластеризації, що відома також як класифікація образів "без вчителя", навчальна множина з визначеними класами відсутня. Алгоритм кластеризації заснований на подобі образів і розміщує близькі образи в один кластер. Відомі випадки застосування кластеризації для видобутку знань, стиснення даних і дослідження властивостей даних. Апроксимація функцій. Припустимо, що є навчальна вибірка ((x1,y1), (x2,y2)..., (xn,yn)) (пари даних вхід-вихід), яка генерується невідомою функцією F, спотвореної шумом. Завдання апроксимації полягає в знаходженні невідомої функції F. Апроксимація функцій необхідна при рішенні численних інженерних і наукових задач моделювання. Передбачення/прогноз. Нехай задані n дискретних відліків {y(t1), y(t2), ..., y(tn)} у послідовні моменти часу t1, t2,..., tn . Завдання полягає в передбаченні значення y(tn+1+1) у деякий майбутній момент часу tn+1+1. Передбачення/прогноз мають значний вплив на прийняття рішень у бізнесі, науці і техніці (передбачення цін на фондовій біржі, прогноз погоди). Оптимізація. Численні проблеми в математиці, статистиці, техніці, науці, медицині й економіці можуть розглядатися як проблеми оптимізації. Задачею алгоритму оптимізації є знаходження такого рішення, що задовольняє системі обмежень і максимізує чи мінімізує цільову функцію. Пам'ять, що адресується за змістом. В традиційних комп'ютерах звертання до пам'яті доступно тільки за допомогою адреси, що не залежить від змісту пам'яті. Більш того, якщо допущена помилка в обчисленні адреси, то може бути знайдена зовсім інша інформація. Асоціативна пам'ять, чи пам'ять, що адресується за змістом, доступна за вказівкою заданого змісту. Вміст пам'яті може бути викликано навіть по частковому входу чи спотвореному змісту. Асоціативна пам'ять надзвичайно бажана при створенні мультимедійних інформаційних баз даних. Керування. Розглянемо динамічну систему, задану сукупністю {u(t), y(t)}, де u(t) є вхідним керуючим впливом, а y(t) - виходом системи в момент часу t. В системах керування з еталонною моделлю метою керування є розрахунок такого вхідного впливу u(t), при якому система діє по бажаній траєкторії, заданою еталонною моделлю. Прикладом є оптимальне керування двигуном. Але, незважаючи на переваги нейронних мереж в часткових галузях над традиційними обчисленнями, існуючі нейромережі є не досконалими рішеннями. Вони навчаються і можуть робити "помилки". Окрім того, не можна гарантувати, що розроблена мережа є оптимальною мережею. Застосування нейромереж вимагає від розробника виконання ряду умов. Ці умови включають: - множину даних, що включає інформацію, яка може характеризувати проблему;
- відповідно встановлену за розміром множину даних для навчання і тестування мережі;
- розуміння базової природи проблеми, яка буде вирішена;
- вибір функції суматора, передатної функції та методів навчання;
- розуміння інструментальних засобів розробника;
- відповідна потужність обробки.
Новий шлях обчислень вимагає вмінь розробника поза межами традиційних обчислень. Спочатку, обчислення були лише апаратними і інженери робили його працюючим. Потім, були спеціалісти з програмного забезпечення: програмісти, системні інженери, спеціалісти по базах даних та проектувальники. Тепер є нейронні архітектори. Новий професіонал повинен мати кваліфікацію відмінну від його попередників. Наприклад, він повинен знати статистику для вибору і оцінювання навчальних і тестових множин. Логічне мислення сучасних інженерів програмного забезпечення, їх емпіричне вміння та інтуїтивне відчуття гарантує створення ефективних нейромереж.
Источник: http://www.victoria.lviv.ua |