Чому навчені на GTA нейромережі не можна застосовувати в реальних завданнях

Генеральний директор компанії Cognitive Technologies Андрій Чорногоров про недоліки навчання систем штучного інтелекту на згенерованих даних.

Нещодавно Харрісон Кінслі, програміст зі США, анонсував нейромережу Charles, яка вчиться водити без допомоги людини. Унікальність системи штучного інтелекту, написаної на Python, не в тому, наскільки здорово вона справляється зі своїм основним завданням - це якраз не так - а в тому, що полігоном для навчання є всесвіт гри GTA 5 від Rockstar Games.

Ті, хто щось розуміють у комп'ютерних іграх, вже здогадалися, що Charles не найакуратніший водій: нейромережа бачить лише картинку із зображенням міста, так само, як звичайний гравець. Інтелектуальний алгоритм навчається у не самих миролюбних і законослухняних «мешканців», які регулярно врізаються, вибухають, вилітають із траси та перевертаються. Пригоди Charles схожі швидше на виживання, ніж на автономне керування, яким його хотіли б бачити в реальному житті.

Через тиждень з початку випробувань середній цикл "перезавантаження" Charles складає близько 15 хвилин, тобто щодня машина розбивається або відлітає в кювет близько 100 разів. Що, втім, у кілька разів краще за початковий результат.

Інший приклад використання всесвіту Rockstar для навчання штучного інтелекту продемонстрував Артур Філіпович, фахівець з інформатики з Прінстонського університету. Він задіяв внутрішньоігрові зображення у навчанні інтелектуального алгоритму, досягнувши прийнятного рівня розпізнавання віртуальних знаків за умов недостатньої видимості (70%), туману та нерівностей дороги (75%).

Дослідник мотивував своє рішення економією ресурсів та часу: «Самостійно шукати дорожні знаки у фотоархівах абофотографувати їх було б надто довго та дорого».

Півтора роки тому схожа думка відвідала провідного спеціаліста групи наукових розробок у Xerox Едріана Хайдона. На попередньому місці роботи він мав можливість спостерігати, як Google витрачає значні суми грошей на тестування та налагодження прототипів безпілотного автомобіля в умовах стримуючого законодавства та найсуворіших правил, які пред'являються до безпеки випробувань. Йдеться, за його словами, про десятки мільйонів доларів щороку.

Такі умови виразно не підходять для компаній, які не мають «безмежних» ресурсів Google і Baidu, тому Хайдон задумався про те, за рахунок чого можна було б звести до мінімуму витрати на етапі збору даних для навчання ІІ.

Вчений прийшов до ідеї використання ігрового движка Unity зовсім випадково: «В інтернеті я наткнувся на трейлер останнього спін-оф Assassin's Creed, і протягом хвилини дійсно думав, що дивлюся трейлер фільму, хоча це була графіка. Це перший випадок, коли CGI обвела мене довкола пальця».

Хайдон вирішив, що якщо сучасні ігрові движки можуть з такою легкістю обдурити людину, можливо, вони зможуть «обдурити» і штучний інтелект. Його команда провела 2016 рік, навчаючи нейромережі розпізнаванню віртуальних автомобілів, дорожньої розмітки та пішохідних переходів за допомогою технологій глибокого навчання: «Нашим кінцевим завданням є навчання ІІ коректному розпізнаванню цих же об'єктів у фізичному світі».

Потрібно визнати, Едріан зумів досягти успіхів, за рік довівши показник до 78% коректних спрацьовувань при розпізнаванні пішоходів.

З частково прихованими перешкодами ІІ з Пало-Альто справляється трохи гірше, частка успішних розпізнавань не перевищує 70%. Тим не менш, отримавши у 2016році грант у розмірі $1,5 млн на розвиток ініціативи, американська команда сповнена рішучості протягом 2–3 років довести точність до 90%, використовуючи для навчання лише синтетичні дані.

Наймасштабніший і фундаментальний краудсорсинговий проект із гейміфікації навчання штучного інтелекту зараз — програма Project Malmo від Microsoft, яка пропонує фахівцям проводити свої експерименти в рамках всесвіту Minecraft.

Ініціатива, запущена на початку 2016 року, за задумом куратора програми доктора Хоффман, повинна стимулювати процес навчання штучного інтелекту базовим поняттям взаємодії з віртуальною реальністю Minecraft, що має максимальну кількість ступенів свободи, що в перспективі дозволить ІІ перенести набутий досвід у реальний світ і ефективніше. задачам на кшталт автономного водіння та інтелектуального розпізнавання.

На відміну від колег по цеху, які вважають світ Minecraft надто «пікселізованим» і, отже, не надто придатним для навчання ІІ, Хоффман вважає, що патерни навчання та сприйняття штучного інтелекту не обов'язково мають співпадати з людськими.

«У спробі навчитися літати ми надихнулися птахами та комахами, проте кінцева реалізація концепції польоту стосовно людини лише віддалено нагадувала те, що ми підглядали у природі. Комп'ютери з самого початку "сприймають" світ зовсім не так, як люди, тому немає нічого поганого в тому, щоб внутрішнє уявлення заданого середовища в ІІ формувалося за відмінними від людських алгоритмів та параметрами», — каже вона.

З певними припущеннями я можу назвати Кінслі, Хайдона та доктора Пилиповича колегами. Наведені вище кейси наочно демонструють використання такзваних «синтетичних великих даних» для калібрування інтелектуальних алгоритмів у цій галузі.

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

Під якістю тут, зокрема, мається на увазі автентичність даних щодо реальних умов, у яких їх планують застосовувати.

Чи може комп'ютер зараз взяти на себе роль генератора навчальної вибірки для штучного інтелекту? Не думаю. Я говорю про «спокусу», тому що вважаю використання синтетичних даних при навчанні інтелектуальних систем максимальної критичності помилкою, яка в перспективі може призвести до людських жертв.

Синтетичні дані у випадку — це будь-які виробничі дані, застосовні до конкретної ситуації, які були отримані шляхом прямого виміру. Навчальна вибірка для ІІ формується не так на реальних дорожніх ситуаціях, але в симульованих. Джерела симуляції - алгоритми гри або програми, що генерують необхідну інформацію. Але де вони самі беруть дані? Відповідь проста: програми пишуть люди, і в цьому полягає головна проблема.

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

Однак кінцеве завдання навчання — безпечне водіння в реальному світі, реальними дорогами, і цей «стрибок» з віртуального світу в реальний синтетичні данізробити поки що не в змозі. Жодна гра, якою б реалістичною вона не здавалася захопленому гравцю, не може (і ще дуже довго не зможе) переконливо відтворювати реальні дорожні умови.

Кількість ступенів свободи та, відповідно, комбінацій критично важливих параметрів при використанні неорганічної вибірки буде обмежена різноманітністю алгоритму, що її забезпечив.

На жаль, професор Філіпович, який досяг 70% точності при розпізнаванні дорожніх знаків, все ще дуже далекий від 99%, що забезпечують теоретичну можливість комерційного освоєння подібних розробок.

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

Тестування та калібрування таких гібридних апаратно-програмних систем на синтетичних даних неможливо. Очевидно, що будь-які, навіть незначні розбіжності при роботі з синтетичними даними на віртуальному полігоні — невідповідності градієнта яскравості, освітленості, кута падіння світла можуть призвести до абсолютно непередбачуваних наслідків при перенесенні в реальні умови.

Відчуйте різницю. Синтетичні дані, віртуальний полігон: