Глибокого навчання недостатньо,
Нам потрібне глибоке навчання Байєса для безпечного ШІ

Байєсівське глибоке навчання, бачення комп’ютера, невизначеність

навчання

Алекс Кендалл

Дослідник комп’ютерного бачення та робототехніки

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

У травні 2016 року ми трагічно пережили смертельний випадок із системи керування автомобілем. Згідно з блогом виробника, "Ні автопілот, ні водій не помітили білу сторону причепа трактора на тлі яскраво освітленого неба, тому гальмо не було застосовано".

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

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

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

У цій публікації я збираюся представити нове поле, відоме як глибоке навчання Байєса (BDL), яке забезпечує основу глибокого навчання, яка також може моделювати невизначеність. BDL може досягти найсучасніших результатів, одночасно розуміючи невизначеність. Я збираюся пояснити різні типи невизначеності та показати, як їх моделювати. Нарешті, я обговорю нещодавній результат, який показує, як використовувати невизначеність для зниження ваги для багатозадачного глибокого навчання. Матеріал для цього повідомлення в блозі взятий здебільшого з моїх двох останніх статей:

Які невизначеності нам потрібні при глибокому навчанні Баєса для комп’ютерного зору? Алекс Кендалл та Ярін Гал, 2017. (.pdf)

Багатозадачне навчання з використанням невизначеності для зважування втрат для сценової геометрії та семантики. Алекс Кендалл, Ярін Гал та Роберто Циполла, 2017. (.pdf)

І, як завжди, там можна знайти більше технічних деталей!

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

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

Епістемічна невизначеність

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

  • Критично важливі програми, оскільки епістемічна невизначеність потрібна для розуміння прикладів, які відрізняються від навчальних даних,
  • Невеликі набори даних, де дані навчання недостатні.

Алеаторна невизначеність

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

  • Ситуації з великими даними, коли епістемічна невизначеність здебільшого пояснюється,
  • Додатки в режимі реального часу, оскільки ми можемо сформувати алеаторичні моделі як детерміновану функцію вхідних даних без дорогої вибірки Монте-Карло.

Ми можемо поділити алеаторику на дві наступні підкатегорії:

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

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

Далі я покажу, як формувати моделі для фіксації цієї невизначеності за допомогою глибокого навчання Байєса.

Байєсівське глибоке навчання - це поле на перетині між глибоким навчанням та теорією ймовірності Байєса. Він пропонує принципові оцінки невизначеності з архітектур глибокого навчання. Ці глибокі архітектури можуть моделювати складні завдання, використовуючи потужність ієрархічного представлення глибокого навчання, одночасно маючи можливість робити висновки про складні мультимодальні задні розподіли. Байєсові моделі глибокого навчання, як правило, формують оцінки невизначеності, розміщуючи розподіли за вагами моделі, або вивчаючи пряме відображення до імовірнісних результатів. У цьому розділі я коротко обговорюю, як ми можемо моделювати як епістемічну, так і алеаторичну невизначеність, використовуючи байєсівські моделі глибокого навчання.

По-перше, ми можемо змоделювати гетеросцедастичну алеаторну невизначеність, просто змінивши наші функції втрат. Оскільки ця невизначеність є функцією вхідних даних, ми можемо навчитися прогнозувати її за допомогою детермінованого відображення від входів до вихідних даних моделі. Для регресійних завдань ми зазвичай тренуємось з чимось на зразок евклідової/L2 втрати: \ (\ begin Loss = || y - \ hat || _2 \ end \). Щоб вивчити гетеросцедастичну модель невизначеності, ми просто можемо замінити функцію втрат наступним:

де модель передбачає середнє значення \ (\ капелюх \) та дисперсію \ (\ сигма ^ 2 \). Як видно з цього рівняння, якщо модель передбачає щось дуже неправильне, тоді їй буде запропоновано послабити залишковий доданок, збільшуючи невизначеність \ (\ sigma ^ 2 \). Однак, \ (\ log \ sigma ^ 2 \) запобігає нескінченному зростанню терміну невизначеності. Це можна сприймати як зменшення втрат.

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

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

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

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

Навчальні дані Тестування даних Алеаторна дисперсія Епістемічна дисперсія
Навчався на наборі даних №1 Перевірено на наборі даних №1 0,485 2.78
Навчався на 25% наборі даних №1 Перевірено на наборі даних №1 0,506 7,73
Навчався на наборі даних №1 Перевірено на наборі даних №2 0,461 4.87
Навчався на 25% наборі даних №1 Перевірено на наборі даних №2 0,388 15,0

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

Далі я збираюся обговорити цікаве застосування цих ідей для багатозадачного навчання.

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

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

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

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

Багатозадачне навчання покращує плавність і точність сприйняття глибини, оскільки воно засвоює уявлення, яке використовує підказки інших завдань, таких як сегментація (і навпаки).

Чому байєсівське глибоке навчання не сприяє усьому нашому А.І. системи сьогодні? Я думаю, що мали б, але залишається кілька справді складних дослідницьких питань. На закінчення цього блогу я згадаю декілька з них:

  • Методи епістемічної невизначеності в режимі реального часу перешкоджають застосуванню моделей епістемічної невизначеності в робототехнічних програмах реального часу. Або підвищення ефективності вибірки, або нові методи, які не покладаються на умовиводи Монте-Карло, були б надзвичайно корисними.
  • Орієнтири для байєсівських моделей глибокого навчання. Неймовірно важливо кількісно оцінити покращення для швидкої розробки моделей - подивіться, які показники, як ImageNet, зробили для комп'ютерного зору. Нам потрібні набори тестів для вимірювання калібрування невизначеності і в моделях BDL.
  • Кращі методи висновків для захоплення мультимодальних розподілів. Наприклад, див. Демо-версію Yarin, встановлену тут, яка показує деякі мультимодальні дані, які висновок відсіву MC не вдається змоделювати.