Николас Карлини об ИИ-безопасности: «Если от модели зависит жизнь — не развертывайте ее»

Machine Learning Street Talk 10 тыс. 1 ч 36 мин 10 мин 31.01.2021
Главное

Проблема состязательных атак (adversarial examples) остается одним из наиболее интригующих и опасных вызовов в сфере искусственного интеллекта, ставя под сомнение надежность современных нейросетей. В масштабном интервью для канала Machine Learning Street Talk ведущие мировые эксперты в области безопасности ИИ обсудили, почему компьютерное зрение видит мир совершенно иначе, чем человек. Исследователи детально разобрали фундаментальные уязвимости алгоритмов, раскритиковали методологию академических публикаций и дали неутешительный прогноз для практического применения технологий в незащищенных средах.

🧩 Природа феномена: почему ломаются нейросети 1:06

Состязательные примеры (adversarial examples) впервые были наглядно продемонстрированы в исследовательской среде вокруг 2013–2014 годов. Суть феномена проста, но разрушительна: минимальное, абсолютно незаметное для человеческого глаза изменение входных данных (например, пикселей на картинке) способно полностью дезориентировать классификатор и заставить его выдать неверный результат. Долгое время природа этого явления была окружена мистикой, а ученые строили гипотезы об особенностях архитектур моделей или методах их обучения.

Знаковым сдвигом в понимании проблемы стала работа исследователей из Массачусетского технологического института (MIT), опубликованная в 2019 году под названием «Features Your Model Sees That You Don't» (также известная как «Adversarial Examples Are Not Bugs, They Are Features»). Авторы работы экспериментально доказали, что состязательные атаки — это не случайные баги или ошибки оптимизации, а прямое следствие наличия в данных так называемых «неробастных признаков» (non-robust features).

Любой датасет содержит два типа паттернов:

Исследователи из MIT смогли физически разделить эти признаки в данных и обучить классификаторы на каждом типе отдельно. Оказалось, что модель, обученная исключительно на неробастных («невидимых») признаках, демонстрирует высокую точность на стандартном тестовом датасете, но мгновенно ломается при минимальном состязательном шуме. Более того, если обучить нейросеть на состязательных примерах с новыми, ошибочными с точки зрения человека метками, она все равно успешно обобщает правила и правильно классифицирует исходный тест, доказывая, что эти скрытые признаки действительно работают в рамках математической логики распределения данных.

Как объясняет ведущий, здесь возникает фундаментальный компромисс между состязательной робастностью и предсказательной точностью наших классификаторов. В качестве аналогии приводится пример с распознаванием кошки: животное обладает макро-признаками (форма тела, головы) и микро-признаками (текстура шерсти). Изменить форму кошки на картинке сложно — для этого нужно переписать огромное количество пикселей (высокая магнитуда изменений). Текстуру же шерсти изменить крайне легко (низкая магнитуда). Однако шерсть является невероятно информативным признаком для нейросети; если полностью исключить текстурные признаки из обучения и оставить только форму, точность классификатора на реальных данных резко упадет.

🥊 Иллюзия защиты: 1000 способов исправить и ни одного рабочего 4:14

Количество потенциальных состязательных примеров для любой сложной модели стремится к бесконечности. На сегодняшний день в академической литературе предложено от 500 до 1000 различных механизмов защиты. Ученые пытались внедрять детекторы аномалий на этапе прямого прохода, использовать безумные методы предварительной обработки данных и самые экзотические функции постпроцессинга результатов.

Однако Николас Карлини подчеркивает: «Если выстроить идеальное объяснение причин состязательных примеров, обычно на его основе можно создать защиту, которая их устранит». При этом большинство таких решений в итоге оказываются неэффективными или полностью сломанными. В так называемом «белом ящике» (white-box setting), когда злоумышленнику доступны веса модели, любая защита ломается с помощью стандартного градиентного спуска по простой функции потерь. Все атаки, под какими бы названиями они ни публиковались, концептуально делают одно и то же — оптимизируют вносимый шум под конкретную норму (например, L2 или L-infinity).

В сценарии «черного ящика» (black-box), когда веса скрыты, атаки работают иначе (например, через оценку границ принятия решений, как в работах Виланда Бренделя), но все равно остаются крайне опасными из-за свойства переносимости (transferability). Состязательный пример, сгенерированный для одной модели, с высокой вероятностью обманет другую модель со схожей архитектурой, обученную на тех же данных, поскольку обе они неизбежно находят одни и те же неробастные признаки в распределении.

На сегодняшний день реальную, подтвержденную устойчивость демонстрируют лишь два грубых инструмента:

  1. Состязательное обучение (adversarial training): процесс, в ходе которого состязательные примеры генерируются прямо во время обучения и принудительно добавляются в датасет. Модели буквально приказывают игнорировать неробастные признаки под угрозой штрафа по функции потерь.
  2. Рандомизированное сглаживание (randomized smoothing): добавление к входным данным огромного количества случайного шума (например, гауссова шума для устойчивости к L2-нормам) на этапе обучения и инференса с последующим статистическим подсчетом результатов.

