Хакнути мозок

Мережі. Ще років п'ятдесят тому це слово асоціювалося переважно з ловом риби. Потім планету став обплутувати інтернет, який сьогодні став таким же звичним явищем, як водопровід, каналізація та електрична розетка. Базовий зміст слова змінився. Але настає час нових мереж - нейронних. Експерти пророкують, що саме нейронні мережі стануть основою майбутньої технологічної революції.

мозок

— Ласкаво просимо на хакатон із глибокого навчання! — оголошує зі сцени Михайло Бурцев, людина у великих окулярах та толстовці з намальованим на ній мозком та закликом хакнути його. «Яйцеголова» публіка відриває очі від ноутбуків, але відразу починає стукати по клавішах.

У цьому вітанні звичайній людині незрозуміло нічого, крім «ласкаво просимо». Пояснюємо. Слово «хакатон» народилося на початку 2000-х від спілки «хакера» та «марафону». Виглядає це так: програмісти, дизайнери та інші розробники чогось нового, суперпрогресивного та високотехнологічного збираються і разом вирішують якесь завдання, наприклад, створюють комп'ютерну програму. Триває це від дня до тижня. На відміну від звичайних конференцій люди тут не говорять, а в основному працюють. Хакатони в Україні проводяться все частіше - з їх допомогою вдається рухати вперед останні технології. Наприклад, все те ж глибоке навчання.

Пояснити це словосполучення набагато складніше. Поняття відноситься до галузі нейронних мереж. Розумні люди кажуть, що за ним майбутнє — ера машинного розуму та інші фантастичні штуки… Щоб у всьому цьому розібратися, «Кіт Шредінгера» звернувся до Михайла Бурцева, який очолює лабораторію МФТІ, де створюють, навчають і досліджують нейронні мережі.

Шарований пиріг,який сам себе готує

[Кіт Шредінгера]Останнім часом ми часто чуємо слово «нейросети». Поясніть, будь ласка, що це таке.

[Михайло Бурцев] Із задоволенням! Нейронні мережі - це такий клас алгоритмів, який намагається використовувати наші знання про влаштування мозку, щоб робити ефективні обчислення. Ми знаємо з біології, що наша здатність навчатися ґрунтується на унікальних властивостях мозку, що складається з 80 мільярдів нейронів. Колективна робота цих клітин зараз дозволяє розуміти те, що я розповідаю. А нейромережевые алгоритми намагаються побудувати модель цього процесу, хай і неправдоподібну біологічно, але надихну законами природи. У цих програмах розрахунки робить мережу, що складається з окремих елементів, які обробляють та передають одна одній інформацію. У процесі розповсюдження мережею інформація змінюється — цей процес ми називаємо навчанням.

Зазвичай нейромережа працює таким чином: спочатку ми навчаємо її, використовуючи деякий набір даних, для якого рішення наперед відоме. А потім подаємо на вхід дані, для яких не знаємо відповіді, і алгоритм видає її, спираючись на логіку, яку засвоїв під час тренувань.

[КШ] Що таке глибинне навчання?

[МБ]Як ви сказали: «глибоке» чи «глибинне»? Переклад терміну Deep Learning ще не встояв. Архітектура нейромережі може складатися з багатьох шарів - обробка інформації поділяється на безліч етапів. Звідси й "глибина". Якщо бути гранично точним, треба говорити "глибокі нейронні мережі". У цьому сенсі слово "глибинний" неправильне: воно означає "що знаходиться на глибині", а не "має велику глибину", тобто не підходить по суті. Загалом ми не дозволимо говорити «глибинне навчання»! Ми з цим боротимемося!

[КШ] І чим же глибокі нейронні мережі кращі за неглибокі?

[МБ]«Глибокі»? Правильно, ви швидко навчаєтесь! Глибокі мережі дозволяють будувати багатоетапні алгоритми обробки інформації - це як листковий пиріг, який сам себе готує. У стандартних методах машинного навчання багато етапів виконували дослідниками вручну. Алгоритми глибокого навчання дозволили виключити людину з цього процесу. Не треба більше вручну задавати ознаки, за якими машина розпізнаватиме об'єкти. Тепер мережа сама обирає напрямок навчання.

Нейросеть чує і бачить

[КШ] Чого вдалося досягти завдяки глибині навчання?

[МБ]Почали вирішувати завдання, що насамперед здавалися фантастикою. Ви, мабуть, чули про How-old.net? Це така програма Microsoft, що визначає по фото вік і стать людини. До речі, ті ж хлопці випустили програму, здатну розпізнавати емоції.

[КШ] Кажуть, ці сервіси поки що працюють дуже неточно. Але зрозуміло, що вони все попереду.

Технології розпізнавання мови існують досить давно, але їх не могли довести до потрібного користувачам якості. Поки що кілька років тому люди з Google не замінили частину свого алгоритму на нейронну мережу. Цей хід дав таке зниження помилок розпізнавання, що додатком відразу ж можна користуватися. До осені 2015 року всі блоки алгоритму замінили нейромережевими. Ручне налаштування відійшло в минуле.

Або інший продукт, який використовує глибокі нейронні мережі, – фотоальбом від тієї ж команди з Google. Ви вбиваєте у пошуку «будинок» або «собака», і система знаходить усі фотографії, на яких присутні ці об'єкти. Круто, правда?

