В статье рассматривается подходы к детектированию состязательных атак. Используются такие классические атаки как FSGM, Deep Fool, C&W и PGD, нейронная сеть ResNet-18, датасеты MNIST и CIFAR-10.
Ключевые слова: машинное обучение, глубокое обучение, состязательные атаки, защита от состязательных атак.
В современном мире модели машинного обучения используются повсеместно, но, к сожалению, на многие из них могут быть произведены атаки. Состязательными атаками называются методы, направленные на введение в заблуждение моделей машинного обучения. Для защиты от подобных атак необходимо использовать специальные модификации моделей машинного обучения. Именно такие модификации будут рассмотрены в данной статье.
Достаточно большое число статей, связанных с защитой от состязательных атак, относятся к типу детекции атакованных примеров [1] [2] [3] [4] [5] [6]. Методы этого типа имеют широкое практическое применение, так как просты в реализации.
Алгоритмы защиты, предложенные в статье, также относятся к типу детекции атак. Хочется отметить, что представленные ниже методы могут быть перенесены на большинство обучаемых с помощью градиентного спуска моделей с дважды дифференцируемой функцией ошибки.
Рассмотрим первый из методов. Для иллюстрации его работы используем нейронную сеть ResNet-18 [7], атаки Deep Fool [8], FSGM [9] и набор данных CIFAR-10 [10].
Выберем случайным образом небольшое количество изображений из тестового набора набора данных, обозначим их как , обозначим также через i-ое изображение. Обозначим через изображения, атакованные с помощью Deep Fool, и через — изображения, атакованные с помощью FSGM. Пусть также функция добавляет на изображение гауссовский шум с параметрами μ, σ.
Рассмотрим логиты модели для изображений , , , , , (рис. 1).
Рис. 1: Логиты модели для каждого из полученных изображений. Слева направо: для обычных изображений, для зашумленных, для атакованных с помощью Deep Fool, для атакованных с помощью Deep Fool и после этого зашумленных, для атакованных с помощью FSGM, для атакованных с помощью FSGM и после этого зашумленных. По оси y отложены различные объекты, по оси x логиты их классов
Интересным здесь является то, что предсказания моделей для атакованных и атакованных, а затем зашумленных изображений значимо различаются (рис. 2, рис. 3).
Рис. 2: Разности логитов для обычных изображений и изображений с шумом. По оси y отложены различные объекты, по оси x разности логитов их классов
Рис. 3: Распределение разностей логитов
Основываясь на этих эмпирических наблюдениях, можно построить простой детектор атакованных изображений. Например, можно просто передавать разности логитов(выходной сигнал нейронной сети до применения softmax) основной модели для зашумленного и обычного изображений в логистическую регрессию. Также до передачи в модель, можно попробовать их отсортировать. Последний подход дает ROC AUC равный 0.998 для атак типа FSGM и Deep Fool. Этот метод, однако, плохо работает с таргетированными атаками. Попробуем улучшить полученные результаты.
Рассмотрим второй из методов. Для иллюстрации его работы также используем нейронную сеть ResNet-18 [7], атаки Deep Fool [8], FSGM [9] и набор данных CIFAR-10 [10].
Известно, что некоторые аугментации данных при обучении позволяют получать более стойкие к атакам модели машинного обучения,например MaxUp [11], MixUp [12], CutMix+MaxUp [11]. Более того, в [11] доказано, что обучение с использованием MaxUp привносит дополнительную гладкость в ландшафт функции потерь, величина которой для обучающих примеров напрямую зависит от параметров аугментации. Иными словами, для небольших заранее заданных возмущений гарантировано отсутствие резких скачков функции потерь в некотором ε-шаре от обучающего примера x.
Рассмотрим отклик в ε-шаре от атакованного примера , чтобы понять как мы можем использовать аугментации для детекции атак. До передачи в модель применим N(x, μ, σ) к изображениям, построим гистограммы (рис. 4).
Рис. 4: Распределения откликов параметров
Как видно из распределений на рис. 4, дисперсия отклика параметров для атакованных примеров значительно больше, чем для обычного изображения. Очевидно, что за этим стоит невысокая стабильность функции потерь вокруг атакованных изображений. Это также может быть связано с тем, что в большинстве атак требуется найти минимальное возмущение от оригинального примера и, соответственно, минимальные же возмущения могут перенести объект в область пространства класса, отличного от атакованного.
Так как гладкость функции потерь гарантирована в ε-шаре, вблизи обучающих примеров небольшие возмущения параметров практически не вызывают изменений отклика параметров. Воспользуемся этим.
Рассмотрим распределения разностей откликов для обычного и зашумленного изображений при обычной модели (рис. 5).
Рис. 5: Разность откликов для обычного и зашумленного изображений при обычной модели (атака Deep Fool)
Теперь рассмотрим распределения разностей откликов для обычного и зашумленного изображений при MaxUp модели (рис. 6).
Рис. 6: Разность откликов для обычного и зашумленного изображений при MaxUp модели (атака Deep Fool)
Как видно на рис. 6 и рис.7, распределения имеют значительные различия для атакованных и не атакованных объектов, в особенности для MaxUp модели. За этим стоит очевидный факт: так как модель научилась игнорировать малые возмущения для объектов выборки, распределение откликов практически не изменяется. С другой стороны, если атакованный пример, до атаки распознавался как класс i, в ε-шаре от него не существует негладких областей перехода из одного класса в другой. Это значит, что любое возмущение любого объекта в ε-шаре от данного примера будет либо распознано как класс i, либо иметь бо́льшую дисперсию отклика чем объекты класса i.
Таким образом метод поиска атакованных объектов может быть сведен к следующему:
− Дообучение модели с использованием MaxUp.
− Создание набора данных, состоящего из разностей откликов для обычных и зашумленных объектов.
− Подсчет разности откликов для нового примера, сравнение его дисперсии и среднего с дисперсией и средним ранее полученного набора данных.
Для проведения экспериментов были выбраны открытые наборы данных MNIST [13] и CIFAR-10. Тестирование производилось на ResNet-18. Метрика, по которой сравнивались детекторы атак — ROC AUC. Атаки, исследованные во время эксперимента:
− Deep Fool.
− FSGM.
− C&W [14].
− PGD (для -нормы) [15].
Результаты тестирования приведены в сводных таблицах ниже.
Таблица 1
Результаты тестирования для первого подхода.
MNIST |
CIFAR-10 |
|
Deep Fool |
1.0 |
0.998 |
FSGM |
0.99 |
0.998 |
C&W |
0.899 |
0.987 |
PGD |
0.73 |
0.89 |
Таблица 2
Результаты тестирования для второго подхода.
MNIST |
CIFAR-10 |
|
Deep Fool |
1.0 |
0.998 |
FSGM |
1.0 |
0.9936 |
C&W |
1.0 |
0.989 |
PGD |
1.0 |
0.997 |
Стоит также отметить, что при столь высокой точности нахождения атак, минусами решения являются:
− дополнительные затраты на дообучение с использованием MaxUp;
− необходимость сделать предсказания для двух изображений: обычного и зашумленного;
− точность предсказаний основной модели может незначительно уменьшиться (в проведенных экспериментах падение точности составило 0.007).
Литература:
- Xin Li and Fuxin Li. Adversarial examples detection in deep networks with convolutional filter statistics. In Proceedings of the IEEE International Conference on Computer Vision, pages 5764–5772, 2017.
- Arjun Nitin Bhagoji, Daniel Cullina, Chawin Sitawarin, and Prateek Mittal. Enhancing robustness of machine learning systems via data transformations. In 2018 52nd Annual Conference on Information Sciences and Systems (CISS), pages 1–5. IEEE, 2018.
- Dan Hendrycks and Kevin Gimpel. Early methods for detecting adversarial images. In International Conference on Learning Representations, 2017.
- Kathrin Grosse, Praveen Manoharan, Nicolas Papernot, Michael Backes, and Patrick McDaniel. On the (statistical) detection of adversarial examples. arXiv preprint arXiv:1702.06280, 2017.
- Zhitao Gong, Wenlu Wang, and Wei-Shinn Ku. Adversarial and clean data are not twins. arXiv preprint arXiv:1704.04960, 2017.
- Jan Hendrik Metzen, Tim Genewein, Volker Fischer, and Bastian Bischoff. On detecting adversarial perturbations. In International Conference on Learning Representations, 2017.
- He, Kaiming, et al. Deep residual learning for image recognition. In Proceedings of the IEEE conference on computer vision and pattern recognition. 2016.
- Moosavi-Dezfooli, Seyed-Mohsen, Alhussein Fawzi, and Pascal Frossard. Deepfool: a simple and accurate method to fool deep neural networks. In Proceedings of the IEEE conference on computer vision and pattern recognition, 2016.
- Ian J Goodfellow, Jonathon Shlens, and Christian Szegedy. Explaining and harnessing adversarial examples. International Conference on Learning Representations, 2015
- Krizhevsky, Alex, and Geoffrey Hinton. Learning multiple layers of features from tiny images, 2009.
- Gong, Chengyue, et al. MaxUp: A Simple Way to Improve Generalization of Neural Network Training. arXiv preprint arXiv:2002.09024, 2020.
- Pang, Tianyu, Kun Xu, and Jun Zhu. «Mixup inference: Better exploiting mixup to defend adversarial attacks». arXiv preprint arXiv:1909.11515 , 2019.
- Y. LeCun, L. Bottou, Y. Bengio and P. Haffner: Gradient-Based Learning Applied to Document Recognition, Proceedings of the IEEE, 86(11):2278–2324, 1998
- Carlini, Nicholas, and David Wagner. Towards evaluating the robustness of neural networks. 2017 IEEE symposium on security and privacy (sp). IEEE, 2017.
- Madry, Aleksander, et al. Towards deep learning models resistant to adversarial attacks. arXiv preprint arXiv:1706.06083 , 2017.