Флориан Трамер отмечает, что эти методы работают, но выглядят крайне неудовлетворительно с научной точки зрения. Они требуют заранее жестко специфицировать тип и рамки угрозы, к которой нужно подготовить модель. Если защитить сеть от шума в норме L2, она останется абсолютно уязвимой для других типов пертурбаций. Кроме того, состязательное обучение — это «тыканье пальцем в небо», поскольку оно нейтрализует лишь малую часть из бесчисленного множества неробастных признаков и снижает общую точность модели на чистых данных примерно на 5-10%.

🦹 Реальные угрозы vs академические фантазии: где состязательные атаки опасны на самом деле 27:39

В медиа и многих научных статьях состязательные атаки часто преподносятся как катастрофическая угроза безопасности. Классический пример — модификация дорожного знака «Stop» с помощью незаметных наклеек, из-за чего беспилотный автомобиль считывает его как знак поворота. Однако Флориан Трамер называет этот сценарий надуманным и считает, что в изоляции состязательные примеры не наносят вреда.

По мнению Флориана Трамера, у беспилотных автомобилей есть гораздо более насущные проблемы безопасности в рамках стандартного распределения данных — они регулярно сбоят во время сильного дождя, снегопада или при плохой видимости. Флориан Трамер иронизирует: «Если кто-то действительно хочет убить вас в беспилотном автомобиле, ему проще бросить камень в машину или протаранить ее, чем ювелирно менять пиксели на дорожном знаке».

Тем не менее, Трамер и его коллеги выделили сферы, где состязательные атаки представляют собой реальную киберугрозу и выступают своего рода «визуальным тестом Тюринга» для алгоритмов. Это области, где в системе присутствует мотивированный злоумышленник, а изменения обязаны быть микроскопическими, чтобы не вызвать подозрений у человека.

Примеры реального противостояния в ИИ-системах:

🛣️ Синдром «коротких путей» и кризис глубокого обучения 34:51

Проблема состязательных примеров глубоко переплетена с более широким кризисом обобщения в машинном обучении — феноменом «обучения коротким путям» (shortcut learning). Виланд Брендель, автор фундаментальной работы на эту тему, объясняет, что при обучении нейросети на определенную задачу исследователи упускают из виду гигантский объем возможных математических решений. Современные алгоритмы и оптимизаторы выбирают из этого пула самые простые статистические корреляции, которые отлично работают на обучающей и тестовой выборках, но полностью проваливаются при малейшем сдвиге распределения (distribution shift).

Влияние инфраструктуры на результат обучения колоссально: финальное решение модели зависит от архитектуры, функции потерь и даже выбора оптимизатора (например, Adam). Более того, исследование Google показало, что простое изменение случайного зерна (random seed) при прочих равных условиях приводит к получению моделей, которые демонстрируют совершенно разные свойства обобщения на новых данных.

Исследовательская группа Виланда Бренделя провела эксперимент по сравнению кросс-консистентности ошибок людей и машин. Результаты показали следующие закономерности:

В качестве примера приводится исследование ученых из Беркли, которые переразметили датасет ImageNet. Выяснилось, что на базовых объектах (отличие банана от чашки) обученный человек практически не совершает ошибок, тогда как модели могут легко споткнуться в очевидных ситуациях. Напротив, в узких доменах — например, при различении 136 пород собак — обычный человек без специальной подготовки выдает точность около 70%, в то время как нейросети справляются с задачей феноменально лучше.

Это подчеркивает, что глубокое обучение уперлось в лимит оптимизации по метрике точности (accuracy probe). Индустрия нуждается в принципиально новых методах регуляризации поискового пространства и внедрении правильных индуктивных смещений (inductive biases), аналогичных механизмам работы человеческого мозга, способного обучаться на малом количестве данных.

📉 Академический самообман: почему ученые публикуют неработающие решения 1:06:49

Николас Карлини, известный в сообществе как главный «разрушитель защит», открыто заявляет о системном кризисе рецензирования в сфере AI-безопасности. Ссылаясь на знаменитое высказывание Ричарда Фейнмана о самообмане в науке, Карлини отмечает, что главная задача любого исследователя — усомниться в собственной правоте. В классической компьютерной безопасности после месяцев работы над созданием системы автор обязан полностью сменить образ мышления и приложить все усилия, чтобы доказать, что его идея не работает.

В машинном обучении этот этап часто игнорируется ради красивых цифр в статьях. Карлини перефразирует известное выражение: «Трудно заставить исследователя понять что-то, если его публикация зависит от того, что он этого не понимает».

