DeepFool(迷惑深度学习分类模型)测试

来源:互联网 发布:excel怎么高级筛选数据 编辑:程序博客网 时间:2024/06/05 19:10

      AI+网络安全是当前网络攻击与防御方向比较热门和前沿的领域。同时网络安全中的漏洞挖掘、入侵检测、异常流量等传统任务也已经出现了大量基于深度学习的实现方法。然而当以深度学习为主流的人工智能应用越来越广泛之后,陆续又出现了对于人工智能应用的攻击,主要分为两种:一是白盒测试,即深度学习的模型架构和参数都已经的情况下,这种场景的攻击一般可以进行参数的修改来达到攻击的效果;二是黑盒测试,即上述情况未知的情况下进行攻击,这时候采用的攻击手段主要是对抗样本,对抗样本(adversarial examples)这一概念在Szegedy et al. (2014b)中被提出:对输入样本故意添加一些人无法察觉的细微的干扰,导致模型以高置信度给出一个错误的输出。对抗样本现在已经广泛应用于人脸识别、声纹识别等相关应用场景。

(一)论文原理      

     本文的DeepFool模型(https://arxiv.org/pdf/1511.04599.pdf)是对抗样本方法之一,它主要用以生成针对模型的minimal perturbation,且因为生成的是(近似)最小的干扰,所以可以用来估量模型的鲁棒性。

     论文中,其原理首先从二分类推导,再进一步推广到多分类中。

               

                          二分类多分类

即在二分类问题中,超平面是实现分类的基础 ,那么要改变某个样本X0的分类,那么最小的扰动就是将X0挪到超平面上,这个距离的代价最小。多分类的问题也是类似。


  (二)实验测试

https://github.com/LTS4/DeepFool/blob/master/Python/test_deepfool.py从这个Pytorch代码进行测试,其代码写得非常简洁,其核心算法如下:

while k_i == label and loop_i < max_iter:        pert = np.inf        fs[0, I[0]].backward(retain_graph=True)        grad_orig = x.grad.data.cpu().numpy().copy()        for k in range(1, num_classes):            zero_gradients(x)            fs[0, I[k]].backward(retain_graph=True)            cur_grad = x.grad.data.cpu().numpy().copy()            # set new w_k and new f_k            w_k = cur_grad - grad_orig            f_k = (fs[0, I[k]] - fs[0, I[0]]).data.cpu().numpy()            pert_k = abs(f_k)/np.linalg.norm(w_k.flatten())            # determine which w_k to use            if pert_k < pert:                pert = pert_k                w = w_k        # compute r_i and r_tot        # Added 1e-4 for numerical stability        r_i =  (pert+1e-4) * w / np.linalg.norm(w)        r_tot = np.float32(r_tot + r_i)        pert_image = image + (1+overshoot)*torch.from_numpy(r_tot)        x = Variable(pert_image, requires_grad=True)        fs = net.forward(x)        k_i = np.argmax(fs.data.cpu().numpy().flatten())        loop_i += 1

代码测试:

(1) 输入熊猫的照片,得到的结果indri(大狐猴)


(2)大灰狼,扰动之后为:red wolf (红狼)



(3)野兔,扰动之后为:Angora(安哥拉兔)



从上面可见,这种深度学习模型的应用设计 需要考虑到这种攻击的情况 。

阅读全文
'); })();
0 0
原创粉丝点击
热门IT博客
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 学生陈述申请贫困理由 陈述句怎么写 20个陈述句大全 陈述句改双重否定句 精益管理的陈述 陈述句例子100句 改为陈述句怎么改 奖学金申请个人陈述200字 奖学金申请个人陈述 精益六西格玛的陈述 陈迹 陈迹清欢 陈迹资料 吴郡陈遗 老窖陈酒52度价格查询 泸州老窖陈酒38度价格查询 伊利老陈酒52度价格 华陈酱酒 老陈酒 泸州老窖陈酒52度 泸州老窖陈酒珍品价格 泸州老窖陈酒 泸州老窖陈酒52度价格 泸州老窖陈酒价格表 桂花陈酒价格 老窖陈酒52度价格图片 西凤陈酒窖藏52度价格 西风陈酒52度价格 天号陈酒价格52度价格 伊力老陈酒38度价格 西凤陈酒52度 泰山老陈酒 西凤陈酒52度一瓶价格 伊力老陈酒 陈酒是什么意思 陈酒价格 陈酒 52度泸州老窖陈酒 云门陈酿 泸州陈酿 陈酿原浆酒