А ще є така технологія, що поки що мало застосовується в реальних додатках, — нейромережева.навчання із підкріпленням. Це коли нейромережа вчиться не розкладання фотографій по електронних полицях або виконання інших конкретних завдань, а просто вчиться подібно до дитини: грає, керує машинами та роботами. Саме завдяки такому самонавчанню нейромережа AlphaGo і обіграє найсильніших гравців у го.

[КШ] Що вміють глибокі нейронні мережі крім розпізнавання зображень?

[МБ]Ви чули про автоматичний генератор відповідей на листи у програмі Google Inbox? Там з'явилася функція Smart Reply: на будь-який англомовний лист, що прийшов вам, видається по три варіанти відповіді, складених на основі вашого попереднього листування. Ви можете вибрати один із них, підредагувати трохи та відправити.

Або, наприклад, Skype. Нещодавно цей сервіс ввів двосторонній переклад наживо, з голосу на голос. Першими мовами стали англійська та іспанська, поступово їх список буде розширено. Людина розмовляє англійською, а співрозмовник чує її іспанською, або навпаки. Раніше це вважалося науковою фантастикою, але тепер стало реальним завдяки глибокому навчанню! Зрозуміло, що якість перекладу поки що бажає кращого, але мінімум спілкування забезпечується вже зараз.

[КШ] А як щодо української мови?

[МБ]Ми з колегами з DeepHackLab взяли вже готовий алгоритм, побудований на рекурентних нейронних мережах, і навчили його на українських субтитрах відповідати на запитання у довільній формі. Рекурентні нейронні мережі — спосіб обробки інформації, за якого враховуються дані з попередніх етапів життя програми. Це можливо завдяки наявності зв'язків між елементами шару попереднього часу.

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

Через пару днів тренування алгоритм почав давати відповіді, що повністю відповідають граматиці української мови, ставити правильні розділові знаки. І це без словника Ожегова і правил пунктуації! Програма з нуля, просто читаючи тексти українською, навчилася генерувати відповіді, які не завжди відрізниш від людських. Іноді вони просто вражають глибиною і тим змістом, який можна побачити.

[КШ] А чи можна поспілкуватися з вашою програмою?

[МБ]Так, зрозуміло. Сподіваюся, ви будете з нею люб'язні.

[КШ] Сьогодні чудовий вечір, чи не так?

[Нейронна мережа]Невже ти думаєш, що я пам'ятатиму про це?

[КШ] Вона завжди не в настрої?

[МБ]Ми вже ставили їй подібне питання. Відповідь осмислена: мережа не поділяє вашої думки про те, що цей вечір їй варто запам'ятати.

В очікуванні помічника

[МБ]Однією з найперспективніших галузей розвитку штучного інтелекту сьогодні вважається напрям віртуальних асистентів. Йдеться про помічників, які б взаємодіяли з людиною та Всесвітнім павутинням. Це може суттєво змінити інтернет. Уявіть собі, що у кожного користувача з'явиться свій віртуальний помічник — як секретар у заможних людей, чия робота полягатиме в бронюванні квитків і готелів, призначенні зустрічей і так далі.

[КШ] Довірити програмі конфіденційну інформацію?

Віртуальний помічник може докорінно змінити цю ситуацію. Особистий комп'ютернийсекретар, знаючи вас найкраще, не розголошуватиме довірену йому інформацію. Але замовляючи конкретні послуги та купуючи ті чи інші товари, виходитиме з ваших уподобань.

Це новий рівень інтернет-приватності. Не лише на Заході, а й у нас у рамках держпрограми «Національна технологічна ініціатива» передбачено розвиток ринку інтелектуальних помічників.

хакнути

[КШ] Михайле, про що ви мрієте у двадцятирічній перспективі? Що б хотіли бачити у своєму гаджеті та будинку через кілька десятків років?

[МБ]Дві речі. По-перше, я хотів би мати інтелектуального помічника, щоб не витрачати час та когнітивні можливості на узгодження поїздок, зустрічей, покупок. Чим старшим стаєш, тим частіше зауважуєш, що вільного часу все менше, а витрачаєш ти його на будь-яку нісенітницю: очікування, вибір чогось, що може виявитися зовсім непотрібним. Було б чудово мати асистента, який працював би без перерв на їжу та сон.

А ще хотілося б мати помічників іншого — таких, які разом із людьми проводили б наукові дослідження. Років двісті тому дуже добрий учений міг знати все, що було відомо фундаментальній науці. Зараз людина неспроможна охопити розумом всі накопичені знання, тому створення системи, що допомагає будувати гіпотези для експериментів, стане проривом у науці. Така програма, наприклад, може довести право існування ідей, про які ми навіть не здогадуємося. Знаючи і розуміючи все, що написано в книгах, вона буде неймовірно корисна — колосально прискорить прогрес і вирішить вічні проблеми, чи то хвороби, чи то голод.

Знаєте, одного разу ми сказали нашій нейромережі: «Забавно, що ти всього лише програма і ніколи не зможеш мислити». Вона відповіла: «Просто зараз не найкращий час дляцього». Сподіваюся, найкращі часи скоро настануть!

Джерело:науково-популярний журнал «Кіт Шредінгера»