Штучні нейромережі – простими словами про складну тему
У цій публікації постараємося у доступній формі пояснити феномен нейронних мереж та оцінити обґрунтованість очікувань. Як тих, що викликають захоплення, так і апокаліптичних.
Словосполучення “нейронні мережі” прийшлося до смаку журналістам. За частотою згадок у медіа нейромережі поступаються хіба що починанням Ілона Маска. І впевнено конкурують зі штучним інтелектом та глобальним потеплінням.
Не дивно, що нейронними мережами захоплюються та, водночас, побоюються їх. Очікують від них як небачених технологічних проривів так і катастрофічних наслідків застосування.
Екскурс в анатомію
Сама назва цього феномену прийшла з біології. Нейронами називають особливі клітини живих організмів, які утворюють нервову систему (найпримітивніші істоти з нервовою системою - медузи та корали). Їх завдання - прийом, передача та обробка інформації за допомогою електричних імпульсів та хімічних реакцій.
Найбільше нейронів знаходиться у головному мозку. Кількість нейронів у мозку людини оцінюється приблизно в 100 млрд. Цілком можливо, їх набагато більше, але будемо тримати в пам'яті ці 100 млрд.
Наступний важливий момент для розуміння роботи нейромереж – будова нейрона. Кожна така клітина складається з тіла та особливих відростків – кількох дендритів та одного аксона. Тут візьмемо до уваги, що дендрити - це ВХІДНІ канали для інформації, а аксон - єдиний канал для ВИХОДУ інформації з нейрона.
У нейронів є своя спеціалізація. Одні з них (рецепторні) приймають інформацію, що надходить ззовні. Інакше кажучи, це датчики. Інші (ефекторні) передають сигнал із нервової системи в навколишні клітини. Зрештою, є проміжні (вставні) нейрони.
В організмі мільярди нейронів пов'язані між собою. Переплетення це неймовірно складне. Так, за деякими даними, кожен нейрон контактує з 10000 сусідніх клітин (за іншими джерелами - з 20000). Нарешті, на точках контакту двох нейронів розташовані синапси - особливі утворення, здатні змінювати сигнал, що проходить через них.
Тобто інформація про зовнішній світ із рецепторів проходить через якусь кількість вставних нейронів. На цьому шляху вона певним чином змінюється, проходячи синапси. І лише наприкінці потрапляє на ефекторні нейрони. Після чого слідує реакція організму на сигнал, що надійшов.
Починаємо копіювати природу
Спроби змоделювати елементарні функції нервової системи починаються ще в середині XX ст. Першою моделлю біологічної нейронної мережі став перцептрон – програма, реалізована на електронно-обчислювальній машині Марк-1 у США у 1960 р.
Перцептрон повторював роботу лише одного нейрона. Для того рівня програмування та обчислювальних потужностей було досягнуто справді вражаючий результат. Машина навчилася розпізнавати кілька літер.
Незважаючи на успіх зі створенням перцептрону, інтерес до нейромереж незабаром згас. Що цілком зрозуміло. Обчислювальна техніка не справлялася зі складним математичним апаратом, який використовується для моделювання нейромереж.
Застосування напівпровідників додало ідеї штучних нейронних мереж нового імпульсу. Роль нейронів доручили транзисторам. Мініатюризація дозволила упаковувати мільйони транзисторів у мікрочіпи площею кілька квадратних сантиметрів.
І все ж таки - кількість транзисторів у найдосконалішому комп'ютері поки не досягає кількості нейронів у мозку високорозвиненої живої істоти. Але принципова, і непереборна (як мінімум, нині) перешкода полягає навіть не у кількості електронних компонентів. Згадаймо, кожен нейрон взаємодіє з тисячами нервових клітин. А одиничний транзистор - лише з кількома.
Як би там не було, вже на початку двотисячних потенціал комп'ютерів дозволив втілювати в життя ідеї, які раніше не виходили за рамки теорій. Нейронні мережі перетворилися з цікавого, але загалом марного IT-феномена, на потужний інструмент для вирішення безлічі завдань.
Штучна нейромережа
Комп'ютер чудово справляється із зберіганням та переупорядкуванням навіть величезних масивів даних за заздалегідь заданими вказівками – програмами. Однак такий підхід не дозволяє йому навіть у принципі зробити те, що легко виконує мозок навіть не самої розвиненої тварини. Наприклад, такий комп'ютер не здатний розпізнавати закономірності і, відповідно до них змінювати свої дії.
Іншими словами, навчатись. Концепція штучних нейронних мереж дозволяє подолати цей бар'єр.
Як відбувається навчання нейромережі? Почнемо з того, що ще раз коротко розповімо про її будову.
Штучна нейромережа складається з аналогів нейронів, об'єднаних у шари. Не сприймайте термін "шар" буквально. Фізично жодних шарів із якихось чіпів не існує. Слово "шар" допомагає розумінню схеми, що пояснює дію нейромережі. Так само, як електрична схема проводки в будинку не має відношення до реального розміщення ламп, розеток і проводів, що з'єднують їх. Шар - це набір елементів, що виконують певне завдання. І тих, що займають певне місце в конвеєрі обробки інформації. Шар введення (аналог рецепторних нейронів) передає всередину нейромережі дані із зовнішнього світу. Шар виведення (аналог ефекторних нейронів) повідомляє у зовнішнє середовище, як нейромережа реагує на отриману інформацію.
Між шарами введення та виведення розміщені шари, що виконують обробку інформації, яка надходить від рецепторного шару. Їх називають прихованими. Усі елементи прихованих шарів взаємопов'язані між собою та елементами шару виведення.
Нейромережі, в яких кількість прихованих шарів більша за один, називаються глибокими. Це пояснення важливе для розуміння терміна “глибоке навчання”.
Тепер нагадаю, що в біологічних нейромереж є особливі зони в точках контакту нейронів - синапси. У таких зонах змінюється сигнал, що проходить між нейронами. Роль синапсів у штучній нейромережі виконують так звані ваги. Вага може бути позитивна, якщо один нейрон збуджує інший і негативний - якщо пригнічує. Причому вага не працює як простий вимикач. Зміною ваги можна не просто увімкнути/вимкнути зв'язок, а й регулювати силу впливу одного елемента нейромережі на оточуючі.
Наступна важлива складова штучної нейромережі - зворотний зв'язок між шаром виведення та вагами внутрішніх шарів.
Як навчають нейромережу
Під навчанням нейромережі розуміють процес регулювання ваги взаємозв'язків між елементами прихованих шарів.
Припустимо, що ми маємо якийсь еталонний сигнал. І ми хочемо, щоб нейромережа видавала на виході такий же.
На вхідний шар подаються довільні дані. Вони проходять через внутрішні шари видозмінюючись за допомогою ваги на зв'язках між елементами внутрішніх шарів. Поступивши на шар виведення, такі змінені дані порівнюються з еталоном.
По зворотному зв'язку посилається команда на зміну ваг. Образно кажучи, людина вказує нейромережі: “Це зроблено неправильно. Спробуй ще раз”. Через нейромережу знову пропускаються дані і через зворотний зв'язок знову змінюються значення ваги. Рано чи пізно різниця між еталонним і виробленим мережею значенням зникне. Нейромережа стане пропускати на вихідний шар відповідні еталону дані, ігноруючи інші. Тобто навчиться дізнаватися якийсь набір даних (під цим словосполученням можна розуміти предмет, звук, колір – будь-що).
Спробуємо пояснити на прикладі, як можна навчити нейромережу розпізнавати чашку.
У вхідному шарі розміщується кілька елементів введення, що описують деякі параметри предмета. Для чашки такими можуть бути:
- ручка певної форми на боці (інакше можна сплутати із сотейником);
- пропорції (висота більша за ширину - на відміну від тарілки);
- розмір (щоб відрізнити чашку від глечика);
- круглий переріз.
На всі такі питання можна відповісти у форматі “так/ні” (одиниця/нуль) і, нарешті, створити образ чашки як поєднання нулів та одиниць.
"Показавши" нейромережі достатню кількість чашок можна домогтися того, що вона впізнаватиме предмет незалежно від дизайну. Чи то грубувата офісна кружка, витончена чайна чашка мейсенської порцеляни або маленька ємність для еспресо - нейромережа впізнає її. І тепер можна показати нейромережі глечик чи сковорідку. Цікаво буде знати – як вона визначить те, що бачить?
Нейромережі у бізнесі
Незалежно від того, як ми ставимося до штучних нейронних мереж, кожен із нас щодня застосовує їх для своїх цілей. Наприклад, коли користується такими інструментами, як Google Search або Google Translate. Так і у бізнесі. Можливо, ми просто не усвідомлюємо, наскільки широко використовуються ці комп'ютерні алгоритми підприємницької діяльності.
Тож наведемо деякі цифри.
У 2020 р. світовий ринок нейронних мереж оцінювався в $14,35 млрд. За прогнозами, до 2030 року він досягне позначки $152,61 млрд. Тобто. середньорічні темпи зростання – 26,7%.
Лідером із застосування нейромереж у бізнесі залишається Північна Америка (точніше – США). Передбачається, що регіон збереже свої позиції до 2030 р. Пояснюється це раннім стартом у використанні нейромереж та технологічному лідерству. Однак очікується, що найближчим десятиліттям в Азіатсько-Тихоокеанському регіоні застосування нейромереж почне швидко зростати. У тому числі через постійне збільшення обсягу даних в інтернет речей (IoT).
Хоча пандемія COVID-19 викликала різкий спад на цьому ринку в 2020 році, очікується, що сфера нейронних мереж знову продовжить зростання. Компанії дедалі більше застосовують віддалену роботу персоналу. Що підвищує попит на хмарні рішення, просторові дані та інструменти для аналітики та прогнозування ринку. Зростання обсягу даних, що генеруються різними галузями, потреба управління та аналізу цих масивів стали ключовими факторами зростання ринку нейронних мереж.
Найбільш вигідним та успішним застосуванням нейромереж виявилося в секторі банківської справи, фінансових послуг та страхування.
Тут нейронні мережі використовуються для прогнозування ринкових тенденцій, цін на акції. У банківському бізнесі нейронні мережі займаються ідентифікацією відхилень та аномалій у транзакціях для виявлення шахрайства. Страхові компанії застосовують цей інструмент для відсіювання шахрайських претензій та сумнівних обставин у страхових випадках, сегментування клієнтури для оптимального ціноутворення.
У маркетингу нейромережі проводять сегментацію споживачів за моделлю споживання, економічним статусом. Нейромережі добре показали себе у складанні рекомендацій споживчих товарів.
Однак використання нейронних мереж має свої підводні камені. Одна з основних претензій при спробі використання нейромереж у бізнесі - вони потребують тривалого навчання із застосуванням великої кількості високоякісних даних.
Ще одна проблема - нестача підготовлених фахівців, які працюють з нейронними мережами та нерозуміння топ-менеджментом компаній завдань, які здатні вирішувати нейронні мережі. Найчастіше це призводить до завищених очікувань і подальшого розчарування у використанні нейронних мереж.
Межі можливостей
Розповідь про нейромережі я почав з їхньої популярності у засобах масової інформації. Не надто заглиблені в тематику люди як захоплюються перспективами, що відкриваються, так і висловлюють страх і побоювання перед широким застосуванням нейромереж. Насамперед, нейромережі підозрюють у можливості набуття розуму.
Ось чому важливо знати про межі та обмеження для використання нейромереж.
Почнемо з того, що аналогія між біологічними та штучними нейромережами – найзагальніша. Хоча б тому, що людина й досі не знає, за якими принципами працює головний мозок. Жодна штучна нейромережа не може зрівнятися за складністю своєї організації з мозком навіть примітивного ссавця.
З іншого боку, нейронна мережа, навіть найвитонченіша - принципово не відрізняється від безлічі використовуваних людством комп'ютерних алгоритмів. Нові можливості комп'ютерів дають більше можливостей застосування цих алгоритмів. Але все одно це успіхи кількісні, не якісні. На початку 90-х на комп'ютерах із процесором i386 використовувався текстовий редактор Multi-Edit, а сьогодні – останні версії Word з фантастичними порівняно з Multi-Edit можливостями. Але принципово йдеться лише про інструмент для обробки текстів. Так і нейромережі - наскільки б вони не були потужними, завжди розраховані на виконання певної конкретної задачі.
Колись багатьох вразила перемога програми Alpha Go над майстрами гри го. При цьому багато хто вказував на те, що, на відміну від живої людини, програма нічого, крім гри не вміє і не знає. Тобто є дуже складним, дуже дорогим, але вузькоспеціалізованим інструментом. Ні про який штучний розум у цій історії говорити не доводиться.
Скептики взагалі звертають увагу, що межею можливостей для нейромереж є те, що робить такий відділ головного мозку як мозочок, що відповідає за автоматичні реакції. Свідомість і розум пов'язані з іншими частинами мозку.
Тепер про здібності до самонавчання. Давайте визначимо самонавчання інакше – неодноразовий перезапуск алгоритму із постійною зміною вхідних даних.
І все. Весь пафос випаровується. Нічого подібного до того, як відбувається навчання у людини. Максимум, яка аналогія спадає на думку - відпрацювання якихось простих навичок до автоматизму.
Крім того, без зовнішнього впливу з боку когось, наділеного абстрактним мисленням, нейромережа нічого не навчиться. У найближчій до нас частині Всесвіту володарем абстрактного мислення залишається людина. Інопланетяни поки що не проявили себе. Тому без людського впливу нейромережі просто не здатні до функціонування та розвитку.
Тому не варто боятися, що одного разу нейромережі замисляться про життя та свої взаємини з людьми. Вони завжди будуть не більше ніж інструментом для вирішення завдань, визначених ним людиною.
Прагнете вивести бізнес на новий рівень, досягати цілей швидше та ефективніше? Apix-Drive є вашим надійним помічником для цих завдань. Онлайн-конектор сервісів та програм допоможе вам автоматизувати ключові бізнес-процеси та позбутися рутини. Ви та ваші співробітники звільните час для виконання важливих профільних завдань. Спробуйте можливості Apix-Drive безкоштовно, щоб переконатися в ефективності онлайн-конектора особисто.