cleverhans的FGSM方法mnist数据集上的实验结果
直接pip install了cleverhans库,cleverhans_tutorial文件夹的mnist_tutorial运行一下,能看到用FGSM方法经过迭代训练后的生成对抗样本的成功率
1. 第一部分
FGSM方法在MNIST数据集上生成对抗样本的成功率(示例代码中没有指定y_target这个参数,因此是无目标攻击)
[INFO 2020-08-12 16:44:29,809 cleverhans] Epoch 0 took 126.84196901321411 seconds
I0812 16:44:29.809289 11176 train.py:257] Epoch 0 took 126.84196901321411 seconds
Test accuracy on legitimate examples: 0.9887
[INFO 2020-08-12 16:46:32,449 cleverhans] Epoch 1 took 120.62841939926147 seconds
I0812 16:46:32.449890 11176 train.py:257] Epoch 1 took 120.62841939926147 seconds
Test accuracy on legitimate examples: 0.9917
[INFO 2020-08-12 16:48:52,168 cleverhans] Epoch 2 took 137.7182309627533 seconds
I0812 16:48:52.168270 11176 train.py:257] Epoch 2 took 137.7182309627533 seconds
Test accuracy on legitimate examples: 0.9928
[INFO 2020-08-12 16:51:00,953 cleverhans] Epoch 3 took 126.68205189704895 seconds
I0812 16:51:00.953046 11176 train.py:257] Epoch 3 took 126.68205189704895 seconds
Test accuracy on legitimate examples: 0.9927
[INFO 2020-08-12 16:53:32,592 cleverhans] Epoch 4 took 149.46061205863953 seconds
I0812 16:53:32.592440 11176 train.py:257] Epoch 4 took 149.46061205863953 seconds
Test accuracy on legitimate examples: 0.9930
[INFO 2020-08-12 16:56:06,429 cleverhans] Epoch 5 took 151.6714391708374 seconds
I0812 16:56:06.429158 11176 train.py:257] Epoch 5 took 151.6714391708374 seconds
Test accuracy on legitimate examples: 0.9934
2. 第二部分
重新训练一个模型,让模型对FGSM具有鲁棒性,模型对无FGSM和有FGSM攻击的准确率为
在这里插入代[INFO 2020-08-12 17:01:52,828 cleverhans] Epoch 0 took 321.20804834365845 seconds
I0812 17:01:52.828213 11176 train.py:257] Epoch 0 took 321.20804834365845 seconds
Test accuracy on legitimate examples: 0.9816
Test accuracy on adversarial examples: 0.8359
[INFO 2020-08-12 17:07:37,189 cleverhans] Epoch 1 took 319.9542167186737 seconds
I0812 17:07:37.189061 11176 train.py:257] Epoch 1 took 319.9542167186737 seconds
Test accuracy on legitimate examples: 0.9880
Test accuracy on adversarial examples: 0.8875
[INFO 2020-08-12 17:13:14,623 cleverhans] Epoch 2 took 313.29364252090454 seconds
I0812 17:13:14.623071 11176 train.py:257] Epoch 2 took 313.29364252090454 seconds
Test accuracy on legitimate examples: 0.9902
Test accuracy on adversarial examples: 0.9142
[INFO 2020-08-12 17:18:51,106 cleverhans] Epoch 3 took 312.7204010486603 seconds
I0812 17:18:51.106968 11176 train.py:257] Epoch 3 took 312.7204010486603 seconds
Test accuracy on legitimate examples: 0.9905
Test accuracy on adversarial examples: 0.9285
[INFO 2020-08-12 17:24:25,663 cleverhans] Epoch 4 took 310.66428446769714 seconds
I0812 17:24:25.663649 11176 train.py:257] Epoch 4 took 310.66428446769714 seconds
Test accuracy on legitimate examples: 0.9920
Test accuracy on adversarial examples: 0.9364
[INFO 2020-08-12 17:30:23,533 cleverhans] Epoch 5 took 334.1880829334259 seconds
I0812 17:30:23.533959 11176 train.py:257] Epoch 5 took 334.1880829334259 seconds
Test accuracy on legitimate examples: 0.9911
Test accuracy on adversarial examples: 0.9351码片