Наступна сторінка / дослідження демонструє, що глибокі нейронні мережі легко обдурити, даючи прогнози високої впевненості для невпізнанних зображень, наприклад
Як це можливо? Чи можете ви, будь ласка, пояснити ідеально простою англійською?
Наступна сторінка / дослідження демонструє, що глибокі нейронні мережі легко обдурити, даючи прогнози високої впевненості для невпізнанних зображень, наприклад
Як це можливо? Чи можете ви, будь ласка, пояснити ідеально простою англійською?
Відповіді:
По-перше, ці зображення (навіть перші кілька) не є повним сміттям, незважаючи на те, що вони стають смітниками для людей; вони насправді тонко налаштовані за допомогою різних передових методів, включаючи іншу нейронну мережу.
Глибока нейромережа - це заздалегідь підготовлена мережа за моделями AlexNet, що надається Caffe . Для еволюції зображень, як безпосередньо закодованих, так і опосередковано закодованих зображень, ми використовуємо еволюційний каркас Sferes . Весь код бази для проведення еволюційних експериментів можна скачати [так в оригіналі] тут . Код зображень, отриманих градієнтним підйомом, доступний тут .
Зображення, які насправді є випадковим сміттям, були правильно розпізнані як нічого значимого:
У відповідь на невпізнаваний образ, мережі могли б отримати низьку довіру для кожного з 1000 класів замість надзвичайно високого значення довіри для одного з класів. Насправді вони роблять саме це для випадково генерованих зображень (наприклад, таких, що покоління 0 еволюційного циклу)
Первісна мета дослідників полягала у використанні нейронних мереж для автоматичного генерування зображень, схожих на реальні речі (отримуючи відгуки розпізнавача та намагаючись змінити зображення, щоб отримати більш впевнений результат), але вони врешті створили вищевказане мистецтво . Зверніть увагу, як навіть у статичних зображеннях є невеликі виїмки - зазвичай біля центру - які, справедливо сказати, викликають розпізнавання.
Ми не намагалися створювати змагальні, невпізнанні зображення. Натомість ми намагалися створити впізнавані образи, але ці невпізнанні образи з’явилися.
Очевидно, що ці зображення мали лише правильні відмінні риси, щоб відповідати тому, що ШІ шукав у малюнках. Зображення "весло" має форму, що нагадує весло, "бублик" - круглий і потрібного кольору, "проектор" - зображення, що нагадує об'єктив камери, "клавіатура комп'ютера" - це купа прямокутників (наприклад окремі ключі), і "огорожа ланцюгової лінії" по праву виглядає як паркан ланцюга для мене.
Малюнок 8. Еволюціонуючі зображення, що відповідають класам DNN, створюють величезне розмаїття зображень. Показані зображення, вибрані для демонстрації різноманітності за 5 еволюційних циклів. Різноманітність говорить про те, що зображення є невипадковими, але натомість еволюції створюють [sic] дискримінаційні риси кожного цільового класу.
Подальше читання: оригінал паперу (великий PDF)
99% !
що ці фотографії, що нагадують деякі об'єкти, є подібними до справжніх об'єктів? Якщо ДНН не є психічно хворим і не вважає, що він
99%
впевненістю? Для мене - головна відмінність ДНН від людського визнання полягає в тому, що люди не змушені щось визнавати, в той час як НН, здається, є!
Надані вами зображення можуть бути не впізнавані для нас. Це насправді образи, які ми розпізнаємо, але еволюціонували за допомогою еволюційної структури Sferes .
Хоча для цих зображень люди майже неможливо позначити будь-що, крім абстрактних мистецтв, Глибока нейронна мережа позначить їх як знайомі об'єкти з 99,99% впевненості.
Цей результат підкреслює відмінності між тим, як ДНЗ та людина розпізнають об'єкти. Зображення кодуються безпосередньо (або опосередковано)
Відповідно до цього відео
Зміна зображення, спочатку правильно класифікованого непомітним для людини способом, може призвести до того, що ДНН класифікує його як щось інше.
На зображенні нижче числа внизу зображення повинні мати вигляд цифр, але мережа вважає, що зображення вгорі (такі, як білий шум) є справжніми цифрами з 99,99% впевненості.
Основна причина, чому їх легко обдурити, полягає в тому, що глибока нейронна мережа не бачить світ так само, як людське бачення. Ми використовуємо ціле зображення для ідентифікації речей, тоді як DNN залежить від особливостей. Поки DNN виявляє певні особливості, вона класифікує зображення як знайомий об'єкт, на якому він був навчений. Дослідники запропонували один із способів запобігти такому обманюванню, додавши дурних зображень до набору даних у новому класі та навчаючи DNN на збільшеному наборі даних. В експерименті показник довіри значно знижується для ImageNet AlexNet. Цього разу обдурити перекваліфіковану ДНН непросто. Але коли дослідники застосували такий метод до MNIST LeNet, еволюція все ще створює безліч невпізнаваних зображень із оцінкою довіри 99,99%.
Усі відповіді тут чудові, але чомусь поки що нічого не сказано, чому цей ефект не повинен вас дивувати . Я заповню пусту.
Дозвольте почати з однієї вимоги, яка абсолютно необхідна для цього: зловмисник повинен знати архітектуру нейронної мережі (кількість шарів, розмір кожного шару тощо). Більше того, у всіх випадках, які я досліджував, зловмисник знає знімок моделі, яка використовується у виробництві, тобто всі ваги. Іншими словами, "вихідний код" мережі не є секретом.
Ви не можете обдурити нейронну мережу, якщо ставитесь до неї, як до чорної скриньки. І ви не можете використовувати одне і те ж дурне зображення для різних мереж. Насправді вам доведеться самостійно «тренувати» цільову мережу, і тут, тренуючись, я маю на увазі біг вперед і задній хід, але спеціально пророблений з іншою метою.
Тепер ось інтуїція. Зображення дуже високі за розмірами: навіть простір невеликих кольорових зображень 32x32 має 3 * 32 * 32 = 3072
розміри. Але набір навчальних даних порівняно невеликий і містить реальні зображення, всі вони мають певну структуру та приємні статистичні властивості (наприклад, гладкість кольору). Отже, набір даних про тренінг розташований на крихітному колекторі цього величезного простору зображень.
Конволюційні мережі надзвичайно добре працюють на цьому колекторі, але в основному нічого не знають про інший простір. Класифікація точок поза колектором - це лише лінійна екстраполяція, заснована на точках всередині колектора. Не дивно, що деякі конкретні моменти екстраполюються неправильно. Зловмиснику потрібен лише спосіб переходу до найближчої з цих точок.
Дозвольте навести конкретний приклад, як обдурити нейронну мережу. Щоб зробити його компактним, я буду використовувати дуже просту логістичну регресійну мережу з однією нелінійністю (сигмоїд). Він займає 10-мірний вхід x
, обчислює єдине число p=sigmoid(W.dot(x))
, яке є ймовірністю класу 1 (проти класу 0).
Припустимо, ви знаєте W=(-1, -1, 1, -1, 1, -1, 1, 1, -1, 1)
і почніть з введення x=(2, -1, 3, -2, 2, 2, 1, -4, 5, 1)
. Передача вперед дає sigmoid(W.dot(x))=0.0474
або 95% ймовірність, що x
є прикладом класу 0.
Ми хотіли б знайти інший приклад, y
який дуже близький, x
але мережа класифікується як 1. Зауважте, що x
це 10-мірне, тож ми маємо свободу виставляти 10 значень, що дуже багато.
Оскільки W[0]=-1
це негативно, краще мати малого, y[0]
щоб зробити загальний внесок y[0]*W[0]
малого. Отже, давайте зробимо y[0]=x[0]-0.5=1.5
. Крім того, W[2]=1
позитивний, так що краще збільшити , y[2]
щоб зробити y[2]*W[2]
більше: y[2]=x[2]+0.5=3.5
. І так далі.
Результат - y=(1.5, -1.5, 3.5, -2.5, 2.5, 1.5, 1.5, -3.5, 4.5, 1.5)
і sigmoid(W.dot(y))=0.88
. За допомогою цієї зміни ми покращили ймовірність класу 1 з 5% до 88%!
Якщо уважно придивитись до попереднього прикладу, ви помітите, що я точно знав, як налаштувати x
, щоб перемістити його до цільового класу, бо знав градієнт мережі. Те, що я робив, насправді було розмноженням , але стосовно даних, а не ваг.
Взагалі, зловмисник починає з розподілу цілі (0, 0, ..., 1, 0, ..., 0)
(нуль скрізь, за винятком класу, якого він хоче досягти), підтримує дані та робить невеликий рух у цьому напрямку. Стан мережі не оновлюється.
Тепер має бути зрозуміло, що це загальна особливість мереж передачі даних, які мають справу з невеликим колектором даних, незалежно від того, наскільки глибокі вони чи характер даних (зображення, аудіо, відео чи текст).
Найпростіший спосіб запобігти обдурюванню системи - використовувати ансамбль нейронних мереж, тобто систему, яка збирає голоси декількох мереж за кожним запитом. Набагато складніше проводити зворотну пропагування стосовно кількох мереж одночасно. Зловмисник може спробувати зробити це послідовно, по одній мережі за раз, але оновлення для однієї мережі може легко зіпсувати результати, отримані для іншої мережі. Чим більше мереж використовується, тим складнішою стає атака.
Інша можливість - згладити вхід, перш ніж передавати його в мережу.
Не варто думати, що зворотне розповсюдження зображення має лише негативні програми. Дуже схожа методика, яка називається деконволюцією , використовується для візуалізації та кращого розуміння того, що нейрони засвоїли.
Ця методика дозволяє синтезувати зображення, яке спричиняє певний нейрон, і в основному візуально бачити "те, що нейрон шукає", що в цілому робить конволюційні нейронні мережі більш інтерпретаційними.
Важливим питанням, на яке поки не існує задовільної відповіді в дослідженні нейронної мережі, є те, як DNN придумують запропоновані ними прогнози. DNN ефективно працюють (хоча і не зовсім), порівнюючи патчі у зображеннях із "словником" патчів, один зберігається у кожному нейроні (див. Папір для котів на YouTube ). Таким чином, воно може не мати зображення високого рівня, оскільки воно переглядає лише патчі, а зображення зазвичай зменшуються до значно нижчої роздільної здатності для отримання результатів у сучасних системах генерації. Методи, які розглядають взаємодію компонентів зображення, можуть уникнути цих проблем.
Деякі питання, які слід задати цій роботі, такі: Наскільки впевненими були мережі, коли вони робили ці прогнози? Скільки обсягу займають такі змагальні зображення в просторі всіх зображень?
Деякі роботи, які мені відомі з цього приводу, походять від лабораторії Друва Батри та Деві Париха в Virginia Tech, які розглядають це питання для систем відповідей на питання: Аналіз поведінки візуальних запитань, що відповідають на моделі та інтерпретація моделей відповідей на візуальні запитання .
Потрібно більше такої роботи, і так як людська зорова система також обдурюється такими "оптичними ілюзіями", ці проблеми можуть бути неминучими, якщо ми будемо використовувати DNN, хоча теоретично чи емпірично про AFAIK нічого ще не відомо.
Як можливо, що глибокі нейронні мережі так легко обдурити?
Глибокі нейронні мережі легко обдурити, даючи високі прогнози впевненості для невпізнанних зображень. Як це можливо? Чи можете ви, будь ласка, пояснити ідеально простою англійською?
Інтуїтивно зрозумілі, додаткові приховані шари повинні зробити мережу здатною вивчати складніші класифікаційні функції, і, таким чином, зробити кращу класифікацію роботи. Хоча його можна назвати глибоким навчанням, це насправді неглибоке розуміння.
Перевірте власні знання: яка тварина на сітці нижче - це Felis silvestris catus , не витрачайте час і не обманюйте. Ось підказка: що таке домашня кішка?
Для кращого розуміння замовлення: " Атака противника на вразливі візуалізації " та " Чому глибокі нейронні мережі важко тренуватися? ".
Проблема є аналогічною численні , ефекту, який спричиняє, що різні сигнали стають невідрізними (або псевдоніми один одного) при відборі проб, і ефект сценічного вагона-колеса , коли спотворене колесо, як видається, обертається по-різному від свого справжнього обертання.
Нейронна мережа не знає, на що вона дивиться або в який бік йде.
Глибокі нейронні мережі не є експертом у чомусь, вони навчаються математично вирішувати, що якась мета була досягнута, якщо вони не навчені відкидати неправильні відповіді, вони не мають поняття, що не так; вони лише знають, що правильно, а що не правильно - неправильно і «не правильно» - це не обов'язково одне і те ж, а також «правильне» і правдиве.
Нейронна мережа не знає правильно від неправильного.
Так само, як і більшість людей не знають домашнього кота, якби бачили одного, двох чи більше, або жодного. Скільки домашніх котів у вищевказаній фоторешітці, жодної. Будь-які звинувачення у включенні фотографій милих котів є безпідставними, це все небезпечні дикі тварини.
Ось ще один приклад. Чи відповідає відповідь на питання Барт і Ліза розумнішими, чи знає людина, яку вони запитують, чи є невідомі змінні, які можуть вступити в гру?
Ми ще не там, але нейронні мережі можуть швидко надати відповідь, яка, ймовірно, є правильною, особливо якщо вона була належним чином навчена, щоб уникнути всіх помилок.
Нейронні мережі можна легко обдурити або зламати, додавши певний структурований шум у просторі зображень ( Szegedy 2013 , Nguyen 2014 ) через ігнорування недискримінаційної інформації у їх введенні.
Наприклад:
Навчитися виявляти ягуарів шляхом зіставлення унікальних плям на їхньому хутрі, ігноруючи той факт, що у них чотири ноги. 2015 рік
Таким чином, прогноз високої довіри у певних моделях існує завдяки " поєднанню їх локально-лінійного характеру та великого простору введення ". 2015 рік
Опублікований як доповідь на конференції в ICLR 2015 (робота Dai) дозволяє припустити, що перенесення дискримінаційно підготовлених параметрів на генеративні моделі може стати чудовим майданчиком для подальших вдосконалень.
Не можу коментувати (через це потрібно 50 повторень), але я хотів зробити відповідь на Вішну Дж. К. та ОП. Я думаю, ви, хлопці, пропускаєте той факт, що нейронна мережа справді говорить справді з програмної точки зору, що "це найбільше схоже".
Наприклад, хоча ми можемо перелічити наведені вище приклади зображень як "абстрактне мистецтво", вони остаточно найбільше схожі на те, що було перераховано. Пам’ятайте, що алгоритми навчання мають сферу застосування того, що вони розпізнають як об'єкт, і якщо ви подивитесь на всі вищенаведені приклади ... і подумайте про сферу роботи алгоритму ... це має сенс (навіть ті, які на перший погляд ми визнали б як білий шум). На прикладі Вишну чисел, якщо ви розмиваєте очі і виводите зображення з фокусу, ви можете в будь-якому випадку помітити шаблони, які дійсно тісно відображають ці питання.
Проблема, яка тут проявляється, полягає в тому, що алгоритм, як видається, не має "невідомого випадку". В основному, коли розпізнавання шаблону говорить про те, що він не існує у вихідній області. (тож кінцева група вузлів виводу, яка говорить, що я нічого не знаю). Наприклад, це роблять і люди, оскільки це одне спільне у людей і алгоритми навчання. Ось посилання, щоб показати, про що я говорю (що далі, визначте це), використовуючи лише відомих тварин, які існують:
Тепер, як людина, обмежена тим, що я знаю і можу сказати, я мушу зробити висновок, що далі - слон. Але це не так. Алгоритми навчання (здебільшого) не мають "схожий" на твердження, вихід завжди визначається до рівня довіри. Тож хитрість цього способу не дивна ... що, звичайно, дивно, це те, що виходячи з його набору знань, це насправді доходить до того, що, якщо подивитися на вищезазначені випадки, перелічені ОП та Вішну, що людина. .. трохи поглянувши ... може побачити, як алгоритм навчання ймовірно зробив асоціацію.
Отже, я б насправді не називав це неправильним позначенням з боку алгоритму, або навіть називав його випадком, коли його накрутили ... скоріше випадок, коли його область була розроблена неправильно.
Вже є багато хороших відповідей, я просто додам до тих, що були раніше моїх:
Цей тип зображень, на які ви посилаєтесь, називається змагальними збуреннями (див. 1 , і це не обмежується зображеннями, показано, що вони застосовуються і до тексту, див. Jia & Liang, EMNLP 2017. У тексті введення Невідповідне речення, яке не суперечить абзацу, спричиняє те, що мережа приходить до зовсім іншої відповіді (див. див. Jia & Liang, EMNLP 2017 ).
Причина, по якій вони працюють , пов'язана з тим, що нейронна мережа розглядає зображення в інший спосіб, ніж у нас, у поєднанні з високою розмірністю проблемного простору. Там, де ми бачимо всю картину, вони бачать поєднання особливостей, які поєднуються для формування об'єкта ( Moosavi-Dezfooli et al., CVPR 2017 ). Відповідно до збурень, породжених однією мережею, існує велика ймовірність роботи в інших мережах:
На малюнку вище видно, що універсальні збурення, обчислені для мережі VGG-19, наприклад, мають коефіцієнт нерозумності вище 53% для всіх інших перевірених архітектур.
Тож як ти поводишся із загрозою змагальних збурень? Ну, для одного, ви можете спробувати створити якомога більше збурень і використовувати їх для тонкої настройки вашої моделі. Спіст це дещо вирішує проблему, вона не вирішує проблему повністю. У ( Moosavi-Dezfooli et al., CVPR 2017 ) автор повідомив, що повторення процесу шляхом обчислення нових збурень і потім точне налаштування знову не дає ніяких подальших поліпшень, незалежно від кількості ітерацій, причому дурне співвідношення коливається навколо 80%.
Збурення - це вказівка на неглибоку відповідність картини, яку виконують нейронні мережі, в поєднанні з їх мінімальною відсутністю поглибленого розуміння проблеми, що існує. Ще потрібно ще попрацювати.
Більшість інших відповідей цікаві, а деякі демонструють певну суворість, тому я не буду дублювати це поводження, але я підберу якісну відповідь, що говорить більше про стан досліджень, ніж точну оцінку відсутності засобів захисту в сучасні конструкції штучної мережі.
Якщо хтось запитав: "Як це так легко обдурити людей?" Я посміхнувся б у згоді і сказав: "Я думаю, ми не такі глибокі".
Це моя оцінка стану штучних мереж. Тим не менш, може спричинитися більше інновацій та відкриттів, а питання безпеки тренінгу, розгортання та використання компонентів AI на місцях, безумовно, буде вирішено, коли успішні атаки коштують довіри та доброї волі корпорацій.
Продаж погано захищеної технології - це не нова річ. Ніхто тут, в лабораторії, не розміщуватиме яку-небудь наукову теорію, дані чи процедури на хмарі, якщо ми вже не відкрили джерела та не отримали ліцензії.