【综述】对抗样本生成及攻防技术综述

2023-05-16

作者是电子科技大学的刘小垒等,2019年发表在计算机应用研究

主要内容:

以机器学习的安全性问题为出发点,介绍了当前机器学习面临的隐私攻击、完整性攻击等安全问题,归纳了目前常见对抗样本生成方法的发展过程及各自的特点,总结了目前已有的针对对抗样本攻击的防御技术,最后对提高机器学习算法鲁棒性的方法做了进一步的展望。

一、机器学习模型的攻击方式

1.1一般说来,对机器学习模型的攻击方式包括破坏模型的机密性 (confidentiality) 、完整性 integrity) 和 可 用 性 (availability)。同时,这三个性质也构成了 CIA 安全模型:

a)机密性是指机器学习模型在训练过程中必须保证已有数据集中的信息不被泄露,比如医疗系统中病人的病例或诊断结果;

b)完整性是指机器学习模型必须保证同类别样本被归类到相同的类中,反馈结果不会因某些原因而偏离,比如垃圾邮件通过伪装造成分类器的误识别;

c)可用性是保证所有的数据集可持续的供机器学习模型来使用。

1.2另一方面,安全研究人员将常见的针对机器学习模型的攻击分为三类:隐私攻击、针对训练数据的攻击以及针对算法模型的攻击。

1)隐私攻击,这类攻击者通过观察模型来预测某些敏感信息,或者通过已有的部分数据来恢复数据集中的敏感数据。

2)针对训练数据的攻击,攻击者通过修改现有数据或注入精心制作的恶意数据来对系统的完整性造成影响(在实际应用中,算法模型的训练者会很注重数据的隐私性,所以一般在前期训练过程中,数据不会被攻击者轻易修改。然而很多系统为了适应环境的变化,会不断迭代更新模型,这时就可能遭到攻击)

3)针对算法模型的攻击,通过在机器学习模型推理阶段中对输入数据做轻微修改,就能够让模型得出错误的结果。这些被轻微修改后的数据称为对抗样本。这种针对算法模型的攻击方法能够较为轻易地找到让模型作出错误判断的对抗样本。

二、对抗样本生成方法

只补充上篇综述没有提到的部分

1.L-BFGS

Szegedy等人使用有约束L-BFGS 算法来求解,将问题进行了如下转换:
在这里插入图片描述

其中 loss 为一个与模型和标签有关的损失函数。由于神经网络一般是非凸的,上述损失函数最终得到一个近似值。对于每一个常量 c>0,重复优化求解这个最小化问题,每一个c 值 都能找到一个满足问题的可行解,通过执行全局的线性搜索,最终找到满足 L2距离最小的对抗样本。

2.FGSM

通常使用反向传播来高效率地计算待求梯度。该方法通过损失函数的梯度来决定像素的变化方向,最终所有的像素都会等比例地增大或减小。对于各种各样的模型,这种方法能有效地产生所需的对抗样本。

快速梯度符号法与 L-BFGS 方法有两个主要的区别:

a)快速梯度符号法基于 L∞距离求解;

b)每次求解不需要迭代,生成对抗样本速度快,但相似度并不是最高。

3 JSMA 雅可比显著图生成对抗样本

简单来说,想要使得样本被模型错误分类为目标标签 t,必须增加模型输出的目标标签 t 的概率,同时减少其他标签的概率,直到目标标签的概率大于其他标签。这可以通过使用显著性矩阵,有选择地改变图像的某些像素来实现。在求解出显著性矩阵后,通过算法选择显著性最大的像素,并对其进行修改,以增加分类为目标标签 t 的概率。重复这一过程,直到目标标签的概率大于其他标签,或达到了最大次数。

在这里插入图片描述

6.MalGAN

Hu等人提出了基于 MalGAN 的恶意软件对抗样本生成方法。恶意软件检测算法通常集成到防病毒软件中或托管在云端,因此对攻击者来说是一个黑盒模型,很难知道恶意软件检测使用的分类器以及分类器的参数。 Hu等人通过给黑盒模型输入各种特征的样本,利用原始样本和黑盒模型所产生的输出来训练一个辨别器SD,再用辨别器SD指导生成器来产生对抗样本

