《Attack ML Models - 李宏毅》视频笔记(完结)
Attack ML Models - 李宏毅
https://www.bilibili.com/video/av47022853

Training的Loss:固定x,修改θ,使y0接近ytrue.
Non-targeted Attack的Loss:固定θ,修改x,使y‘远离ytrue.
Targeted Attack的Loss:固定θ,修改x,使y‘远离ytrue且接近yfalse.

constraint:x‘和原图像x0的相似度,必须小于阈值ε.有多种计算方法,如L2-norm,L-infinity,因为取决于人类感知,一般采用L-infinity.

对抗攻击即生成对抗样本x’,它要使得损失函数L(x‘)尽可能小,同时确保相似度d(x0,x’)小于ε.
采用梯度下降法进行,x0作为初始值进行迭代.如果相似度超过ε,则对xt进行修正.
具体修正策略为,找到小于ε且与当前xt最接近的x.

图片特征一般是很高维的,在某些维度上如图1,tiger cat的置信度范围很广且附近都是cat,在另一些维度上如图2,tiger cat的置信度很窄且附近时不相干的事物.

不同的对抗攻击方法,区别一般在于采用不同的距离限制方式与不同的优化策略.
FGSM是一种常见的对抗攻击方法,它的原理是计算出分类函数loss的梯度,然后用sign函数将其指向四个角的方向之一,再乘上ε使其落在角上,x0减去一次该值就得到最终的x*,位于四个角其中之一.
之所以只做一次且落在角上,是因为即使多次迭代后得到x1,但因为存在constrain,因此仍会被拉回到同样位置.

LIME是一种用可解释的模型来对不可解释的模型作出解释的方法.
首先确定一个想要解释的点,然后在该点附近进行采样,利用可解释的模型对这几个点进行局部拟合.

黑箱攻击,即利用目标网络的训练数据,自己训练出一个网络,并且根据自己的网络生成一些对抗样本,这些样本对目标网络的攻击往往能成功.
相关应用有Universal Adversarial Attack和Adversarial Reprogramming等.

对抗攻击一般不能被权重正则化、dropout、模型集成等方式所防御.
消极防御只找到噪点图像,但不修改模型.
消极防御可以对于图像施加一个filter,减轻噪点对模型的干扰.例如将图像平滑化.原理是对抗攻击一般只在某个方向生效,改变图片即可使这个图像无效.

Feature Squeeze中的Squeeze即一个filter,该方法将原图像与通过多种filter后的图像预测结果进行比较,若其中有某个预测结果相差超过阈值,就认为该图像被修改过.

Randomization at Inference Phase对图像采用随机的、微小的改变,例如缩放、填充等,对改编后的图片进行分类.

