Уявіть собі мозок, що складається не з нейронів, а з мільйонів крихітних лампочок, які вчаться засвічуватися у правильний момент. Це і є нейронна мережа — штучний інтелект, що імітує людське мислення, навчаючись розпізнавати закономірності та приймати рішення. Вона допомагає у всьому: від рекомендацій фільмів до створення мистецтва та прогнозування погоди. То ж як це працює, які бувають типи нейронних мереж та як їх використовують в телеком-сфері — розібрали в статті.
Історія нейронних мереж
Нейронні мережі насправді досить старі. Концепцію нейронних мереж можна датувати математичною статтею 1943 року — як може працювати мозок. Вчені-комп’ютерники намагалися побудувати прості нейронні мережі ще в 1950-х і 1960-х роках, але врешті-решт ця концепція вийшла з ладу. У 1980-х роках ця концепція була відроджена, і до 1990-х років нейронні мережі отримали широке застосування в дослідженнях ШІ.
У 2017 вчені розробляють трансформаторні нейронні мережі, що стає справжнім проривом.
Однак лише з появою надшвидкої обробки, величезних можливостей зберігання даних і доступу до обчислювальних ресурсів нейронні мережі змогли розвинутися до рівня, якого вони досягли сьогодні. Вони можуть імітувати або навіть перевищувати людські когнітивні здібності.
Що таке нейронна мережа
Нейронна мережа — це тип обчислювальної архітектури, яка базується на моделі функціонування людського мозку. Звідси й назва «нейронна». Нейронні мережі складаються з набору процесорів, які називаються «вузлами». Ці вузли передають дані один одному, подібно до того, як у мозку нейрони передають один одному електричні імпульси.
Нейронні мережі використовуються в машинному навчанні, яке належить до категорії комп’ютерних програм, які навчаються без певних інструкцій. Зокрема, нейронні мережі використовуються в глибокому навчанні — вдосконаленому типі машинного навчання, яке може робити висновки з немаркованих даних без втручання людини. Наприклад, модель глибокого навчання, побудована на основі нейронної мережі та достатніми навчальними даними, могла б ідентифікувати елементи на фотографії, яких вона ніколи раніше не бачила.
Нейронна мережа, що складається з вузлів, розділених на вхідний шар, кілька прихованих шарів і вихідний шар, ідентифікує фотографію кота
Нейронні мережі роблять можливим багато типів штучного інтелекту (ШІ). Великі мовні моделі, такі як ChatGPT, генератори зображень штучного інтелекту, такі як DALL-E тощо.
Як працюють нейронні мережі
Нейронні мережі складаються з набору вузлів. Вузли розподіляються принаймні на три шари. Ці три шари:
- вхідний шар
- «прихований» шар
- вихідний шар
Ці три шари є мінімумом. Нейронні мережі можуть мати більше одного прихованого шару, крім вхідного та вихідного.
Незалежно від того, до якого рівня він входить, кожен вузол виконує певне завдання або функцію обробки даних, які він отримує від попереднього вузла. По суті, кожен вузол містить математичну формулу, причому кожна змінна у формулі має різну вагу. Якщо результат застосування цієї математичної формули до входу перевищує певний поріг, вузол передає дані на наступний рівень нейронної мережі. Якщо вихідні дані нижчі за порогове значення, дані не передаються на наступний рівень.
Уявімо, що в корпорації «Акме» є бухгалтерія зі складною ієрархією. Співробітники бухгалтерського відділу Acme на рівні менеджера затверджують витрати менше 1000 доларів, директори затверджують витрати до 10 000, а фінансовий директор затверджує будь-які витрати, що перевищують 10 000. Коли співробітники з інших відділів Acme Corp. подають свої витрати, вони спочатку звертаються до бухгалтерів. Будь-які витрати понад 1000 доларів передаються директору, а витрати нижче 1000 доларів залишаються на управлінському рівні — і так далі.
Бухгалтерський відділ Acme Corp. функціонує дещо як нейронна мережа. Коли працівники подають свої звіти про витрати, це схоже на вхідний рівень нейронної мережі. Кожен менеджер і директор є ніби вузлом нейронної мережі.
І подібно до того, як один бухгалтер може попросити іншого менеджера про допомогу в інтерпретації звіту про витрати перед тим, як передати його бухгалтеру, нейронні мережі можуть бути створені різними способами. Вузли можуть спілкуватися в кількох напрямках.
Які бувають типи нейронних мереж
Немає обмежень щодо кількості вузлів і шарів, які може мати нейронна мережа, і ці вузли можуть взаємодіяти практично будь-яким способом. Через це перелік типів нейронних мереж постійно розширюється. Але приблизно їх можна розділити на такі категорії:
- неглибокі нейронні мережі зазвичай мають лише один прихований шар
- глибокі нейронні мережі мають кілька прихованих шарів
- неглибокі нейронні мережі швидкі та вимагають меншої потужності обробки, ніж глибокі нейронні мережі, але вони не можуть виконувати стільки складних завдань, скільки глибокі нейронні мережі.
Нижче наведено неповний перелік основних типів нейронних мереж.
Нейронні мережі персептронів (Perceptron). Основний блок для багатьох інших нейронних мереж. Використовується для бінарної класифікації — це прості неглибокі мережі з вхідним і вихідним шарами.