深度学习攻防对抗(JCAI-19 阿里巴巴人工智能对抗算法竞赛)
最近在参加IJCAI-19阿里巴巴人工智能对抗算法竞赛(点击了解),初赛刚刚结束,防御第23名,目标攻击和无目标攻击出了点小问题,成绩不太好都是50多名,由于找不到队友,只好一个人跟一群大佬PK,双拳难敌四手,差点自闭放弃比赛了。由于知道对抗攻击的人很少,于是抽空写篇博客,简单科普一下人工智能与信息安全的交叉前沿研究领域:深度学习攻防对抗。
然后简单介绍一下IJCAI-19 阿里巴巴人工智能对抗算法竞赛
目前,人脸识别、自动驾驶、刷脸支付、抓捕逃犯、美颜直播……人工智能与实体经济深度结合,彻底改变了我们的生活。神经网络和深度学习貌似强大无比,值得信赖。
但是神经网络也有它的缺陷,只要略施小计就能使最先进的深度学习模型指鹿为马,例如:通过细微地改动图片,就可以使神经网络识别出错。
深度学习攻防对抗的历史:
早在2015年,“生成对抗神经网络GAN之父”Ian Goodfellow在ICLR会议上展示了攻击神经网络欺骗成功的案例,在原版大熊猫图片中加入肉眼难以发现的干扰,生成对抗样本。就可以让Google训练的神经网络误认为它99.3%是长臂猿。
2017NIPS对抗样本攻防竞赛案例:阿尔卑斯山图片篡改后被神经网络误判为狗、河豚被误判为螃蟹。对抗样本不仅仅对图片和神经网络适用,对支持向量机、决策树等算法也同样有效。
在2018年,Ian Goodfellow在一篇论文中提出了首个可以欺骗人类的对抗样本。下图左图为猫咪原图,经过对抗样本干扰之后生成右图,对于右图,神经网络和人眼都认为是狗。不仅欺骗了神经网络,还能欺骗人眼。
这就是对机器学习模型的逃逸攻击,它能绕过深度学习的判别并生成欺骗结果。攻击者在原图上构造的修改被称为“对抗样本”。神经网络对抗样本生成与攻防是一个非常有趣且有前景的研究方向。
黑盒攻击与白盒攻击:
白盒攻击是在已经获取机器学习模型内部的所有信息和参数上进行攻击,令损失函数最大,直接计算得到对抗样本;黑盒攻击则是在神经网络结构为黑箱时,仅通过模型的输入和输出,逆推生成对抗样本。
攻击方法:
FGSM(Fast Gradient Sign Method):
Ian Goodfellow等人在年2014提出了一种生成对抗性例子的简单方法FGSM
与L- BFGS等复杂方法相比,该方法简单,计算效率高,但通常成功率较低。采用FGSM的方法,可使ImageNet模型识别错误率大约63%−69%。
I-FGSM(Iterative Fast Gradient Sign Method):
FGSM方法的一种扩展,通过简单的多步迭代FGSM,找到损失函数最大值,每一步迭代的步长会相应减小。
攻击方:
通过生成更具迷惑性的对抗样本,使现有的深度学习模型识别出错。
防御方:
训练更具鲁棒性的模型,使模型练就一双“火眼金睛”,正确识别对抗样本。
对抗训练:
在训练模型的时候就加上对抗样本,相当于让深度学习模型在做一份考试真题,等真正上战场的时候,碰到对抗样本也无所畏惧。
IJCAI-19 阿里巴巴人工智能对抗算法竞赛
比赛主要针对图像分类任务,包括模型攻击与模型防御。采用电商场景的图片识别任务进行攻防对抗。总共会公开110,000左右的商品图片,来自110个商品类目,每个类目大概1000个图片。
本次比赛包括以下三个任务:
- 无目标攻击: 生成对抗样本,使模型识别错误。
- 目标攻击: 生成对抗样本,使模型识别到指定的错误类别。
- 模型防御: 构建能够正确识别对抗样本的模型。
比赛为三组选手互相进行攻防,参赛选手既可以作为攻击方,对图片进行轻微扰动生成对抗样本,使模型识别错误;也可以作为防御方,通过构建一个更加鲁棒的模型,准确识别对抗样本。
关于比赛更多细节暂时不宜公开,比赛仍在进行中。。。
(待比赛结束后更新)
深度学习攻防对抗(JCAI-19 阿里巴巴人工智能对抗算法竞赛)的更多相关文章
- 在浏览器中进行深度学习:TensorFlow.js (八)生成对抗网络 (GAN
Generative Adversarial Network 是深度学习中非常有趣的一种方法.GAN最早源自Ian Goodfellow的这篇论文.LeCun对GAN给出了极高的评价: “There ...
- 《深度学习-改善深层神经网络》-第二周-优化算法-Andrew Ng
目录 1. Mini-batch gradient descent 1.1 算法原理 1.2 进一步理解Mini-batch gradient descent 1.3 TensorFlow中的梯度下降 ...
- 深度学习框架如何自动选择最快的算法?Fast Run 让你收获最好的性能!
作者:王博文 | 旷视 MegEngine 架构师 一.背景 对于深度学习框架来说,网络的训练/推理时间是用户非常看中的.在实际生产条件下,用户设计的 NN 网络是千差万别,即使是同一类数学计算,参数 ...
- 02基于python玩转人工智能最火框架之TensorFlow人工智能&深度学习介绍
人工智能之父麦卡锡给出的定义 构建智能机器,特别是智能计算机程序的科学和工程. 人工智能是一种让计算机程序能够"智能地"思考的方式 思考的模式类似于人类. 什么是智能? 智能的英语 ...
- 人工智能之深度学习-初始环境搭建(安装Anaconda3和TensorFlow2步骤详解)
前言: 本篇文章主要讲解的是在学习人工智能之深度学习时所学到的知识和需要的环境配置(安装Anaconda3和TensorFlow2步骤详解),以及个人的心得体会,汇集成本篇文章,作为自己深度学习的总结 ...
- 深度学习系列 Part (1)
传统机器学习的回顾 近年来,深度学习的概念十分火热,人工智能也由于这一技术的兴起,在近几年吸引了越来越多的关注.我们这里,将结合一些基本的用例,简要的介绍一下这一新的技术. 我们首先需要明确人工智能. ...
- 基于OpenCL的深度学习工具:AMD MLP及其使用详解
基于OpenCL的深度学习工具:AMD MLP及其使用详解 http://www.csdn.net/article/2015-08-05/2825390 发表于2015-08-05 16:33| 59 ...
- Python深度学习读书笔记-1.什么是深度学习
人工智能 什么是人工智能.机器学习与深度学习(见图1-1)?这三者之间有什么关系?
- 深度学习 - DL
雷锋网 - 2016 | 人工智能在深度学习领域的前世今生(原文链接) Deep Learning - DL,深度学习是机器学习的一种. 深度学习最重要的作用:表示学习 深度学习实践的四个关键要素 计 ...
随机推荐
- python-装饰器初识,闭包
函数名的运⽤, 第⼀类对象 ⼀. 函数名的运⽤. 函数名是⼀个变量, 但它是⼀个特殊的变量, 与括号配合可以执⾏函数的变量 1. 函数名的内存地址 def func(): print("呵呵 ...
- Python之小测试:用正则表达式写一个小爬虫用于保存贴吧里的所有图片
很简单的两步: 1.获取网页源代码 2.利用正则表达式提取出图片地址 3.下载 #!/usr/bin/python #coding=utf8 import re # 正则表达式 import urll ...
- python之chardet验证编码格式
在处理字符串时,常常会遇到不知道字符串是何种编码,如果不知道字符串的编码就不能将字符串转换成需要的编码 pip install chardet 举例子 import chardet import ur ...
- log库
https://github.com/orocos-toolchain/log4cpp https://github.com/search?q=glog zlog https://github.com ...
- node.js提供的服务器live-server的使用
安装node.js的版本控制工具nvm,在终端中执行 curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/instal ...
- 喜讯!联诚发创始人龙平芳荣获2019LED行业优秀女企业家称号!联诚发横揽三项大奖!
2019年12月20日,在深圳大梅沙京基喜来登度假酒店隆重举行“蝶变跨越”慧聪LED显示屏行业品牌盛会颁奖典礼!在来自全国各地的LED显示屏行业协会领导,企业领袖,精英代表以及来自全国各 ...
- 08-02-loggin-模块
程序员看的格式 standard_format = '[%(asctime)s][%(threadName)s:%(thread)d][task_id:%(name)s][%(filename)s:% ...
- centos 6.5 修改主机名
使用 root 账号登录,编辑 vi /etc/sysconfig/network 此时的主机名如下 HOSTNAME=localhost.localdomain 修改 HOSTNAME=newnam ...
- 如何设置和使用MacOS上的Microsoft Office套件
自30年前首次发布以来,Microsoft Office已成为全球最受欢迎的生产力套件之一.借助Word和Excel for Mac之类的程序,毫无疑问,MS Office套件在任何计算机上都是必须下 ...
- jq随机生成数字加字母的字符串
html代码: <dl class="row"> <dt class="tit"> <label for="title& ...