Об этой статье

Эта статья представляет собой комментарий к статье «Примеры состязательности, улучшающие распознавание изображений» [1], опубликованной 21 ноября 2019 года. Краткое содержание этой статьи выглядит следующим образом.

Они предлагают AdvProp, который использует состязательные образцы, чтобы значительно повысить точность ImageNet и ImageNet с шумом. Это вид состязательного обучения, в котором используется двухпакетная нормализация. Один из них предназначен для обычных данных, а другой - для состязательных образцов. Основываясь на идее, что нецелесообразно учиться с распределением, которое смешивает два данных, потому что нормальные данные без шума и данные с шумом находятся в разных доменах. Достигните 85,5% с ImageNet Top-1 Acc без использования внешних данных и по последнему слову техники без внешних данных.

Примеры состязательности и обучение состязательности

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

Вот небольшой шум, призванный не распознать изображение у панды.

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

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

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

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

Ключевые выводы

В этой статье они предлагают метод повышения точности за счет использования состязательного обучения под названием AdaProp.

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

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

Метод

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

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

Вспомогательный БН в принципе не ограничивается одним. Вы можете сделать 2 или больше по мере необходимости. Обратите внимание, что во время вывода используется только основной BN.

Сети

Прежде чем показать результаты, я немного расскажу о ResNet и EfficientNet, которые использовались в экспериментах.

ResNet

ResNet [7] - это сеть для распознавания изображений, предложенная в конце 2015 года, и имеющая 152 слоя, которая была самой глубокой нейронной сетью в то время и достигла наивысшей производительности в ImageNet.

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

EfficientNet

Затем я объясню EfficientNet [9]. EfficientNet - это сеть, оптимизированная для автоматического поиска архитектуры нейронной сети (NAS, Neural Architecture Search), предложенного в мае 2019 года и недавно привлекшего внимание.

Сетевая структура с высокой точностью и небольшими параметрами была получена путем одновременного поиска ширины (количества каналов), глубины (количества слоев) и разрешения. При фиксировании параметра масштабирования φ поиск выполняется с изменением ширины, глубины и разрешения. Сети называются EfficientNet-B0, B1… B7 в порядке возрастания параметров (в порядке возрастания φ).

Результаты

О чистых данных

Во-первых, результат обучения ImageNet без шума с помощью EfficientNet. Повышение точности Top-1 до 0,7%, а эффективность EfficientNet-B7 достигла 85,2%. Несмотря на отсутствие иллюстраций, EfficientNet-B8 достиг 85,5% с ImageNet Top-1 Acc без внешних данных (современное состояние). Насколько мне известно, ImageNet SOTA с внешними данными составляет 87,4% [3] по состоянию на 28 ноября 2019 г.

О зашумленных данных

Затем результаты по зашумленным данным. Используются три набора данных на основе ImageNet: ImageNet-A [4], ImageNet-C [5] Stylized-ImageNet [6]. ImageNet-A - это набор данных, который собирает сложные изображения, ImageNet-C - это набор данных, в котором различные шумы добавляются к изображению на нескольких уровнях, а Stylized-ImageNet - это набор данных, который претерпел преобразование стиля.

В ImageNet-C используется метрика оценки, называемая средней ошибкой повреждения (mCE). Проще говоря, это показатель того, насколько лучше по сравнению с AlexNet по сравнению с шумом изображения. И это средний из пяти уровней шума. Меньшее значение mCE означает более сильную модель против шума.

Результаты приведены ниже. Есть улучшения точности в любом наборе данных.

Эффект вспомогательного БН

Наконец, давайте посмотрим на эффект «Вспомогательного BN», ключевой момент этой статьи. В следующей таблице показана взаимосвязь между эффектом разделения BN и размером сети EfficientNet (B0 ‹B1‹… ‹B7). Чем больше сеть, тем меньше польза от разделения. Считается, что это связано с тем, что сеть становится больше и имеет лучшую производительность, так что даже смешанные распределения могут быть хорошо изучены.

В следующей таблице сравнивается AdvProp с исходным Adversarial Training. При использовании оригинального Adversarial Training производительность обобщения ухудшается, но при использовании AdvProp, который разделяет BN, точность улучшается. Видно, что разделение BN имело большой эффект. Кроме того, по мере увеличения размера сети (ResNet-50 ‹…‹ ResNet-200) разница уменьшается, что является примером вышеприведенной гипотезы.

Вывод

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

Еженедельная рассылка по машинному обучению с Revue



Я делаю краткое введение и объяснение статей о машинном обучении в Твиттере.



Ссылка

  1. Чихан Се, Примеры состязательности улучшают распознавание изображений, arXiv: 1911.09665, 2019
  2. Иэн Дж. Гудфеллоу, ОБЪЯСНЕНИЕ И ИССЛЕДОВАНИЕ НЕПРИЯТНЫХ ПРИМЕРОВ, ICLR2015
  3. Циже Се, Тренинг по состязательным образцам с помощью Noisy Student улучшает классификацию ImageNet, arXiv: 1911.04252, 2019
  4. Дэн Хендрикс и др. Естественные враждебные примеры. Препринт arXiv arXiv: 1907.07174, 2019
  5. Дэн Хендрикс и Томас Дж. Диттерих. Тестирование устойчивости нейронной сети к распространенным повреждениям и поверхностным вариациям. arXiv: 1807.01697, 2018
  6. Роберт Гейрхос и др. КНН, обученные Imagenet, склонны к текстуре; увеличение смещения формы повышает точность и надежность. В ICLR, 2018.
  7. Каймин Хе , Глубокое остаточное обучение для распознавания изображений, srXiv1512.03385, 2015
  8. Сергей Иоффе и соавт. Пакетная нормализация: ускорение глубокого обучения сети за счет уменьшения внутреннего ковариатного сдвига, arXiv: 1502.03167,2015
  9. Мингсин Тан и Куок В., EfficientNet: переосмысление масштабирования модели для сверточных нейронных сетей, arXiv: 2019.11946, 2019