SegPGD
在这项工作中,我们提出了一种有效和高效的分割攻击方法,称为SegPGD。此外,我们还提供了收敛性分析,表明在相同次数的攻击迭代下,所提出的SegPGD可以创建比PGD更有效的对抗示例。此外,我们建议应用我们的SegPGD作为分割对抗训练的底层攻击方法。由于SegPGD可以创建更有效的对抗样本,使用我们的SegPGD进行对抗训练可以提高分割模型的鲁棒性。在流行的分割模型架构和标准分割数据集上的实验也验证了我们的建议。
文章主要贡献:
基于分类和分割的区别,我们提出了一种有效且高效的分割攻击方法,称为SegPGD。特别地,我们证明了它对单步攻击SegFGSM的推广。
我们提供了一个收敛分析,以表明在相同次数的攻击迭代下,所提出的SegPGD可以创建比PGD更有效的对抗示例
我们应用SegPGD作为分割对抗训练的底层攻击方法。我们的SegPGD对抗性训练在基准测试中达到了最先进的性能。
我们在标准分割数据集(即PASCAL VOC和Cityscapes)上使用流行的分割模型结构(即PSPNet和DeepLabV3)进行了实验,以证明我们的建议的有效性。
SegPGD for Evaluating and Boosting Segmentation
在语义分割中,给定分割模型
,干净样本
,其对应的标签Y
SegPGD: An Effective and Efficient Segmentation Attack
PGD迁移到分割上面,迭代公式可以写为:

损失函数:

该损失函数可以改写成由正确分类像素的损失和错误分类像素的损失两部分组成即:

第二项的损失通常很大,因为错误分类的像素会导致很大的交叉熵损失。在创建对抗性示例时,第二个损失项的梯度可以占主导地位。但是,第二项损失的增加并没有带来更好的对抗效果,因为所涉及的像素已经被错误分类了。为了在分割上实现高效的对抗示例,需要进行大量的攻击迭代,以便积累增加第一项损失的更新,以误导正确分类的像素。为了解决上述问题,考虑到分割中密集的像素分类,我们提出了特定于分割的PGD,称为SegPGD,它可以在等式4中相同的攻击迭代次数下创建更有效的对抗示例。

这里两个损失项分别用1 - λ和λ加权。注意,λ的选择是非平凡的。它不能很好地通过简单地设置λ = 0,其中只考虑正确分类的像素。在这种情况下,先前错误分类的像素可以在几次攻击迭代后再次变为良性,因为在更新扰动时它们被忽略了。这一说法也与之前的观测结果[48,45]一致,即对抗性扰动对小噪声也很敏感。此外,由于类似的原因,将λ设置为[0,0.5]中的固定值并不总是会导致更好的攻击性能。当大多数像素分类在几次攻击迭代后被欺骗时,对错误分类的像素减少权重可以使其中一些重新成为良性的 采用动态调节λ的方式,关注前几次攻击迭代中欺骗正确的像素分类,然后在最后几次迭代中类似地对待错误的像素分类:

Convergence Analysis of SegPGD
第i个像素的交叉熵损失为:

优化目标为:

这其中

进而PGD可以表示为

SegPGD:

本文提出了一种新的分割收敛准则,称为MisRatio,其定义为错误分类像素与所有输入像素的比率
第一步是更新对抗样本:

对于几乎所有错分类像素k∈P F (X0), X1的第k个像素仍然是错分类的,因为自然错分类一般对小的对抗性噪声不敏感。这种说法也适用于PGD更新规则。此外,我们的SegPGD可以将X0的部分像素k∈pt转换为X1的错误分类像素。但是,由于PGD的更新方向也考虑了X0的错分类像素,因此效果较差。因此,我们的SegPGD可以在第一步实现比PGD更高的MisRatio。
中间步骤一般是利用所有像素分类损失来更新对抗样本。在所有中间步骤中,SegPGD和PGD都利用所有像素分类损失的梯度来更新对抗示例。不同之处在于,我们的SegPGD对正确分类的像素分类的损失分配了更多的权重。分配的值取决于更新迭代t。我们的SegPGD更专注于在最初的几次迭代中愚弄正确分类的像素,然后平等地对待这两个准像素。通过这样做,在相同的攻击迭代下,我们的SegPGD可以实现比PGD更高的MisRatio。

Segmentation Adversarial Training with SegPGD
对抗训练作为最有效的防御方法之一,在分类任务中得到了广泛的研究。在分类中,应用对抗性训练的主要挑战是计算成本。它需要多次梯度传播来生成对抗图像,这使得对抗训练速度较慢。事实上,用对抗性训练训练一个健壮的网络比训练一个非健壮的等效[37]要多花3-30倍的时间。分割任务使得对抗性训练更具挑战性。需要更多的攻击迭代来创建有效的对抗示例,以提高分割的鲁棒性。例如,需要超过100次攻击迭代才能欺骗分段[50]。在这项工作中,我们通过应用SegPGD作为底层攻击来改进分割对抗训练。SegPGD作为一种高效的分割攻击方法,可以比目前流行的PGD生成更有效的对抗实例。通过将创建的对抗性示例注入到训练数据中,使用SegPGD进行对抗性训练可以在相同的计算成本下实现更健壮的分割模型

