0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心
发布

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何用对抗样本修改图片,误导神经网络指鹿为马

DPVg_AI_era 来源:未知 作者:李倩 2018-11-22 09:49 次阅读

这篇文章来自同济大学研究生张子豪的投稿,介绍了人工智能信息安全的交叉前沿研究领域:深度学习攻防对抗。

本文介绍了如何用对抗样本修改图片,误导神经网络指鹿为马;对 NIPS 2017 神经网络对抗攻防赛 3 项冠军清华团队的算法模型进行了解读。

文章部分内容来自 2018 CNCC 中国计算机大会—人工智能与信息安全分会场报告。

GAN 一点都不撸棒,简直不要太好骗:胖达变成猴,山误认为狗

对抗样本不是仅在最后预测阶段产生误导,而是从特征提取过程开始就产生误导

NIPS 2017 神经网络对抗攻防赛中,清华大学的学霸们采用了多种深度学习模型集合攻击的方案,训练出的攻击样本具备良好的普适性和可迁移性。

全文大约3500字。读完可能需要好几首下面这首歌的时间

胖虎和吴亦凡,边界是如此的模糊

王力宏和张学友,看上去竟如此的神似

人脸识别、自动驾驶、刷脸支付、抓捕逃犯、美颜直播…人工智能与实体经济深度结合,彻底改变了我们的生活。神经网络和深度学习貌似强大无比,值得信赖。

但是人工智能是最聪明的,却也是最笨的,其实只要略施小计就能误导最先进的深度学习模型指鹿为马。

大熊猫 = 长臂猿

早在2015年,“生成对抗神经网络 GAN 之父” Ian Goodfellow 在ICLR 会议上展示了攻击神经网络欺骗成功的案例。

在原版大熊猫图片中加入肉眼难以发现的干扰,生成对抗样本。就可以让 Google 训练的神经网络误认为它 99.3% 是长臂猿。

阿尔卑斯山 = 狗

2017 NIPS 对抗样本攻防竞赛案例:阿尔卑斯山图片篡改后被神经网络误判为狗、河豚被误判为螃蟹。

对抗样本不仅仅对图片和神经网络适用,对支持向量机、决策树等算法也同样有效。

那么,具体有哪些方法,可以把人工智能,变成人工智障呢?

人工智障:逃逸攻击,白盒/黑盒,对抗样本

逃逸攻击可分为白盒攻击和黑盒攻击。

白盒攻击是在已经获取机器学习模型内部的所有信息和参数上进行攻击,令损失函数最大,直接计算得到对抗样本。

黑盒攻击则是在神经网络结构为黑箱时,仅通过模型的输入和输出,逆推生成对抗样本。下图左图为白盒攻击(自攻自受),右图为黑盒攻击(用他山之石攻此山之玉)。

对机器学习模型的逃逸攻击,绕过深度学习的判别并生成欺骗结果,攻击者在原图上构造的修改被称为对抗样本。

神经网络对抗样本生成与攻防是一个非常有(zhuang)趣(bi)且有前景的研究方向。

2018年,Ian Goodfellow 再发大招,不仅欺骗了神经网络,还能欺骗人眼。

文中提出了首个可以欺骗人类的对抗样本。下图左图为猫咪原图,经过对抗样本干扰之后生成右图,对于右图,神经网络和人眼都认为是狗。

下图中,绿色框为猫的原图。左上角显示了攻击的目标深度模型数量越多,生成的图像对人类来说越像狗。 左下角显示了针对 10 个模型进行攻击而生成的对抗样本,当 eps = 8 的时候,人类受试者已经把它认成狗了。

除此之外,人工智能还面临模型推断攻击、拒绝服务攻击、传感器攻击等多种信息安全挑战。

人对抗样本有多好骗?

对抗样本会在原图上增加肉眼很难发现的干扰,但依旧能看得出来和原图的区别,下图左图为对抗样本,右图为熊猫原图。

对抗样本不是仅在最后预测阶段产生误导,而是从特征提取过程开始就产生误导. 下图展示了第147号神经元分别在正常深度学习模型和对抗样本中的关注区域。在正常模型中,第147号神经元重点关注小鸟的头部信息。在对抗样本中,第147号神经元则完全被误导了,关注的区域杂乱无章。

同时也说明,对抗样本不是根据语义生成的,它并不智能。而且,正如接下来讲述的,对抗样本对图片预处理过程非常敏感,任何区域截图、放大缩小、更换模型都很容易让对抗样本失效。

其实,如果你把那张经过攻击篡改之后的大熊猫图片稍微放大或缩小,或者直接截一部分图,然后放到其它公开的图像识别模型上运行(比如百度识图),识别结果依旧是大熊猫。

这意味着对抗样本仅对指定的图片和攻击模型生效,对诸如区域截图、放大缩小之类的预处理过程是非常敏感的。

也就是说,如果还想欺骗更多其它的深度学习模型,就要在训练生成对抗样本时尽可能包含更多的已知深度学习模型。

NIPS 冠军是怎么做的

