机器学习:自然语言处理上的对抗式攻击

Attacks in NLP

在这里插入图片描述

相关话题

在这里插入图片描述
在这里插入图片描述

Introduction

在这里插入图片描述
在这里插入图片描述
以前的攻击专注于图像和语音上,而NLP上的内容比较少。而NLP的复杂度跟词典有关系:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
NLP只能在embedding后的特征上加噪声

Evasion Attacks

在这里插入图片描述
在这里插入图片描述
电影的评论情感分类,将film换成films后,评论从消极变成了积极。
在这里插入图片描述
结构分析,如果改一个词后,结果完全不一样。
在这里插入图片描述
模型非常脆弱,看看有没有哪些方法让自己的模型更鲁棒一点。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

imitation Attacks在这里插入图片描述在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
同义词替换

在这里插入图片描述
embedding空间中找相近向量进行替换

在这里插入图片描述
KNN聚类进行拉近

在这里插入图片描述

大模型预测进行替代
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
用embedding的梯度来获得单词的替换
在这里插入图片描述
按照使得loss变化的顺序排序,然后取top-k个单词使得loss最大
在这里插入图片描述
字符级别的替换,交换,删除,插入


Motivation

在这里插入图片描述

Example of Attack

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
加点杂信号就能让分类器识别错误。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
设计loss这块能使得无目标或者目标攻击成为可能。
在这里插入图片描述
在这里插入图片描述
在L2 norm下的情况下,改变一个和改变每个效果一样。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Backdoor Attacks

在这里插入图片描述
当不知道训练资料的话,如何进行攻击呢?这就是黑箱攻击。
在这里插入图片描述
集成攻击,对角线攻击。
在这里插入图片描述
深蓝色区域是其能正常被识别为正确的范围,攻击的话就是将其移动那个到不是蓝色区域。
在这里插入图片描述

One pixel attack

在这里插入图片描述
改变一个像素值就能让分类器失败。

Universal adversarial attack

在这里插入图片描述
找到了一个noise,加到非常多的图片都能让辨别器辨别错误。

除了图像,其它领域也可以被攻击,比如声音,NLP等。
在这里插入图片描述
在这里插入图片描述
在末尾加上标红的文字后,导致问答系统的答案都是一样的

Attack in the Physical world

在这里插入图片描述
给男人加一个眼镜,导致摄像头识别算法识别为右边的女人。
在这里插入图片描述
对车牌系统进行攻击,对标致的识别系统。
在这里插入图片描述
将3的横线给拉长一点,结果导致特斯拉导致速度限制为35看成了85,导致加速。

在这里插入图片描述
白色方块的数量会对应不同的类别。

在模型里面开一个后门:
在这里插入图片描述
在训练阶段就开始攻击,虽然训练数据是人眼看起来正常的 ,只会对某一张图片辨识错误,而不会对其他图片产生错误。
公开的图片训练集(里面可能暗含攻击图片)

Defense

在这里插入图片描述

被动防御

训练好了就不要动了,在模型前面加一个盾牌。
在这里插入图片描述
比如模糊化处理,对原来的图像影响甚小,但是对攻击图像的影响是巨大的。另外也稍微会给置信率降低一点点。
在这里插入图片描述
在这里插入图片描述

  • 图像压缩
  • 图像生成:用图像生成产生相同的输入图像,进而过滤攻击图片

在这里插入图片描述
如果一旦被别人知道你的被动防御措施,别人可以更新攻击进而攻破你的被动防御。比如模糊的那一个处理,就可以当做网络的第一层。

在做defense的时候加上你的随机性,各种不同的defense,让攻击方不知道你的防御是什么。

主动防御

训练一个鲁棒的不容易被攻破的模型。
在这里插入图片描述

制作了一个新的训练资料,每个样本都被攻击过,但是标签被纠正过。然后将两批数据一起训练。
如果找到新的攻击数据,就加到训练数据中进一步训练。
在这里插入图片描述
但是它不太能挡住新的攻击,还是能够被攻击破的,另外就是需要不断的重复训练,需要比较大的训练资源。

有人发明了一种方法,能够做到adversairal training for free, 不再需要新的计算资源。
在这里插入图片描述

Summary

