Янник Кильчер против теории ямчатого многообразия: почему новая модель состязательных атак не выдержала проверки

Yannic Kilcher 16,3 тыс. 1 ч 14 мин 7 мин 27.06.2021
Главное

В данном материале подробно разбирается научно-исследовательская работа, посвященная фундаментальной проблеме современного машинного обучения — феномену состязательных примеров (adversarial examples). Популярный IT-блогер и специалист по искусственному интеллекту Янник Кильчер (Yannic Kilcher) анализирует свежую статью «The Dimpled Manifold Model of Adversarial Examples in Machine Learning», авторы которой предлагают новый взгляд на геометрию решающих границ нейросетей. По ходу разбора Кильчер не только сопоставляет предложенную концепцию с ведущими альтернативными теориями, но и проводит собственный технический эксперимент, ставящий под сомнение выводы исследователей.

🧠 Суть концепции: что такое «ямчатое многообразие»? 0:00

Исследование, авторами которого выступили Ади Шамир (Adi Shamir), Одалия Меламед (Odalia Melamed) и Ориэль Бен Шмуэль (Oriel Ben Shmuel), ставит своей целью объяснить давнюю уязвимость нейросетей перед микроскопическими искажениями входных данных. На высоком концептуальном уровне авторы предлагают модель «ямчатого многообразия» (Dimpled Manifold Model).

Согласно их гипотезе, в процессе обучения классификаторы выстраивают свои решающие границы (decision boundaries) практически вплотную к низкоразмерному многообразию естественных данных. Граница идет параллельно этому многообразию, лишь слегка огибая конкретные обучающие примеры и формируя вокруг них своеобразные неглубокие «ямки» (dimples).

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

Янник Кильчер сразу подчеркивает, что данная работа не предлагает нового алгоритма атаки или метода защиты. Это исключительно ментальный каркас, попытка теоретического объяснения. При этом блогер открыто заявляет о своем скепсисе: по его мнению, модель ямчатого многообразия не приносит практической пользы и объясняет свойства нейросетей хуже, чем уже существующие в индустрии подходы.

🥊 Старая модель против новой: критика Янника Кильчера 7:18

Для обоснования своей правоты авторы статьи критикуют то, что они называют «старым ментальным образом» состязательных примеров. В их представлении, классическая интерпретация (наглядно показанная на двухмерных схемах) предполагает, что данные разных классов распределены изолированными группами, а разделяющая граница проходит строго посередине между ними. В такой парадигме состязательный пример создается за счет движения исходного объекта по направлению к центроиду противоположного класса. В качестве подтверждения этой «устаревшей» логики авторы приводят цитату известного ученого Яна Гудфеллоу (Ian Goodfellow).

Новое же видение исследователей требует перенестись в высокоразмерное пространство. Они утверждают, что:

На основе этого авторы формулируют три проверяемых тезиса:

  1. Натуральные изображения лежат на $k$-мерном многообразии, где размерность $k$ существенно меньше размерности исходного пространства $n$.
  2. Решающие границы глубоких нейросетей проходят в непосредственной близости от этого многообразия изображений.
  3. Градиент уверенности классификации имеет большую норму и направлен примерно перпендикулярно многообразию данных.

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

Более того, Кильчер считает саму идею «гладкой границы с ямками» избыточно сложной. В реальности нейросети на базе функций активации ReLU разбивают пространство на множество жестких линейных подзон (политопов). По мнению ведущего, авторы незаслуженно наделили свою модель преимуществом третьего измерения на схемах, тогда как классические линейные разделители в тех же условиях объясняют близость границ ничуть не хуже.

📐 Альтернатива: модель растянутых признаков 23:06

В качестве противовеса Янник Кильчер предлагает рассмотреть ментальную модель, которую он условно называет «моделью растянутых (или squishy) признаков». Эта концепция базируется на фундаментальной работе группы Александра Мадри (Aleksander Madry) о том, что состязательные примеры — это не баги алгоритмов, а их закономерные фичи.

Суть модели Кильчера заключается в жестком разделении пространства признаков (финального представления перед классификатором) и исходного пиксельного пространства (входа сети):

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

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

🧩 Разгадка «тайн» состязательных примеров 38:25

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

Однако Янник Кильчер последовательно критикует каждое из этих объяснений:

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

Блогер указывает на нестыковку теории авторов с известными феноменами:

В то же время, модель растянутых признаков легко объясняет переносимость: обе сети просто задействовали один и тот же статистически полезный признак (например, микроструктуру текстуры), который одинаково уязвим к направленным пиксельным сдвигам.

Аналогично разбивается аргумент авторов о компромиссе между точностью модели и ее устойчивостью (accuracy-robustness trade-off). Авторы объясняют падение точности при состязательном обучении тем, что сеть заставляют «слишком сильно изгибать границу», усложняя оптимизацию.

Кильчер, опираясь на модель Мадри, предлагает гораздо более логичное объяснение: заставляя сеть игнорировать уязвимые текстурные признаки (поскольку в состязательном датасете они искусственно зашумлены), мы лишаем ее части полезной информации. Сеть теряет в точности на чистых данных просто потому, что теперь она вынуждена опираться на меньшее количество признаков.

🧪 Эксперимент и крах по «бритве Оккама» 1:00:47

Главным аргументом авторов статьи в пользу своей модели стал эксперимент с разделением атак на внутри-многообразные (on-manifold) и вне-многообразные (off-manifold). Используя автоэнкодер для аппроксимации реального распределения данных, они принудительно генерировали состязательный шум либо строго в плоскости многообразия, либо перпендикулярно ему. Их замеры на датасете ImageNet показали, что для атаки внутри многообразия требуется норма искажения примерно в 6 раз больше, чем при обычной или строго перпендикулярной атаке. Из этого они сделали вывод, что состязательные атаки по своей природе бьют «вне многообразия».

Янник Кильчер решил перепроверить этот эксперимент и воспроизвел его программный код с помощью библиотек PyTorch и advertorch. Он взял стандартный классификатор ImageNet и провел атаку $L_2$ PGD на изображение панды. Однако вместо сложного обучения автоэнкодера для поиска реального многообразия изображений Кильчер применил чистую математику:

Результаты оказались обескураживающими для авторов исследуемой статьи. При проекции на случайное подпространство норма необходимого шума выросла точно так же — примерно в 8 раз (с 0.77 до 6.5). При этом атака «вне подпространства» дала в точности ту же норму, что и классическая несвязанная атака (0.7773 против 0.7772).

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

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

💬 Цитаты

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

Янник Кильчер 40:53
👥 Спикер
🔗 Упомянутые сайты и проекты
📖 Термины
Состязательные примеры (Adversarial Examples)
Входные данные (например, изображения), в которые внесены минимальные, незаметные для человека изменения, заставляющие нейросеть выносить ошибочные суждения.
Многообразие данных (Data Manifold)
Низкоразмерное подпространство внутри высокоразмерного пространства признаков, в котором концентрируются объекты из реального мира.
Решающая граница (Decision Boundary)
Геометрическая граница в пространстве признаков, разделяющая области, относящиеся классификатором к разным категориям.
PGD (Projected Gradient Descent)
Один из наиболее мощных и популярных итеративных алгоритмов генерации состязательных атак.
Бритва Оккама
Методологический принцип, согласно которому не следует привлекать новые сущности или сложные объяснения, если феномен можно объяснить более простыми причинами.
📊 Цифры
⚖️ Другая сторона
Искусственный интеллект Machine Learning состязательные атаки Янник Кильчер глубокое обучение