2017 年,生成对抗神经网络(GAN)之父 Ian Goodfellow,牵头组织了 NIPS 的Adversarial Attacks and Defences(神经网络对抗攻防竞赛)。

清华大学博士生董胤蓬、廖方舟、庞天宇及指导老师朱军、胡晓林、李建民、苏航组成的团队在竞赛中的全部三个项目中得到冠军。

清华大学团队正是采用了多种深度学习模型集合攻击的方案,通过对 Image.Net 网站上的三万张图片进行训练,提出七种攻击模型。

集合攻击考虑了 Inception V3、ResNet、Inception ResNet V2 三种已知的深度学习模型,训练出的攻击样本具备良好的普适性和可迁移性。

下图展示了他们使用FGSM模型进行攻击的测试:

横行为攻击模型名称,竖列为防守模型名称,表格中的数字表示对于每1000张攻击图片,防守模型成功防守的图片数目,数字越大,表示竖列模型防守越有效,数字越小,表示横行模型进攻越有效。

红色表示用同一个模型进行攻防(白盒攻击)。可以看出:下面是个有序序列

白盒攻击成功率远远大于黑盒成功率。如何提高黑盒攻击的可迁移性,实现跨模型的黑盒攻击,是一个重要问题。

由 Adv-Incv3 竖列看出,经过对抗训练之后的防守模型非常强悍。甚至可以达到 94.1% 的防守成功率。

因此,将对抗样本引入训练数据集进行对抗训练是有效的防守策略,相当于士兵平时训练的时候就采用真实战场条件,上了战场自然不怂。

由 Ens4-Adv-Incv3 竖列看出,经过多个模型集合训练之后的防守模型非常强悍。 正所谓“用五岳他山之石攻此山之玉”、“曾经沧海难为水”,使用多个深度模型训练出的防守模型必然是集众家之长。

防御组:图像降噪策略

对抗训练(把真实战场作为训练场):在训练模型的时候就加上对抗样本(对抗训练)。

对抗样本随模型训练的过程在线生成。虽然很耗时,但训练出的模型鲁棒性很强

改进的HGD降噪算法:像素层面上的去噪并不能真正去掉噪音,传统的像素去噪方法全都无效。

采用基于CNN的改进HGD降噪算法,仅使用750张训练图片,大大节省训练时间,且模型可迁移性好。

NIPS 冠军是怎么做的

误导汽车的语音指令

这个方式已经被中国科学院大学教授陈恺实现了。通过对汽车音响播放的歌曲进行干扰编码,虽然人耳听起来仍然是原曲,实际上暗中通过微信的语音,发送了“Open the door”指令。

本文作者张子豪提出另一种思路,使用树莓派微型电脑,发射FM调频广播播放干扰之后的歌曲,直接干扰汽车收音机。

陈恺表示,已经尝试过该方式,决定干扰成功率的关键还是在于过滤外界噪音干扰。

直接破解本地AI模型

360智能安全研究院负责人李康认为,人工智能与信息安全的下一个热点:深度学习模型参数被窃取的风险和数据安全。

随着边缘计算和智能移动终端时代的到来,在移动终端部署本地 AI 应用越来越广泛。从iPhoneX的刷脸解锁,到华为、高通部署手机端的 AI芯片

在移动终端本地运行 AI 应用,可有效解决延迟、传输带宽、用户隐私泄露等问题,但同时也带来本地深度学习模型的数据安全问题。

经过简单的逆推,就可以破解很多本地的 AI 应用,甚至可以知道其中的 Caffe 模型的基本参数。

有些开发者会采用 AES 加密把模型封装起来,但殊不知在 AES 密钥也得保存在本地文件中。

有时甚至根据追踪 AI 应用对内存的访问情况,就可以判断出这个模型的神经网络结构。

所以 AI 开发者在向移动端和嵌入式设备中部署 AI 应用时,一定要事先请教安全团队,确保模型数据安全。

延伸阅读

NIPS 2017 神经网络对抗攻防赛介绍:

比赛分组规则

比赛为三组选手互相进行攻防

Targed Attack 组:组委会给 5000 张原图和每张图对应的目标误导结果数据集,制定要求指鹿为马

Non-ratgeted Attack 组:只要不认不出是鹿就行

Defense 组:正确识别已经被其他参赛组对抗样本攻击的图片

攻击组:对抗样本生成策略

集合攻击(他山之石可以攻玉):攻击多个已知深度学习模型的集合,而不是逐个击破。

比方说,把ResNet、VGG、Inception三个模型视作统一的大模型一起攻击,再用训练好的模型攻击AlexNet,成功率就会大大提高。

可以在模型底层、预测值、损失函数三个层面进行多个模型的集合攻击。

采用这个方法,可以大大提高对抗样本攻击的普适性和可迁移性。

改进的FGSM模型:多步迭代、带目标、引入动量,大大提高对抗样本的可迁移性。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表德赢Vwin官网 网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 神经网络
    +关注

    关注

    42

    文章

    4716

    浏览量

    99764
  • 人工智能
    +关注

    关注

    1787

    文章

    45799

    浏览量

    234022
  • 深度学习
    +关注

    关注

    73

    文章

    5415

    浏览量

    120418