在这里插入图片描述
攻击和防御方法都在进化中。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/74872.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

制作立体图像实用软件:3DMasterKit 10.7 Crack

3DMasterKit 软件专为创建具有逼真 3D 和运动效果的光栅图片而设计:翻转、动画、变形和缩放。 打印机、广告工作室、摄影工作室和摄影师将发现 3DMasterKit 是一种有用且经济高效的解决方案,可将其业务扩展到新的维度,提高生成的 3D 图像和光…

STM32低功耗分析

1.ARM发布最新内核 2023 年5 月 29 日,Arm 公司今天发布了处理器核心:Cortex-X4、Cortex-A720 和Cortex-A520。这些核心都是基于 Arm v9.2 架构,只支持 64 位指令集,不再兼容 32 位应用。Arm 公司表示,这些核心在性能…

postgresql-常用日期函数

postgresql-常用日期函数 简介计算时间间隔获取时间中的信息截断日期/时间创建日期/时间获取系统时间时区转换 简介 PostgreSQL 提供了以下日期和时间运算的算术运算符。 获取当前系统时间 select current_date,current_time,current_timestamp ;-- 当前系统时间一周后的日…

Selenium - Tracy 小笔记2

selenium本身是一个自动化测试工具。 它可以让python代码调用浏览器。并获取到浏览器中加们可以利用selenium提供的各项功能。帮助我们完成数据的抓取。它容易被网站识别到,所以有些网站爬不到。 它没有逻辑,只有相应的函数,直接搜索即可 …

在Linux系统上用C++将主机名称转换为IPv4、IPv6地址

在Linux系统上用C将主机名称转换为IPv4、IPv6地址 功能 指定一个std::string类型的主机名称&#xff0c;函数解析主机名称为IP地址&#xff0c;含IPv4和IPv6&#xff0c;解析结果以std::vector<std::string>类型返回。解析出错或者解析失败抛出std::string类型的异常消…

用友U8与MES系统API接口对接案例分析

企业数字化转型&#xff1a;轻易云数据集成平台助力 U8 ERPMES 系统集成 为什么选择数字化转型&#xff1f; 领导层对企业资源规划&#xff08;ERP&#xff09;的深刻理解促使了数字化转型的启动。采用精确的“N5”滚动计划&#xff0c;为供应商提供充分的预期信息&#xff0c…

Tomcat多实例与负载均衡

Tomcat多实例与负载均衡 一、Tomcat多实例1.1、安装JDK1.2、安装tomcat1.3、配置tomcat环境变量1.4、修改tomcat中的主配置文件1.5、修改启动脚本和关闭脚本1.6、 启动tomcat并查看 二、NginxTomcat负载均衡、动静分离2.1、部署Nginx负载均衡2.2、部署第一台tomcat2.3、部署第二…

【Jetpack】Jetpack 简介 ( 官方架构设计标准 | Jetpack 组成套件 | Jetpack架构 | Jetpack 的存在意义 | AndroidX 与 Jetpack 的关系 )

文章目录 一、Google 官方推出的架构设计标准 Jetpack二、Jetpack 组成套件三、Jetpack 架构四、Jetpack 的存在意义1、提高开发效率2、最佳架构方案3、消除样本代码4、设备系统兼容性5、改善应用性能6、测试支持 五、AndroidX 与 Jetpack 的关系 一、Google 官方推出的架构设计…

SpringBoot结合MyBatis实现多数据源配置

SpringBoot结合MyBatis实现多数据源配置 一、前提条件 1.1、环境准备 SpringBoot框架实现多数据源操作&#xff0c;首先需要搭建Mybatis的运行环境。 由于是多数据源&#xff0c;也就是要有多个数据库&#xff0c;所以&#xff0c;我们创建两个测试数据库&#xff0c;分别是…

使用最新android sdk 将jar文件编译成dex

最近需要一些比较骚的操作&#xff0c;所以需要将gson编译成dex。 因为手上有jar包&#xff0c;所以就拿出了android sdk准备一把入魂&#xff0c;结果报错不断&#xff0c;让人无奈。只好根据报错来调整编译步骤&#xff0c;不得不为安卓环境更新Debug。 1、dx变d8 并不确定…

