Штучні нейронні мережі
Штучні нейронні мережі - це такі, які складаються з особливих елементів - нейронів. Вони є математичною моделлю біологічних нейронів, тобто клітин, які складають нервову систему людини.
Вперше про нейронних мережах заговорили в 1943 році, а після винаходу перцептрона Розенблатта наступила золота ера, і мережі придбали велику популярність. Однак після публікації роботи Мінського в 1969 році, в якій вчений довів неефективність перцептрона за деяких умов, інтерес до цієї галузі різко впав. Але на цьому історія штучних мереж не закінчується. У 1985 році Дж. Хопфілд представив свої дослідження і довів, що нейронні мережі - прекрасний інструмент для машинного навчання.
З біології була запозичена кілька понять і принципів. Нейрон - це різновид перемикача, який отримує, а потім передає імпульси (сигнали). У разі якщо нейрон отримує достатньо потужний імпульс, вважається, що він активований і передає імпульси іншим нейронам, пов'язаним з ним. Нейрон ж, що залишився не активованим, залишається в стані спокою, імпульс він не передає. Складається нейрон з декількох основних компонентів: синапсів, які з'єднують нейрони один з одним і отримують імпульси, аксона, завдання якого передавати імпульси, і дендрита, який отримує сигнали з різних джерел. Коли нейрон отримує імпульс вище певного порогу, він відразу ж передає сигнал наступним нейронам.
Математична модель трохи відрізняється. Вхід математичної моделі нейрона - це вектор, який складається з великої кількості компонент. Кожна їх компонента - це один з імпульсів, які отримує нейрон. Виходом моделі є одне число. Тобто, всередині моделі вхідний вектор перетворюється в скаляр, надалі передається іншим нейронам.
Нейронні мережі можна навчати двома способами: з учителем і без. Процес навчання складається з декількох кроків. Спочатку на вхід мережі подається стимул ззовні. Потім відповідно до правил змінюються вільні параметри нейронної мережі, після чого мережа відповідає на вхідні стимули вже по-іншому. Процес потрібно повторювати до тих пір, поки мережа не вирішить задачу. Алгоритм навчання з вчителем полягає в тому, що під час навчання мережа вже має правильну відповідь. Цей метод успішно застосовують для вирішення багатьох прикладних задач, проте його часто критикують за те, що він біологічно неправдоподібний. Нейронні мережі навчаються без учителя в тому випадку, коли відомі лише вхідні сигнали. На їх основі мережу поступово вчиться давати кращі значення виходів.
Застосування нейронних мереж дійсно різноманітно. Часто їх використовують для автоматизації розпізнавання образів, прогнозування, створення різних експертних систем, апроксимації функціоналів. За допомогою такої мережі можна виконати розпізнавання звукових або оптичних сигналів, передбачити показники біржі, створити системи, здатні до самонавчання, які можуть, наприклад, синтезувати мову по заданому тексту або паркувати автомобіль. Нейронні мережі на заході застосовуються більш активно, на жаль, вітчизняні фірми ще не взяли на озброєння цю методику.
Незважаючи на переваги ІНС над звичайними обчисленнями в деяких областях, існуючі нейронні мережі - неідеальні рішення. Так як вони здатні до навчання, можуть вони й помилятися. Крім цього, не можна точно гарантувати, що розроблена нейросеть буде оптимальною. Розробник зобов'язаний розуміти природу розв'язуваної проблеми, мати безліч інформації, яка проблему характеризує, отримати дані для тестування і навчання мережі, правильно вибрати метод навчання, передавальну функцію і функції суматора.