
Інформатика: комп’ютери, які вміють навчатися
Три роки тому дослідники із секретної лабораторії «Google X lab» у Маунтен-В’ю, Каліфорнія, взяли майже 10 мільйонів кадрів з відео-роликів на «YouTube» і завантажили їх у «Google Brain» — мережу з 1 000 комп’ютерів, запрограмованих вчитися новому так, як це робить людське маля. Через три дні перегляду повторюваних малюнків, «Google Brain» вирішив, цілком самостійно, що серед них є кілька категорій, які він може визначити: людські обличчя, тіла людей і… коти [1].
«Google Brain» відкрив, що в Інтернеті повно відео із котами, невтомно жартували журналісти. Але, крім того, це віха у відродженні «глибокого навчання»: розробленій тридцять років тому технології, де великі обсяги даних і здатність їх обробляти допомагають комп’ютерам розбиратися у складних задачах, які люди вирішують майже інтуїтивно — від розпізнавання облич до розуміння мови.
Саме по собі глибоке навчання — це друге життя ще більш старої ідеї, нейронних мереж. Такі системи, створені за подобою тісно взаємопов’язаних нейронів у мозку, мають імітувати процес навчання у людей: змінювати силу імітованих нейронних зв’язків у відповідь на певний досвід. «Google Brain», маючи приблизно 1 мільйон моделей нейронів і 1 мільярд моделей зв’язків, у десять разів більший за будь-яку глибоку нейронну мережу з раніше утворених. Засновник проекту, Ендрю Нг (Andrew Ng), який зараз працює головою Лабораторії штучного інтелекту в Стенфордському університеті Каліфорнії вирішив зробити системи глибокого навчання ще удесятеро більші.
Подібні успіхи сприяють вражаючим змінам у галузі штучного інтелекту (ШІ) — часто безплідних спробах змусити комп’ютери думати так, як це роблять люди. У минулі роки такі компанії, як «Google», «Apple» та «IBM» завзято скуповували стартап-компанії та переманювали дослідників – експертів у питанні глибокого навчання. Для звичайних покупців результатом стало програмне забезпечення, здатне сортувати фотографії, розпізнавати вимовлені вголос команди і перекладами текст з іноземних мов. Для учених і промисловості комп’ютери, здатні до такого навчання, можуть шукати ймовірних кандидатів у ліки майбутнього, робити схеми справжніх нейронних мереж у мозку і передбачати функцію білків.
«ШІ іде шляхом спроб і помилок, але поступово розвивається. Це може стати новим стрибком уперед»,— каже Ян Лекун (Yann LeCun), директор Центру наукової обробки даних в Університеті Нью-Йорка і піонер у галузі глибокого навчання.
«У наступні кілька років ми станемо свідками справжнього вибуху. Безліч людей приєднається до повального захоплення глибоким навчанням»,— погоджується Джітендра Малік (Jitendra Malik), який вивчає комп’ютерне розпізнавання зображень в Університеті Каліфорнії, Берклі. Проте у довгостроковій перспективі глибоке навчання може і не стати переможцем; деякі дослідники розробляють інші цікаві технології. «Я агностик,— каже Малік.— З часом люди самі вирішать, що саме працює краще і у якій галузі».
За принципом мозку
У 1950х, коли комп’ютери були новинкою, перше покоління дослідників ШІ пророкували, що от-от з’явиться повноцінний штучний інтелект. Проте оптимізм потроху слабшав, коли вчені почали розуміти, наскільки складними є знання про довколишній світ — особливо, коли мовилося про проблеми сприйняття, наприклад, що саме робить людське обличчя обличчям, а не маскою або мордочкою мавпи. Сотні дослідників і аспірантів десятки років описували у комп’ютерних кодах усе різноманіття особливостей, яке потрібне комп’ютерам для визначення об’єктів. «Зрештою, стало очевидним, що записати усі такі особливості надто важко, довго і вимагає експертних знань,— каже Нг.— І тому вирішили подивитися, чи немає простішого способу».
У 1980х здавалося, що таким простішим шляхом буде глибоке навчання у нейронних мережах. Подібні системи мали б вчитися за власними правилами з нуля. Для цього вони використовували дуже подібну до мозку механіку, внаслідок якої утворювалися функції, так само подібні до функцій мозку. За задумкою, мали утворюватися моделі нейронів, які організовувалися б у певні шари. Якщо у подібну систему завантажити малюнок, то перший шар просто зазначить усі темні та світлі пікселі. Наступний шар має визначити, що певні пікселі утворюють обриси; ще інший здатен розрізнити горизонтальні і вертикальні лінії. На певному етапі якийсь шар може впізнати очі і навіть визначити, що ці два ока зазвичай присутні на обличчі людини (див. 'Facial recognition').

