Генерация противоборствующих данных из моделей атак умных людей

Мне нужен пример кода для того, как генерировать данные о поездах из атак со стороны умного Ганса.

adv_x = fgsm.generate_np(X_test, **fgsm_params)

Это генерирует состязательные данные x, но как я могу получить y?

adv_pred = model.predict_classes(adv_x)

И это даст "одураченные" результаты, верно?

Я хочу правильно показать сгенерированные x, y, одураченные y (под которыми я подразумеваю результаты предсказаний моделей, которые могут быть ложными из-за атаки). Я использую Mnist, кстати, если это поможет.

1 ответ

Решение

Основываясь на фрагментах кода, которыми вы поделились, я бы сделал два предложения:

  • Как правило, не рекомендуется тренировать модель на тестовых данных (если вы собираетесь использовать эти тестовые данные для оценки ее производительности впоследствии), поэтому я бы заменил X_test от X_train в вашей первой строке.

  • Чтобы получить метку для ваших состязательных примеров, вы можете использовать оригинальные метки данных обучения или прогнозы модели на исходных данных обучения model.predict_classes(X_train) (это предполагает, что состязательный пример не достаточно возмущен, чтобы изменить метку ввода).

Другие вопросы по тегам