Коротко про глибоке навчання, в тому числі про те, як воно пов’язане з більш широкою сферою машинного навчання, і як почати роботу.
Що таке глибоке навчання (deep learning)?
Глибоке навчання – це частина машинного навчання, яка належить до сфери штучного інтелекту (ШІ). Ця технологія працює, навчаючи комп’ютерну модель вчитися на прикладі, подібно до того, як дитина може вчитися у батьків та вчителів.
Простіше кажучи, комп’ютерній моделі показують різні зображення різноманітних об’єктів і пояснюють, що кожен з них означає. Тренуючись, модель може навчитися розпізнавати і класифікувати різні шаблони, які вона бачить на зображеннях, і, зрештою, розпізнавати і вчитися на нових зображеннях, які вона сприймає.
Глибоке навчання має вирішальне значення для функціонування автономних або безпілотних автомобілів. Безпілотний автомобіль використовує комбінацію камер і датчиків для збору даних з навколишнього середовища, таких як сигнали світлофора, пішоходи та інші автомобілі на дорозі. Потім він обробляє ці дані, щоб визначити найкращий курс дій: сповільнитися, зупинитися, їхати далі тощо.
Як працює глибоке навчання?
Можливості глибинного навчання відрізняються в кількох ключових аспектах від традиційного поверхневого машинного навчання, що дозволяє комп’ютерам вирішувати багато складних завдань.
Ця технологія використовує нейронні мережі – модель, засновану на діяльності людського мозку. Подібно до того, як мозок містить шари взаємопов’язаних нейронів, нейронна мережа в ШІ робить те ж саме, де вузли з’єднані між собою для обміну інформацією.
Навчання цих мереж глибокого навчання може зайняти дуже багато часу, вимагаючи поглинання величезних обсягів даних і повторення циклів, оскільки система поступово вдосконалює свою модель для досягнення найкращого результату.
Нейронні мережі перетворюються на розгалужені мережі з великою кількістю значних шарів, які навчаються на величезних обсягах даних. Ці глибокі нейронні мережі сприяли нинішньому стрибку в здатності комп’ютерів розпізнавати мову, багатьом можливостям генеративного штучного інтелекту та прогресу в галузі охорони здоров’я.
Які є приклади глибокого навчання?
Сьогодні глибинне навчання може бути скрізь: від новаторських компаній, що займаються розробкою ШІ, до голосового асистента у вашому смартфоні.
Ось лише кілька найпопулярніших додатків для глибокого навчання:
ChatGPT
Чат-бот від OpenAI використовує глибоке навчання і є однією з найбільших доступних моделей глибокого навчання. ChatGPT використовує версію 3.5 генеративного попередньо навченого ШІ OpenAI (GPT 3.5), який має 175 мільярдів параметрів. Нейронна мережа, яка робить ChatGPT таким ефективним, навчена вивчати закономірності та взаємозв’язки в мові.
Четверта версія цього генеративного попередньо навченого ШІ (GPT-4) майстерно виконує завдання обробки природної мови (NLP) з найбільшою архітектурою великих мовних моделей (LLM), що складається з трильйона параметрів.
Віртуальні асистенти
Голосові помічники, такі як Google Assistant, Amazon Alexa та Apple Siri, використовують глибоке навчання для розпізнавання мови та NLP. Вони застосовують ці методи глибокого навчання, щоб обробити те, що ви їм говорите, і відповісти відповідно і точно.
Ці алгоритми глибинного навчання також можуть вчитися на основі шаблонів взаємодії з користувачем, щоб постійно покращувати користувацький досвід.
Виявлення шахрайства
Різні організації можуть використовувати глибоке навчання для виявлення та запобігання шахрайству. Наприклад, фінансові установи використовують різні алгоритми для виявлення шахрайства. Один із прикладів, з яким ви, можливо, знайомі, – це довга короткочасна пам’ять (LSTM), модель глибокого навчання, яка позначає підозрілу активність, що відрізняється від даних, на яких вона навчалася.
LSTM – це рекурентна нейронна мережа (RNN), яка обробляє послідовні дані і зберігає інформацію про те, що вона обробляє, щоб розпізнати особливу подію, наприклад, потенційно шахрайську транзакцію, і позначити її для втручання людини.
Охорона здоров’я
Штучний інтелект вже зробив значний вплив на охорону здоров’я. Технологія глибокого навчання виявилася корисною для діагностики захворювань очей, включаючи діабетичну ретинопатію і глаукому, і навіть деяких видів раку.
Успіхи штучного інтелекту в медицині тільки починаються.
Що таке машинне навчання та глибоке навчання?
Штучний інтелект охоплює багато галузей досліджень, які можуть зробити машини здатними виконувати завдання, що зазвичай вимагають людського інтелекту, і може варіюватися від генетичних алгоритмів до обробки природної мови.
Машинне навчання є підмножиною штучного інтелекту і визначається як процес навчання комп’ютера виконувати завдання, а не програмування його поетапного виконання.
Глибоке навчання, в свою чергу, є підмножиною машинного навчання, можливості якого відрізняються в кількох ключових аспектах від традиційного поверхневого машинного навчання, дозволяючи комп’ютерам вирішувати безліч складних проблем, які інакше не могли б бути вирішені.
Машинне навчання може робити неглибокі прогнози на основі вхідних даних, наприклад, визначати, чи є фрукт на фотографії яблуком або апельсином. Глибоке навчання може вирішувати більш складні завдання, наприклад, розпізнавання рукописних чисел, де під час навчання необхідна велика кількість даних.
У конкретному прикладі, проілюстрованому нижче, комп’ютер повинен бути здатним впоратися з величезним розмаїттям способів представлення даних. Кожна цифра від 0 до 9 може бути записана безліччю способів: Розмір і точна форма кожної цифри, написаної від руки, може значно відрізнятися залежно від того, хто пише і за яких обставин.
Щоб впоратися з мінливістю цих ознак і ще більшою плутаниною взаємодій між ними, стають у нагоді глибоке навчання і глибокі нейронні мережі.
Кожен нейрон нейронної мережі – це математична функція, яка отримує дані через вхід, перетворює їх у більш зручну для сприйняття форму, а потім видає їх через вихід. Ви можете уявити собі нейрони в нейронній мережі як розташовані шарами, як показано на малюнку нижче.
Як працює глибока нейронна мережа?
У наведеному вище прикладі, де модель навчається розпізнавати рукописні числа, ви можете побачити дуже просте зображення анатомії нейронної мережі.
Усі нейронні мережі мають вхідний шар, куди подаються початкові дані, і вихідний шар, який генерує остаточний прогноз.
Але в глибокій нейронній мережі між цими вхідним і вихідним шарами можуть бути десятки і сотні прихованих шарів нейронів, кожен з яких подає дані в інший. Звідси і термін “глибокий” в “глибокому навчанні” і “глибоких нейронних мережах”; це посилання на велику кількість прихованих шарів в основі цих нейронних мереж.
На графіку вище кожне коло представляє нейрон в мережі, і вони організовані у вертикальні шари і пов’язані між собою. Прихованих шарів в глибоких нейронних мережах може бути десятки і сотні.
Коли варто використовувати глибоке навчання?
Алгоритми глибинного навчання можуть брати безладні і широко немарковані дані, такі як відео, зображення, аудіозаписи і текст, і наводити в них достатній порядок, щоб робити корисні прогнози, будуючи ієрархію ознак, з яких складається собака або кішка на зображенні, або звуків, які утворюють слово в мові.
Як наслідок, глибинне навчання найкраще використовувати, коли є велика кількість даних, і вони значною мірою неструктуровані.
Які недоліки глибинного навчання?
Одним з найбільших недоліків є обсяг даних, необхідних для навчання, що означає необхідність доступу до величезних обсягів розподілених обчислювальних потужностей. Ця вимога призводить до високої вартості навчання і комп’ютерного обладнання, оскільки для навчання може знадобитися дороге обладнання, наприклад, високопродуктивні графічні процесори і масиви графічних процесорів.
Іншим недоліком є те, що глибокі нейронні мережі важко навчати з кількох причин, окрім обчислювальних ресурсів.
Серед найпоширеніших проблем глибоких нейронних мереж – проблема зникаючого градієнта та градієнта, що вибухає, які можуть впливати на методи навчання, засновані на градієнті; витрата часу на налаштування гіперпараметрів, таких як розмір партії та швидкість навчання; а також перенавчання, коли висока складність мережі призводить до того, що вона також вивчає шуми в навчальних даних.
Які існують методи глибокого навчання?
Існують різні типи глибоких нейронних мереж, такі як описані нижче, зі структурами, придатними для різних завдань.
Цей список постійно поповнюється, оскільки дослідження дають нові методи глибокого навчання, які з часом будуть розроблятися:
- Згорткові нейронні мережі (CNN): Їх, як правило, використовують для задач комп’ютерного зору, оскільки їхні початкові шари спеціалізуються на виокремленні характерних рис зображення, які потім обробляються більш традиційною нейронною мережею для категоризації зображення.
- Рекурентні нейронні мережі (RNN): Вони є більш поширеними для обробки мови, оскільки мають вбудовані петлі зворотного зв’язку, де дані, виведені з одного шару, передаються назад до шару, що передує йому, надаючи мережі певну форму пам’яті.
- Мережі з довгою короткочасною пам’яттю (LSTM): Як показано в прикладі вище, LSTM можна використовувати для виявлення шахрайства, оскільки вони чудово фіксують довгострокові залежності в послідовностях.
- Генеративні змагальні мережі (GAN): Найчастіше використовуються для генерації даних, таких як зображення, текст і відео, GAN складаються з двох нейронних мереж, що борються між собою: генератора і дискримінатора. Мережа-генератор намагається створити переконливі синтетичні дані, а дискримінатор намагається відрізнити фальшиві дані від справжніх.
Існує велика кількість різних типів глибоких нейронних мереж. Жодна з них не є за своєю суттю кращою за іншу; вони просто краще пристосовані для навчання певних завдань.
Скільки часу потрібно для навчання моделі глибокого навчання?
Навчання моделі глибокого навчання може зайняти від кількох годин або тижнів до кількох місяців. Час варіюється в широких межах, оскільки залежить від таких факторів, як наявне апаратне забезпечення, оптимізація, кількість шарів у нейронній мережі, архітектура мережі, розмір набору даних тощо.
Що таке комп’ютер зі штучним інтелектом (AI PC)? Чи варто його купувати?