主动防御修改模型,使得它对于对抗攻击具有鲁棒性.
主动防御利用某种对抗攻击算法,形成对现有模型有效的对抗样本,再将这些对抗样本标注为对应原图像的原答案,作为新的训练样本来更新模型.
该方法需要找T次漏洞,每次找N张图片.因为每次模型更新后可能会产生新的漏洞.
如果找漏洞的对抗攻击算法为A,那么该模型仍然很可能会被算法B攻破.
《Attack ML Models - 李宏毅》视频笔记(完结)的更多相关文章
- <Machine Learning - 李宏毅> 学习笔记
<Machine Learning - 李宏毅> 学习笔记 b站视频地址:李宏毅2019国语 第一章 机器学习介绍 Hand crafted rules Machine learning ...
- 《Machine Learning》系列学习笔记之第一周
<Machine Learning>系列学习笔记 第一周 第一部分 Introduction The definition of machine learning (1)older, in ...
- Coursera课程《Machine Learning》学习笔记(week1)
这是Coursera上比较火的一门机器学习课程,主讲教师为Andrew Ng.在自己看神经网络的过程中也的确发现自己有基础不牢.一些基本概念没搞清楚的问题,因此想借这门课程来个查漏补缺.目前的计划是先 ...
- 《Machine Learning - 李宏毅》视频笔记(完结)
https://www.youtube.com/watch?v=CXgbekl66jc&list=PLJV_el3uVTsPy9oCRY30oBPNLCo89yu49 https://www. ...
- Andrew Ng Machine Learning Coursera学习笔记
课程记录笔记如下: 1.目前ML的应用 包括:数据挖掘database mining.邮件过滤email anti-spam.机器人autonomous robotics.计算生物学computati ...
- 《Machine Learning》系列学习笔记之第二周
第二周 第一部分 Multivariate Linear Regression Multiple Features Note: [7:25 - θT is a 1 by (n+1) matrix an ...
- 【DL.AI】《Structuring Machine Learning Projects》笔记
一.改进模型的几个方法 Collect more data Collect more diverse training set Train algorithm longer with gradient ...
- 《Machine Learning》系列学习笔记之第四周
第四周 Model Representation I 让我们来看看如何使用神经网络来表示假设函数.在非常简单的水平上,神经元基本上是将输入(树突)作为输入到输出(轴突)的电输入(称为"尖峰& ...
- 《Machine Learning》系列学习笔记之第三周
第三周 第一部分 Classification and Representation Classification 为了尝试分类,一种方法是使用线性回归,并将大于0.5的所有预测映射为1,所有小于0. ...
随机推荐
- HTML+css基础 img 标签的属性
img: src=”” src是标签的属性 等号右边是属性值.就是图片的路径. 路径 1. 绝对路径:按照一个路径能找到,具体到某一个盘符下,某一个文件夹内. 2. 相对路径:以当前页面为参考物,去查 ...
- .net 调用 Python脚本中的代码
使用工具:IronPython 工具介绍:是一种在 .NET 及 Mono上的 Python 实现,是一个开源的项目,基于微软的 DLR 引擎.(个人理解就是在 .net上面运行Python代码) 使 ...
- 性能监控工具的配置及使用 - Spotlight On Oracle(oracle)
一. Spotlight On Oracle(oracle)1.1. 工具简介Spotlight是一个强有力的Oracle数据库实时性能诊断工具,提供了一个直观的.可视化的数据库活动展现.S ...
- RESTful规范总结
思维导图xmind文件:https://files-cdn.cnblogs.com/files/benjieming/RESTful%E8%A7%84%E8%8C%83.zip
- 架构师小跟班:如何高效又安全的清理Linux服务器上的缓存?
操作服务器上的生产环境,一定要慎之又慎,安全第一,优化第二! 一些基本原理 说到清理内存,那么不得不提到/proc这一个虚拟文件系统,这里面的数据和文件都是内存中的实时数据,很多参数的获取都可以从下面 ...
- ES6 变量与解构(二)
一.变量的声明与使用 [测试示例需要在node环境中测试,浏览器环境下并不完全兼容ES6代码]ES6中可以使用 {} 来包含任意一段代码,被 {} 包裹的内容称为一个代码块(局部作用域) let关键字 ...
- [转]C++ 堆栈溢出的原因以及可行的解决方法
栈溢出(stackoverflow)的原因及解决办法 大家都知道,Windows程序的内存机制大概是这样的:全局变量(局部的静态变量本质也属于此范围)存储于堆内存,该段内存较大,一般不会溢出: 函数地 ...
- REDELK的安装和使用
0x00 前言简介 红队的SIEM有两个主要目标: 通过创建一个集中管理中心,收集和丰富来自多个 teamservers的所有相关操作日志,增强了红队人员的可用性和概述.这对于在操作中进行历史搜索以及 ...
- webrtc (6) 在Webrtc中集成VideoToolbox
来源:http://blog.csdn.net/wangruihit/article/details/46550853 VideoToolbox是iOS平台在iOS8之后开放的一个Framework, ...
- FileZilla_Server:425 Can't open data connection 问题解决
25 Can't open data connection 和 读取目录列表失败 问题解决 这个问题主要是由于使用Passive Mode模式造成的,解决这个问题很简单:1.在ftp服务软件中设置指定 ...