По наблюдениям ученых, в академической среде сложился опасный паттерн:

В то же время научные журналы и конференции страдают от жесткого неприятия негативных результатов. Трамер рассказал историю о команде, создавшей красивую и оригинальную защиту. Метод в итоге не сработал, но сам процесс его взлома потребовал изобретения принципиально новых, прорывных техник атаки. Эту статью отказались публиковать из-за отсутствия «положительного прогресса в метриках», хотя она принесла бы сообществу гораздо больше пользы, чем очередное фальшивое решение.

Более того, Карлини, Трамер и Брендель столкнулись с абсурдностью рецензирования на конференции ICML. Ранее Карлини получил награду «Best Paper» за взлом ряда защит. Однако их последующая совместная работа, где они в пух и прах разнесли сразу 13 опубликованных систем защиты, была отклонена рецензентами с формулировкой: «Эта статья не содержит новых идей, вы просто применили существующие методы для взлома существующих работ».

🛠️ Практический фатализм: что делать разработчикам в реальном мире 1:27:48

Для инженеров и архитекторов ИИ-систем, развертывающих модели в реальном производстве (например, через облачные сервисы AWS, GCP или Azure), у исследователей есть максимально честный и суровый совет: если от устойчивости вашего классификатора к состязательному шуму зависят человеческие жизни — не развертывайте эту модель.

По мнению Николаса Карлини, в индустрии необходимо принять концепцию практического фатализма. В криптографии стандартом считаются гарантии безопасности на уровне математической вероятности взлома $2^{-128}$. В системной безопасности (например, при обходе канареек стека) риски составляют около $2^{-32}$. Лучшие состязательные защиты, существующие сегодня в машинном обучении, дают гарантию на уровне $2^{-1}$ — это означает, что мотивированный хакер добьется успеха как минимум в половине случаев.

Николас Карлини выражается еще жестче: «Если бы кто-то мог обмануть ваш классификатор и из-за этого кто-то погиб бы, то просто не развертывайте свой классификатор».

В текущих реалиях разработчикам рекомендуется следовать следующим правилам:

Глубокое обучение совершило революцию, но состязательные атаки четко очертили его границы. До тех пор, пока наука не поймет, как наделить нейросети человеческим контекстом и семантикой, любой ИИ-классификатор в открытой среде будет оставаться хрупким математическим конструктом, защищенным лишь до тех пор, пока им всерьез не заинтересовался умный противник.

💬 Цитаты

«Если выстроить идеальное объяснение причин состязательных примеров, обычно на его основе можно создать защиту, которая их устранит.»

Николас Карлини 16:47

«Трудно заставить исследователя понять что-то, если его публикация зависит от того, что он этого не понимает.»

Николас Карлини 1:07:56

«Если кто-то действительно хочет убить вас в беспилотном автомобиле, ему проще бросить камень в машину или протаранить ее, чем ювелирно менять пиксели на дорожном знаке.»

Флориан Трамер 29:12

«Если бы кто-то мог обмануть ваш классификатор и из-за этого кто-то погиб бы, то просто не развертывайте свой классификатор.»

Николас Карлини 1:32:37
👥 Спикеры
🔗 Упомянутые сайты и проекты
📖 Термины
Состязательные примеры (Adversarial Examples)
Входные данные (например, изображения), содержащие минимальные, незаметные для человека пертурбации, которые заставляют модель машинного обучения совершать грубые ошибки.
Неробастные признаки (Non-robust features)
Микроскопические, высокочастотные статистические закономерности в данных, которые полезны для предсказаний ИИ, но легко разрушаются состязательным шумом.
Состязательное обучение (Adversarial Training)
Метод защиты, при котором состязательные примеры генерируются непосредственно в процессе обучения и добавляются в тренировочный датасет для повышения устойчивости модели.
Рандомизированное сглаживание (Randomized Smoothing)
Метод защиты, заключающийся в добавлении случайного шума к входным данным для создания математически доказуемых зон стабильности вокруг объектов.
Обучение коротким путям (Shortcut Learning)
Тенденция нейросетей находить самые простые поверхностные корреляции в данных вместо усвоения глубокого истинного смысла задачи.
📊 Цифры
🗓 Хронология
  1. 2013-2014 Первое экспериментальное открытие и демонстрация феномена состязательных атак на классификаторы.
  2. 2018 Публикация знаковой работы Виланда Бренделя о склонности сверточных нейросетей (CNN) полагаться на текстуру вместо формы объектов.
  3. 2019 Выход фундаментального исследования MIT о разделении данных на робастные и неробастные признаки.
  4. 2019 Публикация методологического руководства Карлини и Бренделя по правильной оценке состязательной устойчивости ИИ.
⚖️ Другая сторона
Искусственный интеллект Adversarial Examples Nicholas Carlini Wieland Brendel Florian Tramèr Shortcut Learning