在这里插入图片描述

本文中说:实际上,MalGAN 算法强调整个样本集的正确率,而不关心单个样本的相似度,这意味着每个样本所需的扰动可能很大,产生的对抗样本的相似度可能很低。这就导致该算法在实际应用中具有较大局限性,具体到单个样本的修改,可能已经大到不能接受。

(这篇论文我也看过,但是没有想到这一点…)

三、对抗样本的防御方法(只记录针对上篇综述的补充)

1.蒸馏防御:

1.1蒸馏训练最初是用于将较复杂(教师)模型精简为较简单(学生)模型,具体来说,首先以常规方法用硬标签在训练集上训练出教师模型,然后,利用教师模型预测训练集得到对应的软标签(训练集的真实标签为硬标签,教师模型预测标签为软标签),接着用软标签代替硬标签在训练集上训练出学生模型。

1.2蒸馏防御使用蒸馏训练来提高神经网络的健壮性,但有两点区别。首先,教师模型和学生模型的结构完全相同,其次,蒸馏防御通过设置蒸馏温度迫使学生模型的预测结果变得更加可信。也就是说,蒸馏防御可以降低模型对输入扰动的敏感程度。

1.3蒸馏防御在正常训练模型的损失函数 softmax 中引入了温度常数 T:

在这里插入图片描述

训练过程中增加温度常数T会使得模型产生标签分布更加均匀的预测输出。当温度系数接近无穷大时,softmax(x)接近均匀分布。

在训练过程中引入蒸馏防御,总共分三步进行:

a)将 softmax 的温度常数设置为 T,以常规方法用硬标签在训练集上训练出教师模型;

b)利用教师模型预测训练集得到对应的软标签;

c)将 softmax 的温度常数设置为 T,用软标签代替硬标签在训练集上训练出学生模型(与教师模型的结构相同);

