Йорн Якобсен, Йенс Берманн, Рич Земель и Маттиас Бетге - 25.3.2019

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

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

  • Глубокие классификаторы инвариантны не только к не относящимся к классу вариациям, но и почти ко всему, что люди считают релевантным для класса; мы называем это свойство чрезмерной инвариантностью (например, см. рисунок выше)
  • Чрезмерная инвариантность дает альтернативное объяснение феномена состязательного примера.
  • Мы идентифицируем широко используемую цель кросс-энтропии как главную причину поразительной инвариантности, которую мы наблюдали.
  • Возможно, есть способ контролировать и преодолевать эту проблему…

Содержание этого поста основано на нашей недавней статье [1], которая будет представлена ​​на ICLR 2019.

Изучение инвариантов изученных классификаторов

Чтобы выяснить, на что классификатор не смотрит, на что он инвариантен, требуется доступ ко всему, что классификатор отбрасывает на всех уровнях. В целом это сложно сделать, и это было предметом обширных исследований (например, [2]). К счастью, недавние достижения в области обратимых глубоких сетей привели к созданию сетей, которые не создают никакой инвариантности вплоть до последнего слоя [3,4]. Поскольку все, кроме последнего слоя, представляет собой сопоставление 1 к 1 без потерь, проецирование от обратимого представления к оценкам классов - единственное место, где создается инвариантность. Остается упростить этот последний слой, чтобы мы могли манипулировать и исследовать прообраз определенных оценок класса.

Для этого мы удаляем последний классификатор из инвертируемой сети и разбиваем его выходные данные на два подпространства: Zs и Zn (см. Рисунок).

  • Семантическое подпространство Zs: логиты, также часто называемые оценками класса.
  • Неприятное подпространство Zn: остальные измерения, которые классификатор не видит.

Весь Z имеет ту же размерность, что и входные данные, потому что у нас есть обратимая сеть, Zs имеет столько же измерений, сколько у нас классов (1000 для ImageNet, 10 для MNIST). а Zn имеет размеры dim (Zn) = dim (Z) -dim (Zs).

Это разделение позволяет нам вычислить логит-вектор Zs на основе одного изображения и присоединить к нему произвольные векторы Zn из других изображений. Затем мы можем вычислить прообраз этих активаций и исследовать результирующие входные данные, которые соответствовали бы им (см. Рисунок выше для иллюстрации). Изображение, полученное в результате этой процедуры (знак вопроса выше), вызовет одинаковые вероятности для всех классов, независимо от того, какой Zn мы конкатенировали с заданными Z. Таким образом, это дает нам инструмент для исследования пространства решений изученных классификаторов.

Мы наткнулись на аналитическую состязательную атаку.

Рисунок выше показывает, что, несмотря на наши надежды узнать о пространстве решений классификатора, Zn полностью доминирует на изображении. Классификатор, представленный информацией, закодированной в логитах, кажется почти полностью инвариантным к любому изменению ввода. Мы наткнулись на аналитическую состязательную атаку. Мы можем менять местами содержимое классов произвольно, не меняя предсказанных вероятностей более 1000 классов ImageNet.

Как это связано с примерами состязательности?

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

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

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

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

Почему глубинные классификаторы так инвариантны?

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

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

Решение этой проблемы требует изменения целевой функции, которую мы используем для обучения наших классификаторов. В нашей статье [1] мы представляем альтернативу кросс-энтропии, называемую кросс-энтропией независимости. Эта целевая функция дает явный контроль над инвариантностью в изученном представлении. Мы теоретически и эмпирически показываем, что эта целевая функция уменьшает, а в некоторых случаях решает проблемы инвариантности, описанные выше. Классификатор, обученный независимой кросс-энтропии, больше не может быть атакован нашей аналитической атакой, основанной на инвариантности (см. Рисунок выше).

Чтобы показать еще одно свидетельство того, что глубокие классификаторы слишком инвариантны, мы создали набор данных под названием shiftMNIST. Во время обучения мы вводим новую функцию прогнозирования цифр MNIST. В одном случае это двоичный код (выделенный красными кружками), предсказывающий цифровую метку (a), а в другом случае фоновая текстура идеально предсказывает цифровую метку (b). . Во время тестирования мы удаляем или рандомизируем недавно представленные функции. В обоих случаях современные классификаторы обращаются к почти случайной производительности во время тестирования. Они становятся инвариантными по отношению к самой цифре и учатся смотреть только на «легкую» особенность. Здесь снова наша недавно введенная независимость кросс-энтропия позволяет контролировать инвариантность и снижает ошибку на 30–40%.

Если вам это показалось интересным и вам интересно узнать больше, прочтите нашу статью!

Основная ссылка:

Йорн-Хенрик Якобсен, Йенс Берманн, Рихард Земель, Маттиас Бетге,« Чрезмерная инвариантность вызывает состязательную уязвимость ; ICLR, 2019. »

[1] Йорн-Хенрик Якобсен, Йенс Берманн, Ричард Земель, Маттиас Бетге, «Чрезмерная инвариантность вызывает состязательную уязвимость»; ICLR, 2019.
[2] Махендран и Ведальди, «Визуализация глубоких сверточных нейронных сетей с использованием естественных предварительных изображений»; IJCV, 2016.
[3] Йорн-Хенрик Якобсен, Арнольд В. М. Смеулдерс, Эдуард Ояллон, «i-RevNet: глубокие инвертируемые сети»; ICLR, 2018.
[4] Йенс Берманн *, Уилл Гратвол *, Рики Т.К. Чен, Давид Дювено, Йорн-Хенрик Якобсен *, «Обратимые остаточные сети»; На стадии подачи, 2019 г.