相关文章:
SegPGD
在这项工作中,我们提出了一种有效和高效的分割攻击方法,称为SegPGD。此外,我们还提供了收敛性分析,表明在相同次数的攻击迭代下,所提出的SegPGD可以创建比PGD更有效的对抗示例。此外,我们建议应用我们的Seg…...
ESP-IDF + Vscode ESP32 开发环境搭建以及开发入门
ESP-IDF Vscode ESP32 开发环境搭建以及开发入门 文章目录ESP-IDF Vscode ESP32 开发环境搭建以及开发入门1. 前言2. 下载开发工具3. 配置工具4. 创建工程5. 解决vscode找不到头文件,波浪线警告6. 添加自己的组件6.1 组件说明6.2 添加项目组件6.3 添加扩展组件7. …...
SpringMvc的请求和响应
SpringMvc的数据响应 1.springmvc的数据相应方式 (1)页面跳转 直接返回字符串 通过ModelAndView对象返回 (2)回写数据 直接返回字符串 返回对象或集合 页面跳转 jsp页面 <% page contentType"text/html;charsetUTF-8&q…...
【Vue3】首页主体-面板组件封装
首页主体-面板组件封装 新鲜好物、人气推荐俩个模块的布局结构上非常类似,我们可以抽离出一个通用的面板组件来进行复用 目标:封装一个通用的面板组件 思路分析 图中标出的四个部分都是可能会发生变化的,需要我们定义为可配置主标题和副标题…...
部署 K8s 集群
1 .部署k8s的两种方式目前生产部署Kubernetes集群主要有两种方式:kubeadmKubeadm是一个K8s部署工具,提供kubeadm init和kubeadm join,用于快速部署Kubernetes集群。二进制包从github下载发行版的二进制包,手动部署每个组件&#x…...
关于北京君正:带ANC的2K网络摄像头用户案例
如果远程办公是您的未来,或者您经常通过视频通话与远方的朋友和亲戚交谈,那么您可以考虑购买网络摄像头以显著改善您的沟通。Anker PowerConf C200是个不错的选择。 Anker PowerConf C200专为个人工作空间而设计,能够以每秒30帧的速度拍摄2K…...
ccc-Backpropagation-李宏毅(7)
文章目录NotationBackpropagationForward passBackward passSummaryNotation 神经网络求解最优化Loss function时参数非常多,反向传播使用链式求导的方式提升计算梯度向量时的效率,链式法则如下: Backpropagation 损失函数计算为所有样本…...
找出字符串中第一个匹配项的下标-力扣28-java
一、题目描述给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从 0 开始)。如果 needle 不是 haystack 的一部分,则返回 -1 。示例 1:输入:hayst…...
SpringBoot 监听Redis key过期回调
SpringBoot 监听Redis key过期回调 场景 Spring boot实现监听Redis key失效事件可应对某些场景例如:处理订单过期自动取消、用户会员到期… 开启Redis键过期回调通知 Redis默认是没有开启键过期监听功能的,需要手动在配置文件中修改。Linux操作系统 修…...
蓝桥杯C/C++VIP试题每日一练之回形取数
💛作者主页:静Yu 🧡简介:CSDN全栈优质创作者、华为云享专家、阿里云社区博客专家,前端知识交流社区创建者 💛社区地址:前端知识交流社区 🧡博主的个人博客:静Yu的个人博客 🧡博主的个人笔记本:前端面试题 个人笔记本只记录前端领域的面试题目,项目总结,面试技…...
四控、三管、一协调
四控指的是进度控制,质量控制,成本控制,变更控制。三管指的是合同管理,安全管理,资料管理。一协调指的是协调甲方,总包及设备材料供应方的关系。信息系统工程监理是指依法设立且具备相应资质的信息系统工程…...
jdk19下载与安装教程(win10)超详细
一、下载安装步骤 1、官网下载还需要注册,可以点【我的网盘】目录下载,目录也有其它低版本的,如果有需要大家根据需要自行选择。 2、下载后直接点击安装程序,点击【运行】。这里我使用的是64位的。 3、点击【下一步】。 4、默认安…...
来来来,手摸手写一个hook
hello,这里是潇晨,今天就带着大家一起来手写一个迷你版的hooks,方便大家理解hook在源码中的运行机制,配有图解,保姆级的教程,只求同学一个小小的👍,🐶。 第一步…...
【C++】AVL树
目录 1 简介 2 实现 2.1 框架构建 2.2 插入操作 2.2.1 平衡因子的更新 2.2.2 平衡因子异常时树的调整 3 检验 1 简介 AVL树基于二叉搜索树之上,又对其提出了平衡的要求,即:当向二叉搜索树插入新节点后,保证每个节点的左右…...
Mybatis源码(2) - SqlSessionTemplate的介绍及创建过程
0. 前言1. Spring对SqlSessionTemplate的管理1.1. SqlSessionTemplate的创建:1.2. MapperProxy中sqlSession的来源:2. SqlSessionInterceptor中的getSqlSession0. 前言 众所周知😏:MyBatis通过SqlSessionFactory 创建SqlSession去调用Executo…...
女生做大数据有发展前景吗?
当前大数据发展前景非常不错,且大数据领域对于人才类型的需求比较多元化,女生学习大数据也会有比较多的工作机会。大数据是一个交叉学科涉及到的知识量比较大学习有一定的难度,女生比较适合大数据采集和大数据分析方向的工作岗位。 大数据采…...
Git实用指令记录
config 用例:对git最先要做的一个操作就是配置用户名和邮箱,否则无法commit查看所有可以config的条目,非常之多$ git config --list core.symlinksfalse core.autocrlftrue core.fscachetrue color.interactivetrue color.uiauto help.forma…...
复杂美公链技术重要特色:平行公链架构
复杂美公链技术Chain33从11月开源至今,获得众多合作方的认可,其中首创的平行公链架构被百度、阿里、360等机构认可并跟进研究,这也说明了平行公链或许是区块链普及应用的重要解决方案之一。 平行公链(以下简称平行链)是…...
Java——进制转换的一些内容
Java——进制转换的一些内容1.16进制字符串String转字节数组byte[]2.16进制字符串String转10进制数字int3.字节数组byte[]转字符串String4.16进制字符串String-->byte[]-->String(使用ByteBuffer转换)5.字节数组byte[]转字符数组char[]6.字节byte转…...
使用 Nodejs、Express、Postgres、Docker 在 JavaScript 中构建 CRUD Rest API
让我们在 JavaScript 中创建一个 CRUD rest API,使用:节点.js表达续集Postgres码头工人码头工人组成介绍这是我们将要创建的应用程序架构的架构:我们将为基本的 CRUD 操作创建 5 个端点:创造阅读全部读一个更新删除我们将使用以下…...
19c补丁后oracle属主变化,导致不能识别磁盘组
补丁后服务器重启,数据库再次无法启动 ORA01017: invalid username/password; logon denied Oracle 19c 在打上 19.23 或以上补丁版本后,存在与用户组权限相关的问题。具体表现为,Oracle 实例的运行用户(oracle)和集…...
云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?
大家好,欢迎来到《云原生核心技术》系列的第七篇! 在上一篇,我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在,我们就像一个拥有了一块崭新数字土地的农场主,是时…...
通过Wrangler CLI在worker中创建数据库和表
官方使用文档:Getting started Cloudflare D1 docs 创建数据库 在命令行中执行完成之后,会在本地和远程创建数据库: npx wranglerlatest d1 create prod-d1-tutorial 在cf中就可以看到数据库: 现在,您的Cloudfla…...
【网络安全产品大调研系列】2. 体验漏洞扫描
前言 2023 年漏洞扫描服务市场规模预计为 3.06(十亿美元)。漏洞扫描服务市场行业预计将从 2024 年的 3.48(十亿美元)增长到 2032 年的 9.54(十亿美元)。预测期内漏洞扫描服务市场 CAGR(增长率&…...
STM32F4基本定时器使用和原理详解
STM32F4基本定时器使用和原理详解 前言如何确定定时器挂载在哪条时钟线上配置及使用方法参数配置PrescalerCounter ModeCounter Periodauto-reload preloadTrigger Event Selection 中断配置生成的代码及使用方法初始化代码基本定时器触发DCA或者ADC的代码讲解中断代码定时启动…...
智能在线客服平台:数字化时代企业连接用户的 AI 中枢
随着互联网技术的飞速发展,消费者期望能够随时随地与企业进行交流。在线客服平台作为连接企业与客户的重要桥梁,不仅优化了客户体验,还提升了企业的服务效率和市场竞争力。本文将探讨在线客服平台的重要性、技术进展、实际应用,并…...
在四层代理中还原真实客户端ngx_stream_realip_module
一、模块原理与价值 PROXY Protocol 回溯 第三方负载均衡(如 HAProxy、AWS NLB、阿里 SLB)发起上游连接时,将真实客户端 IP/Port 写入 PROXY Protocol v1/v2 头。Stream 层接收到头部后,ngx_stream_realip_module 从中提取原始信息…...
[10-3]软件I2C读写MPU6050 江协科技学习笔记(16个知识点)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16...
在Ubuntu中设置开机自动运行(sudo)指令的指南
在Ubuntu系统中,有时需要在系统启动时自动执行某些命令,特别是需要 sudo权限的指令。为了实现这一功能,可以使用多种方法,包括编写Systemd服务、配置 rc.local文件或使用 cron任务计划。本文将详细介绍这些方法,并提供…...
现代密码学 | 椭圆曲线密码学—附py代码
Elliptic Curve Cryptography 椭圆曲线密码学(ECC)是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础,例如椭圆曲线数字签…...
