ШІ 101

Що таке нейронні мережі?

mm

Що таке штучні нейронні мережі (ANNs)?

Багато найбільших досягнень у сфері штучного інтелекту обумовлені штучними нейронними мережами. Штучні нейронні мережі (ANNs) являють собою з’єднання математичних функцій, об’єднаних у форматі, натхненому нейронними мережами, які знаходяться в людському мозку. Ці ANNs здатні видобувати складні закономірності з даних, застосовувати ці закономірності до невидимих даних для класифікації/визнання даних. Таким чином, машина «навчається». Це короткий огляд нейронних мереж, але давайте розглянемо нейронні мережі ближче, щоб краще зрозуміти, що вони є і як вони працюють.

Багатошарова перцептронна мережа: пояснення

Перед тим, як розглянути більш складні нейронні мережі, ми розглянемо просту версію ANNs, багатошарову перцептронну мережу (MLP).

Представьте собі конвеєр на фабриці. На цьому конвеєрі один робітник отримує предмет, робить деякі корективи до нього, а потім передає його наступному робітнику на лінії, який робить те саме. Цей процес триває до тих пір, поки останній робітник на лінії не надає закінчених штрихів предмету і не кладе його на стрічку, яка виведе його з фабрики. У цій аналогії є кілька «шарів» конвеєра, і продукти рухаються між шарами, як вони рухаються від робітника до робітника. Конвеєр також має вхідну точку та точку виходу.

Багатошарову перцептронну мережу можна вважати дуже простою виробничою лінією, що складається з трьох шарів: вхідного шару, прихованих шарів і вихідного шару. Вхідний шар – це місце, де дані вводяться в MLP, а в прихованих шарах деяка кількість «робітників» обробляє дані, перш ніж передати їх на вихідний шар, який видає продукт у зовнішній світ. У випадку MLP ці робітники називаються «нейронами» (або іноді вузлами), і коли вони обробляють дані, вони маніпулюють ними за допомогою серії математичних функцій.

У мережі є структури, що з’єднують вузол з вузлом, які називаються «вагами». Ваги являють собою припущення про те, як дані пов’язані між собою, коли вони рухаються через мережу. Інакше кажучи, ваги відображають рівень впливу, який один нейрон має на інший нейрон. Ваги проходять через «активаційну функцію» при виході з поточного вузла, яка є типом математичної функції, що перетворює дані. Вони перетворюють лінійні дані у нелінійні представлення, що дозволяє мережі аналізувати складні закономірності.

Аналогія з людським мозком, яку підказує «штучна нейронна мережа», полягає в тому, що нейрони, які складають людський мозок, з’єднані подібним чином, як вузли в ANNs.

Багатошарові перцептрони існували з 1940-х років, але існувало кілька обмежень, які заважали їм бути особливо корисними. Однак протягом останніх кількох десятиліть була створена техніка, звана «зворотним поширенням», яка дозволила мережам регулювати ваги нейронів і тим самим набагато ефективніше навчатися. Зворотнє поширення змінює ваги в нейронній мережі, дозволяючи мережі краще захоплювати фактичні закономірності даних.

Глибokie нейронні мережі

Глибokie нейронні мережі приймають базову форму MLP і роблять її більшою, додаючи більше прихованих шарів у середині моделі. Отже, замість того, щоб мати вхідний шар, прихований шар і вихідний шар, є багато прихованих шарів посередині, а виходи одного прихованого шару стають входами для наступного прихованого шару, поки дані не пройдуть через всю мережу і не будуть повернуті.

Багатошарові глибokie нейронні мережі здатні інтерпретувати більш складні закономірності, ніж традиційна багатошарова перцептронна мережа. Різні шари глибокої нейронної мережі вчаться розпізнавати закономірності різних частин даних. Наприклад, якщо вхідними даними є зображення, перша частина мережі може інтерпретувати яскравість або темноту пікселів, тоді як пізніші шари будуть виділяти форми та краї, які можна використовувати для розпізнавання об’єктів на зображенні.

Різні типи нейронних мереж

Існує кілька типів нейронних мереж, і кожен тип нейронної мережі має свої переваги та недоліки (і, отже, свої випадки використання). Тип глибокої нейронної мережі, описаний вище, є найпоширенішим типом нейронної мережі і часто називається зворотньою нейронною мережею.

Одна з варіацій нейронних мереж – це рекурентна нейронна мережа (RNN). У випадку рекурентних нейронних мереж використовуються циклічні механізми для збереження інформації з попередніх станів аналізу, що означає, що вони можуть інтерпретувати дані, у яких порядок має значення. RNN корисні для виведення закономірностей з послідовних/хронологічних даних. Рекурентні нейронні мережі можуть бути однонаправленими або двонаправленими. У випадку двонаправленої нейронної мережі мережа може брати інформацію з пізнішої частини послідовності, а також з ранішої частини послідовності. Поскольку двонаправлена RNN бере до уваги більше інформації, вона краще здатна вивести правильні закономірності з даних.

Конволюційна нейронна мережа – це спеціальний тип нейронної мережі, який добре підходить для інтерпретації закономірностей, знайдених у зображеннях. CNN працює, проходячи фільтр над пікселями зображення та отримуючи числове представлення пікселів у зображенні, яке можна потім аналізувати на наявність закономірностей. CNN структурована так, що конволюційні шари, які витягують пікселі з зображення, приходять першими, а потім щільноз’єднані шари прямого поширення, які дійсно навчаться розпізнавати об’єкти, приходять після цього.

Блогер і програміст з спеціалізацією у темах Machine Learning і Deep Learning. Даніель сподівається допомогти іншим використовувати силу штучного інтелекту для соціальної добробути.