机器学习李宏毅学习笔记22


前言

来自人类的恶意攻击(上)


一、攻击是什么

对于影像辨别,在图片上加入一个小的杂讯(图片向量每个维度上加上一个小的杂讯),加入杂讯的图片叫做attacked image,原来的图片叫做benign image。希望attacked image和benign image经过image classifier得到的结果不同。

在这里插入图片描述
攻击可以分为没有目标的攻击和有目标的攻击。Non-targeted只要让network的输出不是原图片的结果就算成功。Targeted要让network输出为一个特定的分类。
在这里插入图片描述
肉眼分辨不出差别的情况下,network认为他是另一个分类。

二、如何攻击

如何找到non-targeted杂讯,将一个张图片输入到network,希望network的输出和真实值差距越大越好,这样就算攻击成功。定义一个loss函数L,L是输出值和真实值得差距的负数,希望L越小越好,这样真实值和输出值间差距就越大。

在这里插入图片描述
如何找到target杂讯,这个loss函数不仅要求输出和真实值差距大,还同时要求和特定分类的差距越小越好。此时L在原来的基础上加上输出值和特定值得差距。
在这里插入图片描述
在这基础上还不够,还希望加入的杂讯越小越好。即x0和x越接近越好。解这个问题的时候还要加入一个限制d(x0,x)≤一个值,这个值基于人类的感知决定,即大于这个值时,人类可以感觉到这个杂讯。
在这里插入图片描述
如何计算x0和x间的距离,假设x和x0是两个向量。
在这里插入图片描述
距离可以是L的norm,也可以是L的infinity。

在这里插入图片描述
考虑用哪个方法计算时,要把人类的感知考虑进来。L-infinity可能是更合适的,应为对于同一张图片的修改,人类对于一个部分的最大修改往往比较敏感,每个部分全修改一点,和一个部分修改很多,人类可能只对后者有感知。

这个问题现在需要找到x使Loss最小,同时x和x0的距离要小于一个阈值。
在这里插入图片描述
先只考虑Loss,这个过程像训练一个模型。Gradient descent初始化的值设为x0比较好,因为要找到的x越接近x0越好,所以从x0找比较好。在这个基础上考虑x和x0的差距,update x后,因为x只能存在在一个范围内,如果update后的x,超出这个范围,就选择在范围内和x最近的一个替代他。
在这里插入图片描述


总结

学习视频地址:https://www.bilibili.com/video/BV13Z4y1P7D7/?p=23&spm_id_from=333.1007.top_right_bar_window_history.content.click&vd_source=3a369b537e1d34ff9ba8f8ab23afedec

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值