Какая атака на умных серфах - это атака серого ящика, а какая атака на белый / черный ящик в библиотеке умных людей?
Я использую https://github.com/tensorflow/cleverhans для создания изображений соперников, но алгоритм атак не приводится.
Все коды алгоритмов атаки перечислены здесь: https://github.com/tensorflow/cleverhans/tree/master/cleverhans/attacks
Я не знаю, какой из этих алгоритмов атаки является атакой серого ящика, а какой - алгоритмом атаки белого или черного?
Потому что мне нужна категория алгоритма, чтобы заново изучить алгоритм защиты от атак. Страница GitHub не предоставляет никакой информации об этом. Как я должен знать?
1 ответ
Начнем со ссылки на статью " На пути к оценке надежности нейронных сетей " Карлини из последнего абзаца страницы 2: противник имеет полный доступ к нейронной сети, включая архитектуру и все параметры, и может использовать ее в виде "белого ящика". Это консервативное и реалистичное предположение: предыдущая работа показала, что можно обучить замещающую модель при наличии черного ящика для доступа к целевой модели, и, атакуя замещающую модель, мы можем затем перенести эти атаки в целевую модель.
Делая следующие 2 определения, как следует, верно:
Белый ящик. Злоумышленники знают все об алгоритме ML, модели ML (т.е. параметрах и гиперпараметрах), архитектуре и т. Д. На приведенном ниже рисунке показан пример работы атак белого ящика:
Черный ящик: злоумышленники почти ничего не знают о системе ML (возможно, знают количество функций, алгоритм ML). На рисунке ниже показаны шаги в качестве примера:
Раздел 3.4. ДЕМОНСТРАЦИЯ ЧЕРНОГО ЯЩИКА АДВЕРСАРИАЛЬНОЙ АТАКИ В ФИЗИЧЕСКОМ МИРЕ из статьи ОБОБЩЕННЫЕ ПРИМЕРЫ В ФИЗИЧЕСКОМ МИРЕ Куракина, 2017, гласит следующее: В параграфе 1 на странице 9 описывается значение белого ящика: в экспериментах, описанных выше, изучаются физические примеры состязательности в предположении, что противник имеет полный доступ к модели (т. е. противник знает архитектуру, вес модели и т. д.).
Далее следует пояснение значения черного ящика. Однако сценарий черного ящика, в котором злоумышленник не имеет доступа к модели, является более реалистичной моделью многих угроз безопасности.
Вывод: чтобы определить / пометить / классифицировать алгоритмы как белый / черный ящик, нужно просто изменить настройки для модели.
Примечание: я не классифицирую каждый алгоритм, потому что некоторые алгоритмы могут поддерживать только настройки белого ящика или только настройки черного ящика в библиотеке cleverhans, но это хорошее начало для вас (если вы проводите исследования, вам нужно проверить каждую статью перечислены в документации, чтобы понять GAN, чтобы вы могли генерировать на своих собственных состязательных примерах.
Используемые ресурсы и интересные статьи:
- BasicIterativeMethod: BasicIterativeMethod
- CarliniWagnerL2: CarliniWagnerL2
- FastGradientMethod: https://arxiv.org/pdf/1412.6572.pdf https://arxiv.org/pdf/1611.01236.pdf https://arxiv.org/pdf/1611.01236.pdf
- SalacityMapMethod: SalacityMapMethod
- VirtualAdversarialMethod: VirtualAdversarialMethod
- Метод быстрого градиентного знака Fgsm: Метод быстрого градиентного знака Fgsm
- Подход карты Ясмы на основе Якобиана: JSMA в условиях белого ящика
- Vatm виртуальное состязательное обучение: Vatm виртуальное состязательное обучение
- Состязательное машинное обучение - введение Слайды от: Бинхуэй Ван
- mnist_blackbox
- mnist_tutorial_cw