Fast Gradient Sign Attatck(FGSM) 出自 Explaining and Harnessing Adversarial Examples.沿梯度正方向修改输入数据,达到迷惑模型的目的。
- 计算网络error相对于输入数据的梯度
forward($data_{old}$ )
grad = backword() - 沿梯度正方向修改输入数据
$data_{new} = data_{old} + eps \times sign(grad)$ - 计算修改后数据的预测结果
forward($data_{new}$ )
./darknet classifier fgsm cfg/mnist.data cfg/mnist.cfg backup/mnist_5.weights -eps 0.1
修改example代码 train.sh/test.sh
./darknet detector train examples/traffic/image.data examples/traffic/yolov3.cfg pretrained/darknet53.conv.74 2>&1 | tee examples/traffic/train.log
./darknet detector recall2 examples/traffic/image.data examples/traffic/yolov3.cfg examples/traffic/yolov3_900.weights examples/traffic/test.txt 2>&1 | tee examples/traffic/yolov3_900.test.log
./darknet detector test2 examples/traffic/image.data examples/traffic/yolov3.cfg examples/traffic/yolov3_800.weights examples/traffic/test.txt -out predict/