当前位置: 首页 > ops >正文

对抗攻击 Adversarial Attack

目录

对抗攻击的简介:

怎么攻击?

快速梯度符号法

白箱攻击和黑箱攻击:

攻击方式:

防御

被动防御

主动防御


对抗攻击的简介:

在输入的图片上加一点杂讯(一般人的肉眼看不见但是会影响机器)输入一只猫的图片,加一点杂讯后输入到“猫咪判别器里”,让判别器输出“不是猫”。

攻击大致分为两类,无目标地攻击:只要让输出的图片不是猫就算攻击成功,有目标的攻击:必须输出是狮子才算攻击成功。

怎么攻击?

无目标的攻击为输入x输出的y,离得正确的y*越远越好。

有目标的攻击为输入x输出的y,离得正确的y*越远且要离y目标越近越好。

另外,我们还希望加了杂讯的图片与原来的图片越接近越好,用L2范数和L∞范数来表示差距,L2范数看修改的平均差距,L∞范数只看修改后的最大差距。

快速梯度符号法

不同于梯度下降需要更新多次参数,快速梯度下降只需要更新一次参数即可。

白箱攻击和黑箱攻击:

        我们知道网络模型的具体参数,那么攻击就好了。

        如果我们无法知道要攻击的模型的具体参数,但是我们知道它是用的什么样的数据集来训练的这个模型,那么我们可以用他的这些数据集来训练一个与他有相似功能的网络,称为代理网络 ,用代理网络模仿我们要攻击的对象。

        我们不知道模型的参数,也不知道训练模型的数据集,那么我们可以用一系列自己的图片,喂给这个模型,然后保存输出,这样我们会得到一组关于这个模型的输入and输出对,用这些对去训练一个模型。

攻击方式:

最小可以做到单像素攻击,只改变图片里的一个像素,就可以导致模型的误判。

通用对抗攻击:找到一个攻击信号,这个信号可以攻击全部的图片。

对抗重编程:帮寄生者干活,比如一个model本来是动物识别,但是被寄生成了空间方块个数识别,用三个方块就输出“金鱼”,有四个方块就输出“食人鲨”。

模型开后门:在模型的训练资料里下毒,让模型看见训练资料的某个细节就出问题。

防御

被动防御

        模型不动,在输入的前面加一个Filter滤波器,让原始图片平滑。Filter可以是:模糊化、压缩、用generator重新生成。

        这种办法可能很有用,但是如果被别人知道了那就直接完了,比如说加一个模糊化的Filter,但是攻击者完全可以把这个滤波器看成为这个模型的第一层,直接攻击一整个。

主动防御

        训练一个比较不会被攻破的模型,将训练数据里的每一张图片都拿出来进行攻击,攻击完之后再给这些被攻击过的图片标上正确的标签。也可以用资料增强,自己攻击自己的模型,然后找出有漏洞的资料并进行纠正。

http://www.xdnf.cn/news/10459.html

相关文章:

  • 【MySQL基础】库的操作:创建、删除与管理数据库
  • 【Part 3 Unity VR眼镜端播放器开发与优化】第二节|VR眼镜端的开发适配与交互设计
  • 电脑故障基础知识
  • docker-部署Nginx以及Tomcat
  • OpenCV——Mac系统搭建OpenCV的Java环境
  • 一键开关机电路分析
  • python第39天打卡
  • 网页前端开发(基础进阶2--JS)
  • 【Day42】
  • 常量指真,指针常量 ,
  • 如何通过 Makefile 向源代码传递变量值
  • 实验:基于SpringBoot+MyBatis-Plus实现文章列表增删改查
  • vue3(入门,setup,ref,计算属性,watch)
  • c++学习之---模版
  • JavaScript 模块系统:CJS/AMD/UMD/ESM
  • 使用 DeepSeek API 搭建智能体《无间》- 卓伊凡的完整指南 -优雅草卓伊凡
  • C语言基础(09)【数组的概念 与一维数组】
  • day03-Vue-Element
  • 临界区保护
  • 贴片SMT工艺优化实战指南
  • 【2025最新】Java图书借阅管理系统:从课程作业到实战应用的完整解决方案
  • 04.MySQL数据类型详解
  • 42. 自动化测试开发之浏览器启动属性与web并发测试实现
  • Day42 Python打卡训练营
  • 模块联邦:更快的微前端方式!
  • Linux发行版与其编译器依赖的猜测
  • Python Turtle实战:打造高精度图形化秒表
  • 生产系统中TongWeb故障应急处理办法
  • 蓝光过滤APP:护眼小助手,守护您的视力健康
  • Python基础:常量、变量、变量类型、表达式、注释、输入输入、运算符