Undefined symbols for architecture arm64

解决问题之前&#xff0c;先了解清晰涉及到的知识点&#xff1a; iOS支持的指令集包含&#xff1a;armv6、armv7、armv7s、arm64&#xff0c;在项目TARGETS---->Build Settings--->Architecturs 可以修改对应的指令集&#xff0c;目前Standard Architectures(arm64, arm…

Windows MySQL服务安装及问题解决方案

Windows MySQL服务安装及问题解决方案 安装及配置步骤一&#xff1a;官网下网MySQL安装包步骤二&#xff1a;设置环境变量步骤仨&#xff1a;配置MySQL,ini配置文件步骤四&#xff1a;初始化MySQL步骤五&#xff1a;开启MySQL服务步骤六&#xff1a;测试是否安装成功步骤七&…

CMS指纹识别

一.什么是指纹识别 常见cms系统 通过关键特征&#xff0c;识别出目标的CMS系统&#xff0c;服务器&#xff0c;开发语言&#xff0c;操作系统&#xff0c;CDN&#xff0c;WAF的类别版本等等 1.识别对象 1.CMS信息&#xff1a;比如Discuz,织梦&#xff0c;帝国CMS&#xff0…

【SpringMVC】Jrebel 插件实现热部署与文件上传

目录 一、JRebel 1.1 Jrebel介绍 1.2 Jrebel插件下载 1.3 Jrebel服务下载并启动 1.4 在线生成GUID 1.5 JRebel激活 1.6 相关设置 注意❗ 二、文件上传、下载 2.1 导入pom依赖 2.2 配置文件上传解析器 2.3 文件上传表单设置 2.4 文件上传实现 2.5 文件下载实现 2…

代码随想录算法训练营第十八天|513. 找树左下角的值|112. 路径总和|106. 从中序与后序遍历序列构造二叉树

513. 找树左下角的值 题目&#xff1a;给定一个二叉树的 根节点 root&#xff0c;请找出该二叉树的 最底层 最左边 节点的值。 假设二叉树中至少有一个节点。 示例 1: 输入: root [2,1,3] 输出: 1 思路一&#xff1a;层序遍历&#xff0c;最后一层的第一个元素&#xff0c;即…

基于51单片机DS18B20温度及电流检测-proteus仿真-源程序

一、系统方案 本设计采用52单片机作为主控器&#xff0c;液晶1602显示&#xff0c;DS18B20检测温度&#xff0c;电流检测。 二、硬件设计 原理图如下&#xff1a; 三、单片机软件设计 1、首先是系统初始化 void lcd_init() //lcd 初始化设置子函数&#xff0c;不带参数 ,0x…

持安科技入选数说安全《2023中国网络安全市场年度报告》

近日&#xff0c;网络安全产业研究平台数说安全发布《2023中国网络安全市场年度报告》&#xff0c;报告共分为158页核心报告&#xff0c;及番外篇《网安融资新星及融资过亿企业介绍》&#xff0c;作为以甲方身份创业的零信任办公安全明星企业&#xff0c;持安科技以网安融资新星…

MATLAB R2023a完美激活版(附激活补丁)

MATLAB R2023a是一款面向科学和工程领域的高级数学计算和数据分析软件&#xff0c;它为Mac用户提供了强大的工具和功能&#xff0c;用于解决各种复杂的数学和科学问题。以下是MATLAB R2023a Mac的一些主要特点和功能&#xff1a; 软件下载&#xff1a;MATLAB R2023a完美激活版 …

select多选回显问题 (取巧~)

要实现的效果&#xff1a; 实际上select选择框&#xff0c;我想要的是数组对象&#xff0c;但是后端返回来的是个字符串。 以下是解决方法&#xff1a; 以上是一种简单的解决方法~ 也可以自己处理数据或者让后端直接改成想要的格式。

Kafka3.0.0版本——消费者(手动提交offset)

目录 一、消费者&#xff08;手动提交 offset&#xff09;的概述1.1、手动提交offset的两种方式1.2、手动提交offset两种方式的区别1.3、手动提交offset的图解 二、消费者&#xff08;手动提交 offset&#xff09;的代码示例2.1、手动提交 offset&#xff08;采用同步提交的方式…