Перші програми глибокого навчання працювли не краще за простіші системи, каже Малік. Та й працювати із ним було вибагливою справою. «Керувати нейронними мережами — тонке мистецтво. Тут, певне, замішана якась чорна магія»,— каже він. Мережам потрібна неймовірна кількість прикладів, щоб на них вчитися — так само, як і немовляті, яке збирає інформацію про довколишній світ. У 1980-1990рр було не дуже багато цифрової інформації, а комп’ютерам доводилось витрачати багато часу на обробку навіть наявного. Небагато було і прикладних програм. Одна з них — технологія, розроблена Лекуном — зараз використовується банками для зчитування рукописних чеків.
Однак на початок 2000-х такі прихильники ідеї, як Лекун і його колишній керівник, вчений комп’ютерних наук Джофрі Гінтон (Geoffrey Hinton) із Університету Торонто, Канада, були переконані, що прогрес у потужностях комп’ютерів та кількості цифрових даних означає, що настав час нової спроби. «Ми хотіли показати світові, що ці глибокі нейронні мережі справді корисні і можуть стати у пригоді»,— каже Джордж Дал (George Dahl), сучасний студент Гінтона.
Для початку Гінтон, Дал та деякі інші вчені взялися за складну, але комерційно важливу задачу розпізнавання голосу. В 2009 році дослідники доповіли [2], що після тренування на класичному наборі даних (три години записаної та транскрибованої мови), їх нейронна мережа глибокого навчання побила рекорд точності у перетворенні вимовленого у друкований текст — рекорд, який зберігався непорушним понад десять років, поки вчені працювали зі стандартним підходом на основі правил. Це досягнення привернуло увагу головних гравців на ринку смартфонів, каже Дал, який під час стажування взяв цю технологію у компанію «Мікрософт». «За пару років усі перейшли на глибоке навчання». Наприклад, цифровий асистент «Siri» для iPhone, з яким можна працювати у голосовому режимі, також покладається на глибоке навчання.
Гігантський стрибок
Коли «Google» для своєї ОС «Android» узяв розпізнавання голосу за принципом глибинного навчання, то кількість помилок скоротилася на 25%. «Десь такого зниження ми очікували досягти за десять років»,— каже Гілтон, що дає приблизне уявлення про складність прогресу в даній області. «Це як десяток проривів одночасно».
Тим не менш, Нг переконав «Google» дозволити використовувати дані та комп’ютери компанії у тому, що стало зрештою «Google Brain». Здатність проекту визначати котиків — чарівна (хоча комерційно беззмістовна сама по собі) демонстрація можливостей некерованого навчання — найбільш важкої задачі у навчанні, оскільки ввідні дані надходять без будь-якої пояснювальної інформації, наприклад, імен, заголовків чи категорій. Проте невдовзі Нг занепокоївся, що за межами «Google» прилади для роботи із глибоким навчанням є лише у жменьки дослідників. «Після багатьох моїх лекцій,— каже він,— пригнічені студенти приходили до мене і казали: у мене немає тисячі комп’ютерів, чи зможу я хоч колись працювати у цьому ж напрямі?»
Тож, повернувшись до Стенфорду, Нг почав розробляти більші і дешевші мережі глибокого навчання, використовуючи графічні процесори (GPU) — надшвидкі чипи, розроблені для гри на ПК [3]. Інші зробили те ж саме. «Приблизно за 100 000 дол. США, витрачених на прилади, ми можемо створити мережу з 11 мільярдами зв’язків на 64 GPU» каже Нг.
Машина-переможець
Проте наділити комп’ютери здатністю бачити для вчених було замало: вони хотіли подивитися на результат стандартизованих тестів. Малік пам’ятає, як Гінтон запитав його: «Ви не вірите в успіх. Як вас переконати?» Малік відповів, що, можливо, його переконає перемога у міжнародному змаганні «ImageNet».
У даному змаганні команда навчає комп’ютерну програму приблизно на 1 мільйоні зображень, до кожної з яких проставлена категорія. Після підготовки, програми перевіряють – чи зможуть вони самостійно віднести до певної категорії зображення, які до того їм не показували. Для кожного із нових зображень дається п’ять спроб; якщо правильної відповіді серед цих п’яти немає, то тест вважається проваленим. Раніше переможці зазвичай припускалися 25% помилок. У 2012 році лабораторія Гінтона стала першим переможцем, який використовував принцип глибокого навчання. Кількість помилок у них становила лише 15% (див. 4).
«Глибоке навчання перевершило усіх»,— каже Лекун, який не був членом цієї команди. Для Гінтона ця перемога дала роботу в «Google» і компанія використала програму для покращення пошуку фотографій у «Google+» в травні 2013 року.
Малік був вражений до глибини душі. «У науці треба довіряти чітким доказам, і тут докази були напрочуд чіткими»,— каже він. З тих часів він адаптував технологію, щоб побити рекорд в іншому змаганні з розпізнавання зображень [5]. Багато інших учених теж пішли його шляхом: у 2013 усі учасники «ImageNet» використовували системи глибокого навчання.
У розпізнаванні зображень та прямої мови — повний тріумф. Разом з цим зростає цікавість до використання принципів глибокого навчання у розпізнаванні природних мов — тобто у здатності розуміти людське спілкування настільки добре, щоб, наприклад, переповідати його іншими словами або відповідати на питання — і перекладі з однієї мови на іншу. І знову ж таки, тут теж є уже втілені приклади на написаних у вигляді машинного коду правилах та статистичному аналізі відомого тексту. Найдовершенішим прикладом подібної технології можна вважати «Google Translate», який може видавати цілком зрозумілі варіанти (хоча інколи і смішні), проте навіть і близько не такі доречні, як людина-перекладач. «Глибоке навчання дозволить зробити дещо набагато краще за сучасну практику в цій області», каже експерт з краудсорсингу Луїс фон Ахн (Luis von Ahn), чия компанія «Duolingo» із Піттсбурга, штат Пенсільванія, залежить саме від перекладачів-людей, а не комп’ютерів. «Єдине, із чим погоджуються усі – це те, що саме час спробувати що-небудь інакше».
Глибока наука
У той же час глибоке навчання довело свою користь у ряді наукових задач. «Глибокі мережі справді хороші у пошуку схем в наборі даних»,— каже Гінтон. У 2012 році фармацевтична компанія «Merck» призначила винагороду тому, хто зможе перевершити найкращу її програму, яка допомагає оцінити користь кандидатів у ліки. Задача: перевірити базу даних з понад 30 000 малих молекул, кожна з яких має тисячі числових дескрипторів хімічних властивостей, і спробувати визначити, як саме кожен із них буде діяти у 15 різних цільових молекулах. Дал та його колеги отримали $22 000 завдяки системі глибокого навчання. «Ми покращили базову лінію «Merck» майже на 15%»,— каже він.
Дослідники з біології та обчислень, включно із Себастьяном Сеунгом (Sebastian Seung) із Масачусетського технологічного інституту в Кембриджі використовують глибоке навчання для того, щоб полегшити аналіз тривимірних зображень зрізів мозку. На цих зображеннях переплетені лінії відображають зв’язки між нейронами, які потрібно визначити так, щоб їх можна було нанести на карту і порахувати. Колись у минулому до цієї роботи долучали аспірантів, проте автоматизація процесу стала єдиним варіантом дати раду мільярдам зв’язків, які, скоріше за все, невдовзі буде визначено у рамках цих проектів. Глибоке навчання, здається, стане тут найкращим способом автоматизації. Сеунг наразі використовує програми глибокого навчання для визначення нейронів з великого скупчення від сітківки, а потім пересилає результати на перевірку волонтерам онлайн-гри «EyeWire».
Вільям Стаффорд Нобл (William Stafford Noble), учений комп’ютерних наук з Університету Вашингтона в Сієтлі використовував глибоке навчання для того, щоб його програма навчилася досліджувати нитки амінокислот і передбачати структуру білка, який мав із них утворитися, при цьому певні частини утворять, наприклад, шестикутник або петлю; або ж наскільки просто буде розчиннику проникнути у проміжки структури. Нобл досі тренував свою програму на малих об’ємах даних, а у найближчі місяці візьметься за Базу даних білків (Protein Data Bank): світове сховище, яке наразі має дані про приблизно 100 000 структур.
Для учених комп’ютерних наук глибоке навчання може виявитися дуже вигідним: Дал роздумує над новими можливостями для старт-апів, а Лекуна перед Новим Роком взяли на роботу як нового голову відділу ШІ у «Facebook». Ця технологія вельми перспективна з точки зору практичного успіху ШІ. «Схоже, що у глибокого навчання є цікава властивість: чим більше даних ви йому «згодовуєте», тим кращим воно стає,— зазначає Нг.— Це притаманне не лише алгоритмам глибокого навчання, проте воно явно найкраще — принаймні найлегше. Саме тому тут є багато перспектив для майбутнього».
Не усі дослідники поділяють його точку зору. Орен Етціоні (Oren Etzioni), голова Алленівського інституту штучного інтелекту у Сієтлі, який у вересні минулого року розпочав програму по розробці ШІ каже, що не збирається використовувати як модель звичайний мозок. «Це подібно до того, як ми винаходили способи літати»,— каже він; найбільш успішні моделі для аеропланів мають не дуже багато спільного із біологією птахів. Окрема мета Етціоні — винайти такий комп’ютер, який, спираючись на скановані зображення матеріалу шкільних підручників, зможе пройти стандартний тест з природничих наук для початкової школи (і поступово дійти до вступних екзаменів до університету). Щоб пройти тести, комп’ютеру доведеться навчитися читати і розуміти діаграми та текст. Як саме Алленівський інститут буде вирішувати це завдання — поки що невідомо, проте для Етціоні нейронні мережі та глибоке навчання не перші кандидати у списку варіантів.
Серед цікавих ідей також комп’ютер, здатний робити висновки на основі вкладених до нього даних, а не спробі вивести якісь дані з нуля. Тобто, його можна запрограмувати такими твердженнями, як «усі дівчата — люди». Потім, якщо йому трапиться текст про дівчину, то комп’ютер зможе визначити, що дівчина, про яку мовиться — це певна людина. Тисячі, якщо не мільйони, подібних фактів потрібні для того, щоб сформувалися доволі посереднє знання про світ. Приблизно той же принцип закладено у комп’ютері «Watson» компанії ІВМ, який, як відомо, виграв міжнародний тур у вікторині «Jeopardy!» у 2011 році. Незважаючи на це, «Watson Solutions» мали швидше експериментальний інтерес у глибинному навчанні для покращення схем розпізнавання, каже Роб Гай (Rob High), головний технолог компанії, розміщеної у місті Остін, штат Техас.
«Google» також має подвійні ставки. Хоча тут нещодавно і відбувся прогрес у присвоюванні зображенням міток на основі мереж глибокого навчання Гінтона, компанія має і ще один відділ із ширшим колом обов’язків. У грудні 2012 року, компанія найняла футуриста Рея Курцвайля (Ray Kurzweil), щоб розглянути, у які способи комп’ютери можуть навчатися із власного досвіду — різні технології, до яких входить і глибоке навчання. У травні минулого року «Google» придбав квантовий комп’ютер від канадської компанії «D-Wave» (див. Nature 498, 286–288; 2013). Цей комп’ютер дуже перспективний для задач, не пов’язаних зі ШІ, як-от математичні обчислення — хоча, теоретично, його можна використовувати і для глибокого навчання.
Незважаючи на успіхи, глибоке навчання ще у колисці. «Це частина майбутнього,— каже Дал.— Вражає, як багато ми змогли зробити з такої дрібниці». І, додає він, «ми тільки почали».