Дедалі частіше в новинах з’являються повідомлення про служби та гаджети зі штучним інтелектом на борту. Йому ще далеко до людського, але з ним машини можуть самостійно навчатися новому. Для цього вони використовують технологію глибокого навчання. Спробуємо розібратися, що вона собою являє та як працює.
Глибоке навчання також називають ієрархічним навчанням чи глибоким структурованим навчанням. Свою назву технологія отримала через те, що дані проходять через кілька шарів нейромережі. Результати роботи одного шару є вхідними даними для іншого. Це дозволяє машинам самостійно навчатися та створювати ієрархічне відображення даних.
Концепція
Головна ідея використання глибокого навчання – імітувати принципи роботи людського мозку. Останній також використовує шари нейронів під час мислення.
Ідея таких нейромереж не нова – вона з’явилася ще у 50-х роках. Але тільки останніми роками вона набула суттєвого поширення. Це пояснюється прогресом обчислювальної техніки, адже для роботи нейромережі потрібна велика обчислювальна потужність. Брак процесорних ресурсів також призводив до того, що ранні нейромережі могли розпізнавати лише прості шаблони. Сьогодні ж вони здатні розпізнавати на зображеннях складні образи – обличчя, предмети, тварин тощо.
Як це працює
Глибоке навчання використовує принцип роботи людського мозку – шари нейронів. Кожен з них вчиться виокремлювати з вихідного набору даних якийсь невеликий окремий елемент. Наприклад, це може бути форма, уривок звуку тощо.
Інформація потім передається на наступний рівень, який шукає точки дотику об’єктів знайденої форми чи групу однакових звуків за знайденим уривком. Кожен наступний шар шукає трохи складніші особливості з вихідного набору даних, і це відбувається до тих пір, поки система не знайде шуканий об’єкт.
Принцип роботи нейромережі дозволяє їй шукати будь-які шаблони у вихідному наборі даних. При цьому головна особливість – програмісту не потрібно власноруч задавати характеристики шуканих елементів. Йому необхідно вказати лише загальний алгоритм пошуку та надати великий обсяг даних для тренування.
Чим більший обсяг тренувальної інформації, тим точніші результати видаватиме нейромережа після глибокого навчання. Наприклад, для розпізнавання обличчя необхідно надати великий масив фотографій з різними виразами облич, кольору шкіри, умовами освітлення тощо. Але навіть за наявності таких гігантських масивів тренувальних даних рівень помилок у нейромережах складає близько 10%.
Практичні використання
Глибоке навчання може бути способом упоратися з гігантськими обсягами інформації, яку вироблятимуть об’єкти інтернету речей. Ця технологія також допоможе в тих галузях, де необхідно обробляти великі масиви даних: медицина, наукові дослідження тощо. Наприклад, комп’ютер може за кілька хвилин проаналізувати тисячі рентгенівських знімків та знайти на них аномалії. Людині-лікарю знадобилося б на таке дуже багато часу.
Глибоке навчання нейронних мереж також є незамінним при розробці автомобілів з автопілотів. Ця технологія дозволяє бортовому комп’ютеру машини розпізнавати пішоходів, дорожні знаки, інші автівки тощо. Подібний спосіб роботи також дозволяє створити хороші інструменти з розпізнавання мови та автоматизовані перекладачі.
З глибоким навчанням сьогодні експериментують як звичайні програмісти, так і корпорації. Наприклад, Google у 2012 році створив систему, яка знаходить котиків на відео з YouTube з точністю 75%. А у 2016 році інша нейромережа на основі глибокого навчання AlphaGo обіграла професіонала з гри «Го».
Майбутнє
Машини навряд чи найближчими роками почнуть думати як люди. Але завдяки росту обчислювальної потужності процесорів ми бачитимемо нові способи застосування нейромереж на основі глибокого навчання. Це різноманітні помічники, інтелектуальні пристрої, з якими можна спілкуватися, експертні системи тощо.