0x01 Текущие исследования надежности глубокого обучения

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

Как показано на рисунке 1, мы обнаружили, что даже вводные данные со стороны противника, сгенерированные в режиме черного ящика, могут эффективно обманывать различные API-интерфейсы платформы Google Cloud Vision на основе глубокого обучения, включая классификацию изображений, обнаружение объектов, цензуру изображений и оптическое распознавание символов. (OCR) и т. д. Модель «черного ящика» на основе облака можно обойти всего несколькими запросами. И этот результат исследования был представлен на Blackhat Asia 2019. Появление враждебных примеров и их почти 100% обходность создают серьезную проблему для использования моделей глубокого обучения в сценариях, критичных к безопасности. Способность модели глубокого обучения противостоять возмущению со стороны противника и давать правильные прогнозы часто называют надежностью.

Мы также обнаружили, что функциональная безопасность многих А.И. систем, таких как самоуправляемый автомобиль, по-прежнему в значительной степени зависит от надежности модели глубокого обучения, даже без атак со стороны противника. Как показано на рисунке 2, объект, идентифицированный моделью обнаружения целей YOLO3 в нормальных условиях, не может быть обнаружен при несколько иных условиях освещения, что создает потенциальную угрозу безопасности. В физическом мире, в дополнение к враждебным примерам, непредсказуемые изменения окружающей среды, такие как освещение, также стали реальными угрозами для моделей глубокого обучения, как некоторые из исследований, которые мы представили на Blackhat Europe 2018. Для получения более подробной информации о надежности глубокого обучения в безопасности- критических сценариях и использовании в реальных сценариях вы можете найти в нашей статье (на китайском языке).

Разнообразие угроз безопасности моделей ИИ требует оценки надежности моделей ИИ на производственной линии. Робастность становится таким же важным модельным критерием, как и точность. Тем не менее, пока нет стандартизированного эталона надежности. Большинство существующих библиотек состязательного машинного обучения, таких как Cleverhans [2] и IBM Art [3], сосредоточены на методе создания состязательных примеров и не могут оценить надежность или оценить верхние/нижние границы устойчивости. Текущие тесты надежности в основном основаны на теоретических измерениях возмущений парадигмы L_p. Тест Robust Vision Benchmark от Университета Тюбингена в Германии предоставляет общедоступную платформу автоматизации, которая объединяет известные алгоритмы состязательных атак и оценивает большинство предварительно обученных моделей глубокого обучения с открытым исходным кодом, а также модели, обученные пользователями и загруженные.

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

  • Является ли модель А более надежной, чем модель Б?
  • Я переобучил свою модель на состязательных примерах, действительно ли улучшится надежность моей модели? Насколько он улучшился?
  • Можно ли гарантировать надежность моей модели? То есть, когда размер возмущений меньше определенного значения, моя модель может обеспечить стабильность результатов прогноза.

0x02: Тестовые характеристики устойчивости персептрона

Чтобы помочь разработчикам моделей ответить на эти вопросы, Baidu Security X-Labs выпустила инструмент для оценки надежности моделей с открытым исходным кодом: Perceptron Robustness Benchmark (https://github.com/advboxes/perceptron-benchmark). Он не только обеспечивает стандартизированное измерение до 15 показателей безопасности и безопасности модели, но также обеспечивает проверяемую нижнюю границу надежности для некоторых моделей. По сравнению с другими состязательными библиотеками, Perceptron Benchmark имеет следующие особенности:

  • Многоплатформенная поддержка: коды можно использовать в бенчмаркинге в различных популярных средах глубокого обучения без модификации. Поддерживаемые фреймворки включают: Tensorflow, Keras, PyTorch, PaddlePaddle.
  • Поддержка многозадачности: в настоящее время все библиотеки состязательного машинного обучения поддерживают только базовые задачи классификации изображений, а Perceptron поддерживает различные визуальные задачи, включая модели обнаружения целей для автономного вождения и другие важные визуальные модели.
  • Поддержка модели облачного черного ящика: Perceptron также поддерживает измерение надежности API-интерфейсов облачной модели черного ящика в сценариях MLaaS. Мы предоставляем интерфейс тестирования для нескольких коммерческих платформ ИИ, включая Google Cloud Vision, Baidu AIP и Amazon Rekognition.
  • Стандартизированные метрики. Показатели надежности, полученные с помощью теста Perceptron Robustness Benchmark, могут использоваться для многозадачных сравнений нескольких моделей и могут использоваться в качестве оценки верхней границы надежности модели.
  • Поддающаяся проверке надежность: Perceptron Robustness Benchmark использует формальный метод проверки с анализом символьных интервалов для расчета надежной нижней границы надежности, т. Е. Когда возмущение меньше нижней границы, модель может гарантировать согласованные результаты.

0x03: Использовать тест устойчивости персептрона

Пример 1: Оценка устойчивости возмущений на уровне пикселей

Мы предоставляем как командную строку, так и API-интерфейсы для Perceptron Robustness Benchmark. Например, выполнение следующей командной строки измеряет устойчивость модели Resnet-50 в среде Keras к попиксельным возмущениям C&W[4].

Результаты включают не только состязательные примеры, найденные с помощью метода C&W, но и верхние границы устойчивости к попиксельным возмущениям (2.10e^-07).

Результат:

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

Пример 2: Проверка устойчивости изменений освещения

Вы можете измерить надежность Resnet-18 в среде Pytorch для разных уровней освещения, запустив следующую командную строку. Добавляя параметр «-verify» в командную строку, Perceptron дает проверяемую границу надежности.

Как показано на рисунке, используя пиксель, умноженный на коэффициент яркости для имитации изменения освещения, Perceptron дает проверяемый диапазон коэффициента (2,064 ~ 0,085), и прогнозы модели стабильны, когда яркость остается в этом диапазоне.

Публикуя тест AdvBox Perceptron Robustness Benchmark, мы надеемся стандартизировать измерение надежности моделей глубокого обучения и продвигать его в качестве ключевого показателя оценки модели, столь же важного, как и точность.

0x04: Заключение

Все больше и больше исследований доказывают, что экосистема ИИ сталкивается с серьезной проблемой состязательных атак, которые приводят к ложному предсказанию модели или классификации среди все более популярных визуальных, звуковых моделей и моделей естественного языка. Мы обобщаем последние исследования надежности моделей глубокого обучения, охватывая серьезные риски, с которыми сталкиваются различные репрезентативные сценарии при различных атаках со стороны противника / нормальных возмущениях окружающей среды, существующий метод измерения надежности и возможные улучшения. Кроме того, мы также представляем результаты исследований Baidu Security X-Lab, занимающих передовые позиции в исследованиях безопасности ИИ, включая атаки и обнаружение модели ИИ в физическом мире и черном ящике облака, измерение надежности модели и ее методы.

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

[1] Улучшение межзадачной переносимости состязательных примеров с уменьшением дисперсии. https://arxiv.org/abs/1905.03333

[2] Клеверханс: http://www.cleverhans.io/

[3] IBM Art: https://github.com/IBM/adversarial-robustness-toolbox

[4] На пути к оценке надежности нейронных сетей. https://arxiv.org/abs/1608.04644

[5] Эффективный формальный анализ безопасности нейронных сетей. https://arxiv.org/abs/1809.08098