原文标题:GAN一点都不鲁棒?清华学霸们赢得NIPS攻防赛3项冠军的绝招在这里!

文章出处:【微信号:AI_era,微信公众号:新智元】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    神经网络教程(李亚非)

      第1章 概述  1.1 人工 神经网络研究与发展  1.2 生物 神经元  1.3 人工 神经网络的构成  第2章人工 神经网络基本模型  2.1 MP模型  2.2 感知器模型  2.3
    发表于03-20 11:32

    基于Keras中建立的简单的二分类问题的神经网络模型(根据200个数据样本预测新的5+1个样本)—类别预测

    Keras之ML~P:基于Keras中建立的简单的二分类问题的 神经网络模型(根据200个数据 样本预测新的5+1个 样本)——类别预测
    发表于12-24 11:45

    卷积神经网络如何使用

    卷积 神经网络(CNN)究竟是什么,鉴于 神经网络在工程上经历了曲折的历史,您为什么还会在意它呢? 对于这些非常中肯的问题,我们似乎可以给出相对简明的答案。
    发表于07-17 07:21

    【案例分享】基于BP算法的前馈神经网络

    `BP 神经网络首先给出只包含一个隐层的BP 神经网络模型(两层 神经网络): BP 神经网络其实由两部分组成:前馈 神经网络
    发表于07-21 04:00

    【案例分享】ART神经网络与SOM神经网络

    是一种常用的无监督学习策略,在使用改策略时, 网络的输出 神经元相互竞争,每一时刻只有一个竞争获胜的 神经元激活。ART 神经网络由比较层、识别层、识别阈值、重置模块构成。其中比较层负责接收输
    发表于07-21 04:30

    何用卷积神经网络方法去解决机器监督学习下面的分类问题?

    人工智能下面有哪些机器学习分支?如 何用卷积 神经网络(CNN)方法去解决机器学习监督学习下面的分类问题?
    发表于06-16 08:09

    如何构建神经网络

    原文链接:http://tecdat.cn/?p=5725 神经网络是一种基于现有数据创建预测的计算系统。如何构建 神经网络神经网络包括:输入层:根据现有数据获取输入的层隐藏层:使用反向传播优化输入变量权重的层,以提高模型的预测
    发表于07-12 08:02

    基于BP神经网络的PID控制

    最近在学习电机的智能控制,上周学习了基于单 神经元的PID控制,这周研究基于BP 神经网络的PID控制。 神经网络具有任意非线性表达能力,可以通过对系统性能的学习来实现具有最佳组合的PID控制。利用BP
    发表于09-07 07:43

    如何使用stm32cube.ai部署神经网络

    何用stm32cube.ai简化人工 神经网络映射?如何使用stm32cube.ai部署 神经网络
    发表于10-11 08:05

    卷积神经网络模型发展及应用

    等[16- 18]进行分类。特征提取和分类器的 设计是 图片分类等任务的关键,对分类结果的好坏 有着最为直接的影响。卷积 神经网络可以自动地从 训练 样本中学习特征并且分类,解决了人工特征设计 的局限性
    发表于08-02 10:39

    神经网络在雷达对抗与反对抗中的应用

    本文从 神经网络应用于雷达 对抗与反 对抗中的潜在优势出发,论述了将其应用于雷达信号分选和识别、自适应信号处理、识别反辐射导弹、探测隐身目标和抗人为干扰等方面的广阔
    发表于09-09 15:52 39次下载

    神经网络如何识别图片的内容?

    神经网络展示大量的人和车的 图片,并告知其哪一张是车,哪一张是人,最终,这个 神经网络就可以学会区分人和车。当新输入一张车或人的 图片时,它会告诉你这是一个人还是一辆汽车。
    的头像 发表于10-26 14:58 3790次阅读
    <b class='flag-5'>神经网络</b>如何识别<b class='flag-5'>图片</b>的内容?

    bp神经网络的原理 用BP神经网络去识别图片上的字符

      摘 要  本文主要讲述了如 何用BP 神经网络去识别 图片上的字符。该系统主要处理晶振表面字符的识别。在识别之前要对图像进行一系列的处理,即图像的预处理。预处理主要包含,二值化、锐化、噪声去除、字符
    发表于07-18 17:20 3次下载

    BP神经网络最少要多少份样本

    等。然而,BP 神经网络的训练需要大量的 样本数据,需要根据问题的复杂性、数据的可用性和计算资源等因素,综合确定 样本数量以保证 网络的泛化能力。 BP 神经
    的头像 发表于07-11 10:31 202次阅读

    BP神经网络样本的获取方法

    的训练 样本是至关重要的。 数据收集 数据收集是构建BP 神经网络模型的第一步。根据研究领域和应用场景的不同,数据来源可以分为以下几种: 1.1 实验数据:通过实验或观察获得的数据,如生物实验、化学实验等。 1.2 传感器数据:通过传感器收集的数据,如温度、湿度、压力等。
    的头像 发表于07-11 10:50 184次阅读