Геометрия состязательных связей

Материал из wikixw
Перейти к навигации Перейти к поиску

Спасибо Алексу Каю за обсуждение, которое вдохновило на эти идеи. Также, спасибо Стивену Касперскому за отзыв.

В этом посте я хочу кратко осветить результаты статьи 2017 года “Универсальные состязательные возмущения”1 и обсудить, что это подразумевает в отношении геометрии границ классификации. Я надеюсь сделать этот пост доступным для читателей, которые новички в машинном обучении, поэтому я не буду предполагать никаких предварительных знаний, кроме общего математического фона.

Представление глубокой нейронной сети

Нейронные сети[править]

Вот мое понимание того, как работают (глубокие) нейронные сети. Допустим, у нас есть нейронная сеть, которая была обучена классифицировать изображения фиксированного размера. То есть, учитывая изображение n×m

в пикселях он относит его к классу типа “собака” или “подушка”. Сеть состоит из множества слоев узлов, как показано ниже. В самом левом углу у нас есть входной слой 3nm
входные узлы: по одному для каждого цветового канала (RGB) каждого пикселя изображения. В середине у нас есть набор “скрытых слоев”, а затем справа у нас есть выходной слой, который содержит по одному узлу для каждого из вариантов классификации сети.

Мы можем ввести изображение в нашу нейронную сеть, установив “активации” узлов во входном слое на значения RGB пикселей изображения. Затем активация каждого узла на более позднем уровне вычисляется путем взятия линейной комбинации активаций узлов на предыдущем уровне, а затем применения простой нелинейной функции, такой как sigmoid (1+опыт(−x−1

или ReLU 12(x+|x|)

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

Предполагая, что наша модель уже обучена (то есть мы вычислили хорошие линейные комбинации для использования при активации узла), есть надежда, что эта окончательная классификация верна для большинства изображений – даже тех, которых не было в обучающем наборе. Действительно, современные нейронные сети смогли достичь очень высокой точности классификации. В этом посте я собираюсь предположить, что наша модель имеет точность около 100% для изображений в тестовом дистрибутиве D . Я также буду использовать слова “модель” и “нейронная сеть” взаимозаменяемо.

Состязательные возмущения[править]

Авторы этой статьи смогли найти состязательные возмущения для самых современных глубоких нейронных сетей. Допустим, что наша сеть правильно классифицирует изображение Я

как “кофейник”. Состязательное возмущение - это небольшое изменение Δ
такая, что сеть классифицирует I'=I+Δ
как нечто совершенно иное, например, “ара” (добавление изображений выполняется точно так, как вы ожидаете: суммируйте значения RGB, пиксель за пикселем). Удивительно, Δ
может быть настолько мала, что едва заметна человеческому глазу – они смогли найти возмущения, которые изменили значение цвета RGB каждого пикселя максимум на 10
(в масштабе от 0
Для 255

).

C

Если вы добавите небольшое возмущение к обычному изображению кофейника, нейронная сеть ошибочно классифицирует его как "ара". Цвета изображения среднего возмущения были увеличены для наглядности.

Автор изображения: Мусави-Дезфули и др.


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

Но это еще хуже. По умолчанию нет оснований ожидать, что возмущение Δ

то, что обманывает сеть на определенном изображении, также обманет сеть при применении к другим изображениям. Удивительно, но исследователи смогли найти некоторые возмущения, которые были универсальными2. То есть они нашли фиксированное возмущение Δ
такая, что для большой части изображений Я
взято из тестового распределения, I+Δ
была неправильно классифицирована.

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

Автор изображения: Мусави-Дезфули и др.

Границы классификации[править]

Мы можем думать о нейронной сети как о непрерывной функции f:Rd→Rℓ

, где d
и ℓ
- это количество узлов во входном и выходном слоях соответственно. Действительно, теоретически возможно выписать единственное математическое выражение для каждой из выходных активаций yi
с точки зрения входных данных x1,...,xd

. Хотя это было бы чрезвычайно долго, это включало бы только сложение, умножение и (если используется сигмоидальное) деление и возведение в степень. В результате мы можем представить нейронную сеть как разделяющую Rd

в ℓ
области классификации, где область i
соответствует всем входным данным, для которых модель выдает наивысшую активацию в узле yi

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

их порядка миллиона, в этом посте я нарисую картинки с d=2 .
Гипотетические области классификации и границы нейронной сети

Что мы можем сказать о границах между регионами? Они соответствуют входным данным, для которых два различных yi

и yj
привязаны к наивысшей активации. Если мы используем сигмоидальную функцию (которая дифференцируема), мы можем доказать, что эти границы локально d−1

многомерные гиперповерхности. Это означает, что если вы увеличите изображение достаточно близко, границы между областями должны выглядеть красиво и ровно – у них не будет никаких странных фрактальных свойств.

Но эта плоскостность гарантируется только при достаточно большом увеличении. На практике, даже если функция f

гладкая, она все еще может выглядеть очень неровной в человеческих масштабах (точно так же, как 100грехов(100x)
выглядит очень неровно, когда вы подключаете ее к Desmos). Это то, что происходит с состязательными возмущениями. Небольшое изменение в x
может привести к значительным изменениям в f
поскольку ее линейность становится очевидной только при действительно небольших изменениях в x

.3

Четыре сценария[править]

Я нахожу полезным представить состязательные возмущения наглядно. Что состязательные возмущения говорят нам о геометрии границ классификации? Рассмотрим четыре гипотетические нейронные сети, которые имеют качественно разные уровни устойчивости к возмущениям. От наиболее надежных к наименее надежным, это (1) нет состязательных возмущений, (2) существуют состязательные возмущения (3) существуют универсальные состязательные возмущения и (4) все возмущения являются состязательными. Каждая из этих категорий строго более надежна, чем следующая, в том смысле, что любой тип возмущения, который может обмануть модель i

также может обмануть модель i+1

.

Читая эти сценарии, пожалуйста, имейте в виду, что диаграммы предназначены для построения грубой 2D-интуиции, и ничего более. Фактические границы классификации в Rd

выглядело бы совершенно иначе (если бы это было вообще возможно визуализировать d
размеры).

Категория 1: Состязательных возмущений нет.В этой идеальной модели состязательные возмущения не работают. Почти для всех изображений в реальном распределении D

не существует малого Δ
мы можем добавить к ней то, что приведет к ее неправильной идентификации. Это означает, что шар среднего размера с центром почти в любой точке в D
по-прежнему будет полностью находиться в пределах правильной области классификации. Написанный символически, этот случай примерно означает ∀I∈D,∀ϵ,[f(I)=f(I+Δ).............................................
(где Bϵ
все ли точки в Rd
с небольшой величиной). Вот как будут выглядеть границы классификации:

Обратите внимание на заштрихованные подобласти внутри каждой области классификации. Эти заштрихованные подобласти представляют тестовое распределение D

то есть изображения, которые вы могли бы найти в реальном мире. Цвет заштрихованной области - это “основная истина”, то есть фактическая метка изображения. Когда мы делаем предположение, что наша модель на 100% точна при классификации изображений в D
это эквивалентно высказыванию “фиолетовые заштрихованные области лежат в пределах фиолетовых границ, красные заштрихованные области лежат в пределах красных границ и т.д.”.

Почти все Rd

соответствует изображениям беспорядочно выглядящего шума4 – лишь крошечная доля Rd
содержит изображения, на которые вы бы посмотрели и сказали “да, это кошка / подушка / кофейник”. Давайте назовем этот набор изображений H
для “узнаваемого человека”. И только небольшая часть изображений в H
находятся в D
– образы, с которыми вы могли бы столкнуться в реальной жизни. Например, неизмененное изображение кофейника выше находится в D

, в то время как изображение кофейника с противоборствующими возмущениями не в D

(хотя это в H

). В конце концов, мы предполагаем, что наша нейронная сеть на 100% точна в D

итак, для того, чтобы возмущение обмануло модель, оно должно вывести изображение за пределы D

. Обратите внимание, что D⊂H⊂Rd

и любое небольшое возмущение D
все еще должна лежать в H

. Вы можете думать о H

как объединение небольших окрестностей, окружающих точки D

.

Нас интересует только влияние состязательных возмущений на изображения в D . Таким образом, до тех пор, пока границы классификации f

учитывая достаточно широкий охват заштрихованных областей, мы можем считать нашу модель надежной. Эквивалентный способ заявить об этом таков: “наша модель точна на H

”.

Категория 2: Существуют состязательные возмущения.В этой модели для большинства изображений Я

в тестовом распределении существует небольшое возмущение Δ
(выбрана для конкретного Я

) это вводит в заблуждение нейронную сеть. Этот случай примерно переводится как ∀Я∈Д,∃Δ∈БϵС. Т.ф(Я)≠Ф(я+Δ) .

Вот один из способов, которым это могло бы выглядеть:

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

существует, которая при добавлении к этой точке достигнет другой области, вводя модель в заблуждение. Тонкое (но важное) свойство, на которое следует обратить внимание, заключается в том, что заштрихованные области разных цветов расположены не близко друг к другу: для любого I,J∈D

, если f(I)≠f(J) , тогда |I−J|

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

Категория 3: Существуют универсальные состязательные возмущения.Это сценарий, который Мусави-Дезфули и др. оказалось верным для моделей, которые они изучали. Единственное различие между этим и предыдущим сценарием заключается в порядке кванторов: ∃Δ∈БϵС. т.∀Я∈Д,ф(Я)≠Ф(я+Δ) .

Вот как это могло бы выглядеть:

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

“размазано”. Это соответствует единственному направлению для Δ
это успешно подталкивает все D
через соседнюю классификационную границу. Другими словами, касательные границ классификации вблизи D
сильно коррелируют. Это контрастирует с категорией 2, в которой касательные границ указывают во всех разных направлениях.

У меня возникло искушение нарисовать эту категорию более упрощенным способом: в виде стопки тонких блинов, все ориентированные в одном направлении. Но в двух измерениях это создает ложное впечатление, что все области классификации должны иметь одинаковую форму. В действительности, формы областей могут быть очень сложными и разнообразными – это может происходить просто в d−1

другие измерения. На самом деле, как я нарисовал, областям разрешается иметь толщину даже в направлении Δ
до тех пор, пока D
всегда распределяется на определенной стороне каждой области.

Категория 4: Все возмущения являются состязательными.Это представляет наихудший сценарий, при котором модель полностью барахлит всякий раз, когда вы добавляете немного шума к изображению. Это примерно означает, что ∀Я∈Д,∀Δ∈Бϵ,[ф(Я)≠Ф(я+Δ)] . В этом сценарии предполагается, что топология D

очень разрозненна – больше похожа на набор изолированных точек, чем на набор сгустковатых областей:

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

Заключение[править]

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

Рассматривая нейронную сеть как непрерывную функцию от Rd

Для Rℓ

Различие между D , H , и Rd Классификация устойчивости к состязательным возмущениям по этим четырем типам Идея “коррелирования” ориентаций классификационных границ Определение этих четырех категорий помогло мне понять взаимосвязь между состязательными возмущениями и геометрией границ классификации. Я доволен тем, как каждая из категорий может быть выражена логической формулой, единственными различиями между ними являются типы и порядок кванторов.

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

к категории i−1

) было бы повторно обучить его возмущениям изображений в D

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

Спасибо за чтение! Пожалуйста, дайте мне знать, если я допустил какие-либо ошибки или если вы не согласны с частями моего анализа.

Читать[править]

С. Мусави-Дезфули, А. Фаузи, О. Фаузи и П. Фроссар. Универсальные состязательные возмущения. На конференции IEEE по компьютерному зрению и распознаванию образов (CVPR), 2017. arxiv.org

  • Фактически, они обнаружили возмущения, которые вдвойне универсальны: они работают с большой частью изображений в нескольких разных нейронных сетях (VGG-F, CaffeNet, GoogLeNet, VGG-16, VGG-19, ResNet-152). ↩
  • Функция f
может быть настолько чувствительной, что даже малейшее изменение, которое вы можете внести в цифровое изображение – изменение одного значения цвета на 1
из 256
– может привести к большим изменениям в f

. Другими словами, прямой путь от Я

Для I'=I+(0,...,0,1,0,...,0)
потенциально может пересекать границы нескольких решений. ↩
  • В качестве альтернативы, вы могли бы интерпретировать это как утверждение о том, что самая большая область классификации по объему в Rd
это “телевизионная статика”.

См.также[править]

Тессеракт

Геометрия

Пруф[править]

gabrieldwu.github.io/adversarial-perturbations