《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. ...
随机推荐
- 从URL重写中学习正则表达式
起因: 最近因为业务上的需求,老板要求改写网站的域名.要求把所有的二级域名中的内容放到主域名下,增加资源集中程度,有利于搜索引擎的优化. so.网站中所有的URL定向都要重写,也就是我们所说的伪静态的 ...
- IScroll Unable to preventDefault inside passive event listener due to target being treated as passive
最近两天企业微信下IScroll突然无法滚动了,特别慢,之前好好的,发现主要是有红色的Unable to preventDefault inside passive event listener du ...
- 一个简单 System.Threading.Tasks.Dataflow.BufferBlock 示例
直接贴代码了: using System; using System.Threading.Tasks; using System.Threading.Tasks.Dataflow; namespace ...
- react的标记渲染机制
// ReactUpdates.js - enqueueUpdate(component) function dirtyComponents.push(component); https://jue ...
- C# 打开mpp文件(Microsoft object)问题总结
有需求就有解决方案,早上还没有听说过什么是 mpp 文件,下午已经能成功的将功能实现,这难道就是程序员的职业素养?哈哈哈哈 从网上找了很多方法,最后自己找到一个十分简单的打开 mpp 文件的方法: p ...
- Delphi - 采用第三方控件TMS、SPComm开发串口调试助手
第三方控件TMS.SPComm的下载与安装 盒子上可搜索关键字进行下载,TMS是.dpk文件,SPComm.pas文件: 安装方法自行百度,不做赘述. 通过TMS控件进行界面布局 界面预览: Delp ...
- java DES转C#DES加密解密
一个程序用到java的cn.core.jar加密的,需要在.NET 中解密,发现JAVA的des算法与C#的有点区别. 自己不太懂加密解密算法,所以找了个省事的方法,用IKVM.NET,用这个将cn. ...
- electron项目中使用js web worker时,new worker(path)路径问题
如题,在new worker时需要传入js文件路径,可是在electron环境中使用出现问.同目录下,recorder.jsworker.js recorder.js中调用 var path = '. ...
- 01GitLab的使用——创建项目并上传到GitLab
借鉴:https://jingyan.baidu.com/article/9c69d48fe68cce13c9024e9c.html 登录GitLab网站,创建一个项目上传地址:https://blo ...
- properties文件属性值@Value注解为 java entity属性赋值
一.使用@Value为 java entity类中的非static属性赋值 举个栗子,一目了然 1.1 properties文件 1.2 servlet.xml 文件增加的配置: 1.2.1 serv ...