8.2.3 高斯数据增强
    高斯数据增强(gaussian data augmentation)最早由zantedeschi等人在论文《efficient defenses against adversarial attacks》中提出。高斯数据增强的原理非常简单,虽然对抗训练落地非常方便,但是问题也显而易见,就是难以穷尽所有的对抗样本,始终还是处于被动挨打的地位。那么是否有种方法可以尽量多地穷尽对抗样本呢?高斯数据增强算法认为,绝大多数的对抗样本相当于在原始图像上叠加了噪声,理想情况下可以用高斯噪声模拟这种噪声。高斯数据增强的流程如图8-22所示,在模型的训练环节中,在原始数据的基础上叠加高斯噪声,然后进行监督学习,这样训练出来的模型就是加固后的模型。
    图8-22 高斯数据增强的基础过程
    advbox上实现了高斯数据增强,并提供了演示示例。
    https://github.com/baidu/advbox/tree/master/tutorials
    首先需要生成攻击用的模型,advbox的测试模型是一个识别mnist的cnn模型,模型保存在mnist目录下。
    python mnist_model.py
    接着运行gaussianaugmentation加固的模型,模型保存在mnist-gad目录下。
    python mnist_model_gaussian_augmentation_defence.py
    最后运行攻击代码,攻击gaussianaugmentation加固后的cnn模型。
    python mnist_tutorial_defences_gaussian_augmentation.py
    运行结果如下,首先攻击没有加固的cnn模型,攻击成功率为54.6%。
    [test_dataset]: fooling_count=282, total_count=500, fooling_rate=0.564000
    fgsm attack done without any defence
    攻击加固后的cnn模型,攻击成功率下降至36.2%。
    [test_dataset]: fooling_count=181, total_count=500, fooling_rate=0.362000
    fgsm attack done with gaussianaugmentationdefence

章节目录

智能系统与技术丛书·AI安全之对抗样本入门所有内容均来自互联网,一曲书屋只为原作者兜哥的小说进行宣传。欢迎各位书友支持兜哥并收藏智能系统与技术丛书·AI安全之对抗样本入门最新章节