在测试过程中,对于测试集中的输入数据,使用学生模型的输出进行预测。然而这种防御方法只能抵御有限的对抗样本攻击。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【综述】对抗样本生成及攻防技术综述 的相关文章

  • Ubuntu将默认python版本改为python3

    文章目录 具体流程bash操作记录 具体流程 查看当前系统默认python版本 python version 查看 安装python 安装python3 apt install python3查看python3 whereis python
  • MacOS通过homebrew安装python 3.7方法

    显示Mac系统隐藏文件 xff1a 显示 defaults write com apple finder AppleShowAllFiles boolean true killall Finder 隐藏 defaults write com
  • FreeRTOS和RT-Thread的资源管理

    文章目录 资源管理一 简述个人总结 二 保证原子操作的二种方式1 临界区API 2 挂起调度器个人总结 三 互斥量 xff08 mutex xff09 优先级反转优先级继承死锁 四 守护任务零 xff1a 线程间同步的名字解释1 信号量 互
  • C#中布局的控件

    条目控件 xff08 ItemsControl xff09 WPF 控件的另一大类就是 ItemsControl xff0c 它是直接从 Control 类中派生出来的 与内容控件中只能含有一个控件不同 xff0c ItemsControl
  • openstack glance连接认证keystone出现错误的一个解决思路

    搭建好了keystone服务后 xff0c 对自己本身的认证是成功的 说明keystone配置是正确的 之后开始配置glance服务 xff0c 配置好了 xff0c 出现了如下报错 root 64 linux node1 glance i
  • CMMi软件能力成熟度2.0版 在CMMI V1.3版本中,只是在5级中强调了围绕商业目标进行过程改进,但是在2.0中,无论哪个等级都强调了围绕商业目标进行改进,这是2.0的一个基本思想,也是过程改

    这里写自定义目录标题 欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题 xff0c 有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中 居左 居右SmartyP
  • repo拉代码The remote end hung up unexpectedly解决方法

    git config global http lowSpeedLimit 0 git config global http lowSpeedTime 999999
  • AI漫想

    对人工智能一直有一种面对未知的好奇感 xff0c 所以也注意一些最新动态 首先 xff0c 强人工智能会出现 xff0c 或许已经出现 佛教中 色 xff0c 香 xff0c 声 xff0c 味 xff0c 触 xff0c 法 也可以看作我
  • 2014雅虎校招笔试题目

    今天去参加了雅虎的笔试题 xff0c 算是给自己留个记录吧 首先是8个选择题 xff0c 然后2个填空题 选择题不太难 xff0c 也记不大清楚了 填空题为2个概率题 xff0c 1个是2个人在下午2点 3点之间碰面 xff0c 他们出发时
  • 数据库系列-查询性能优化

    一 为什么要优化查询性能 1 因为每一个查询指令都是一个子任务 xff0c 执行每个子任务都需要花费时间 xff0c 优化查询的目的就是减少子任务的数量或者让子任务运行更快 2 查询的生命周期 从客户端到服务器 xff0c 在服务器上解析
  • 配置jenkins过程中Gitee无法添加证书令牌

    配置jenkins过程中Gitee无法添加证书令牌 背景处理步骤 背景 本篇是一个处理过程中的一个环节篇 xff0c 整体的背景为jenkins安装有一段时间了 xff0c 一直没怎么用起来 xff0c 就跟买了辆车一直爬在车库里吃灰 xf
  • ansible 执行命令 FAILED失败

    ansible 执行命令 FAILED失败 背景环境说明排查步骤定位处理步骤验证异常 sudo 需要密码 背景 生产工作需要 xff0c 新增了服务器 xff0c 加入到了ansible的hosts文件 xff0c 使用ad hoc命令执行
  • Windows10 21H2安装docker到非C盘的方法

    C盘就剩下40多G了 默认安装后装了下自己的镜像发现竟然只剩20多G了 太不科学了 而且无法选择安装位置 网上查了下教程也都不是很全 不够详细 下面是我的方法 管理员运行cmd mklink J 34 C Program Files Doc
  • linux 离线安装pymysql

    linux 离线安装pymysql 1 背景1 1 环境说明 2 操作步骤2 1 下载2 2 安装2 2 1 安装setuptools工具2 2 2 安装pymysql库 1 背景 生产服务器为离线局域网服务器 xff0c 维护功能的扩容需
  • linux系统连接windows系统

    linux系统连接windows系统 背景环境思路处理添加 remmina 仓库 背景 远程登录对运维人员来说是一道家常便饭了 xff0c 使用更多的是windows远程登录windows系统 xff0c windows系统登录linux系
  • ansible防火墙firewalld设置

    ansible防火墙firewalld设置 背景需求操作防火墙的开关打开验证 防火墙端口策略打开验证 防火墙服务策略打开验证 背景 防火墙 通过有机结合各类用于安全管理与筛选的软件和硬件设备 xff0c 帮助计算机网络于其内 外网之间构建一
  • linux离线安装软件

    linux离线安装软件 1 背景2 目的3 思路3 1 思路一3 1 1 操作步骤3 1 2 应用场景 xff1a 3 2 思路二3 2 1 操作步骤准备目录下载依赖 3 2 2 应用场景 3 3 思路三3 3 1 下载iso3 3 2 挂
  • 陌生环境下部署的思路

    陌生环境下部署的思路 由来场景一场景二场景三 整体的随想经验 由来 本篇的由来不是来自偶然 xff0c 但是如果说是必然又会显得很唐突 在现场实施部署工作中 xff0c 难免会遇到各种个样 突发 的情况 xff0c 原因不外乎信息的不对称
  • Ubuntu卸载WPS安装Libreoffice

    Ubuntu卸载WPS安装Libreoffice 背景环境卸载WPS安装Libreoffice下载安装卸载 背景 自从2021年10月份安装elementory操作系统以来 xff0c 办公软件一直在使用WPS xff0c 使用上跟wind
  • 我的创作纪念日

    我的创作纪念日 机缘收获日常憧憬 机缘 跟CSDN相识是在十多年前了 xff0c 当时是在上面找资料 xff0c 注册账号是为了下载上面的资源 至于写东西是从2021年开始的 xff0c 与其说是写不如说是记录 xff0c 记录下来工作中用

随机推荐