Towards Efficient Adversarial Training on Vision Transformers

news2025/7/14 8:06:40

视觉转换器(ViT)作为卷积神经网络(CNN)的有力替代方案,受到了广泛的关注。最近的研究表明,vit也容易受到cnn等对抗实例的攻击。为了构建健壮的vit,一种直观的方法是应用对抗性训练,因为它已被证明是实现健壮cnn的最有效方法之一。然而,对抗训练的一个主要限制是它的计算成本很高。ViTs采用的自注意机制是一种计算强度较大的操作,其费用随着输入补丁数量的增加而成倍增加,使得ViTs上的对抗性训练更加耗时。在这项工作中,我们首先全面研究了各种视觉转换器上的快速对抗训练,并说明了效率与鲁棒性之间的关系。然后,为了加快vit的对抗训练,我们提出了一种有效的注意力引导对抗训练机制。具体来说,在对抗性训练中,我们依靠自注意的特性,采用注意引导的掉落策略,主动去除每一层的某些补丁嵌入。精简的自我注意模块显著加速了vit的对抗性训练。只需65%的快速对抗性训练时间,我们就能在具有挑战性的ImageNet基准测试中达到最先进的结果。

Fast Adversarial Training on Vision Transformers

我们将Fast AT应用于广泛的ViT。我们从五个视觉变压器家族中选择了19种不同尺寸的型号结果表明,vit始终比cnn更健壮。这与同时进行的模型鲁棒性研究相一致。我们得出以下新颖的结论:

  1. 在同一transformer家族中,较大的变压器并不总是具有更好的鲁棒性
  2. 在不同的变压器家族中,为更好的自然性能而设计的注意机制并不一定会带来更好的鲁棒性。
  3. SOTA vit存在严重的效率问题,并且需要比SOTA cnn更多的训练时间

Computation Intensity of ViTs

对于每个矩阵,我们在右下角显示它的形状,在右上角显示它的索引,输入特征为:X_{p \times d},它由维数为d的p个嵌入序列组成:

 每个嵌入都与输入图像的一个特定的非重叠补丁有关,ViT由一组块组成,每个块由两种计算组成:Multihead Self-Attention layer (MSA) and the Multi-Layer Perceptron layer (MLP).

在MSA中,X首先通过层归一化进行归一化,然后转换成query、key、value矩阵(K,Q,V):

对于多头设计,将形状为pxd的K、Q、V矩阵划分为h个头,每个部分的形状为p \times\frac{d}{h},以第一个头为例,A^{1}V^{1}进行重加权

 A^{1}所有的列向量都是softmax标准化的,因此每个列向量的和都是1,然后将每个磁头的AV值进行拼接转换为MSA的输出:

 MLP接收MSA的输出X‘,并使用层归一化和GELU激活转换每个嵌入:

 整个过程的复杂度为:

 Dropping Patch: The Flexibility of Self-Attention

 研究人员还研究了动态地丢弃ViT模型正向通道中的补丁或嵌入。结果表明,当丢弃一定数量的补丁时,前向推理可以显著加速。同时,模型的性能只会有轻微的下降。

在这项工作中,我们探索了一种补丁掉落策略,以加速对抗性训练,因为它实现了出色的权衡。我们首先测试了随机丢弃一定数量输入补丁的方案,看看它如何影响Fast AT的训练质量。我们在图3(b)中报告了结果,其中我们绘制了针对不同下降比率的训练时期的稳健性。请注意,在测试阶段的推断过程中不会丢弃任何补丁。减少输入补丁的数量,可以加快ViT的正向推理。令人惊讶的是,从图中我们还观察到,下降操作也稳定了对抗训练,缓解了灾难性过拟合的现象。如图3(a)所示,我们重复三次Fast AT,没有任何掉落。训练过程可能非常不稳定,有时准确率会降至零。我们推测正是由于丢片操作带来的正则化效应使Fast AT稳定。为了进一步验证这一猜想,我们测试了DeiT[72]中配备了dropout操作的vit。退出模块应用于自我关注模块之后。如图3(c)所示,注意缺失模块与掉落补丁一样,也稳定了Fast AT。与删除补丁不同,删除模块不能节省计算量。然而,在两种情况下,当使用下降时,最终的鲁棒精度都会降低。随机补丁掉落策略造成了一个困境。也就是说,它带来了加速和性能下降

Attention-Guided Adversarial Training 

对抗实例的质量取决于对抗攻击算法。攻击算法依赖于准确估计输入像素相对于损失函数的梯度。因此,实现我们目标的一个主要见解是删除几乎不会妨碍梯度估计的补丁。注意力的大小可以揭示嵌入的显著程度。

\frac{1}{h}\sum ^{h}_{i=1}A^{i}按行求和,并生成索引向量a,其列是加权平均参数,和恒为1 ,列表示生成的嵌入接收到每个输出嵌入的信息的多少,行揭示了每个输入嵌入对输出嵌入的影响程度,这个值因嵌入不同而不同,因此,我们选择基于它们在a中的大小来选择top-k嵌入,等式(4.3)可以写成:

 我们在AV的加权平均计算之后去掉了嵌入,使得嵌入的量级保持稳定。嵌入的数量将从p减少到k。为了充分利用每一层的注意力信息,我们提出了一种分层的指数下降方案。也就是说,在每一层中,我们都会掉落固定比例的补丁。因此,该方案将在更深的层上放置更多的嵌入,在更深的层中嵌入始终是更冗余的。我们将掉落率设置为0.9。在一个12层的ViT-Base模型上,最后一层将只处理31%的嵌入数量,并节省整个模型40%以上的FLOPs。算法1中显示了我们的注意力引导对抗训练的详细实现。我们的AGAT只是修改了训练过程。在测试过程中,我们使用原始模型进行预测。当涉及前馈过程时,类标签将不会被删除

 

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

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

相关文章

笔记本cpu温度多少正常?温度过高的4个常见原因

电脑CPU指的是中央处理器,它与电脑运行速度的快慢存在很大关系。如果电脑的处理器温度过高,就会影响我们电脑的运行速度,甚至出现蓝屏、卡顿的情况。 那么,对于电脑来说,笔记本cpu温度多少正常?有什么原因…

如何高效开发一个OA办公系统?

如何才能高效开发一个OA办公系统?这篇教你使用零代码工具从0-1搭建一个OA办公系统,无需代码基础,只要你懂业务,只需3步即可搭建! 先来看看效果—— 系统模板>>https://www.jiandaoyun.com/ 整个系统包含物资管理…

2023年可穿戴智能设备三大应用领域的发展前景

科技化进程的不断推进,让可穿戴智能设备在智能设备市场占比逐渐增多,通过传感器和无线通信等技术的结合,为用户带来良好体验,为智能设备市场发展注入活力。消费类电子产品也朝着移动化、便携化、可穿戴化方向发展,可穿…

【蓝桥杯集训7】并查集专题(3 / 5)

目录 并查集模板 1249. 亲戚 - 并查集 837. 连通块中点的数量 - 并查集 240. 食物链 - 带权并查集 238. 银河英雄传说 - 并查集模板 活动 - AcWing int find(int x) //返回x的祖宗结点状态压缩 {if(p[x]!x) p[x]find(p[x]);return p[x]; }p[find(a)]find(b); //合并操作…

Jest使用

一、测试到底测什么 提到测试的时候,即使是最简单的一个代码块可能都让初学者不知所措。最常问的问题的是“我怎么知道要测试什么?”。如果你正在写一个 Web 应用,那么你每个页面每个页面的测试用户交互的方式,就是一个很好的开端…

技术干货!如何玩转Salesforce测试类 (Test Class)?

测试类主要用于评估其他代码片段,确保一切正常且可靠地运行。这可以作为一种早期预警系统,提醒开发人员出现了错误或问题。 不同类型的程序化测试 测试类可以分为多种不同的类型,这改变了我们编写测试的方式及其预期结果。对于Apex测试类&…

【机器学习】DBSCAN密度聚类算法(理论 + 图解)

文章目录一、前言二、DBSCAN聚类算法三、DBSCAN算法步骤四、算法的理解五、常用评估方法:轮廓系数一、前言 之前学聚类算法的时候,有层次聚类、系统聚类、K-means聚类、K中心聚类,最后呢,被DBSCAN聚类算法迷上了。 为什么呢&…

等保2.0丨5分钟速览:小白也能看懂的等保2.0介绍

等级保护2.0自2019年12月1日正式实施起,到现在已经有两个多月的时间,但是仍然有刚刚进入等保领域的“萌新”反馈,需要小编再做一个简单的介绍,那么今天的干货内容,我们就来一起了解什么是等保2.0,最新实施的…

数学(一)-- LeetCode[12][13] 整数转罗马数字

1 整数转罗马数字 1.1 题目描述 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M。 字符数值I1V5X10L50C100D500M1000例如, 罗马数字 2 写做 II ,即为两个并列的 1。12 写做 XII &…

消灭EMC的三大利器:电容器/电感/磁珠

滤波电容器、共模电感、磁珠在EMC设计电路中是常见的身影,也是消灭电磁干扰的三大利器。 对于这三者在电路中的作用,相信还有很多工程师搞不清楚,文章从设计中详细分析了消灭EMC三大利器的原理。 1 、滤波电容 尽管从滤除高频噪声的角度…

json-server的入门到抢后端饭碗

1.json-server概述 json-server是一个 Node 模块,运行 Express 服务器,你可以指定一个 json 文件作为 api 的数据源。 通俗来说, json-server模拟服务端接口数据,一般用在前端人员可以不依赖后端的API开发,而在本地搭…

基于Spring Boot的教务管理系统

文章目录项目介绍主要功能截图:登录首页学生信息管理班级信息管理教师信息管理教师评价部分代码展示设计总结项目获取方式🍅 作者主页:Java韩立 🍅 简介:Java领域优质创作者🏆、 简历模板、学习资料、面试题…

Java服务导致CPU爆表异常排查

一、前言之前的博客有提到过面对Tomcat部署的java服务出现内存溢出该如何定位,今天来记录下Tomcat部署的java服务出现CPU爆表的事故该如何定位。二、正文针对Linux系统在处理CPU爆满时会有相关指令可以一步到位,相关资料度娘有很多。本文重点以Windows系…

九龙证券|权重股引领A股强势反弹 沪指创今年以来最大单日涨幅

周一,沪深两市强势反弹,上证综指全天收涨超2%,创本年以来最大单日涨幅。到收盘,上证综指报3290.34点,上涨2.06%;深证成指报11954.13点,上涨2.03%;创业板指报2480.79点,上…

JAVA集合之并发集合

从Java 5 开始,在java.util.concurrent 包下提供了大量支持高效并发访问的集合接口和实现类,如下图所示: 以CopyOnWrite开头的集合即写时复制的容器。通俗的理解是当我们往一个容器添加元素的时候,不直接往容器添加,而…

Spring依赖注入(一):字段注入的方式是如何工作的?

前言写这篇文章的起因,是因为我想写篇文章来分享一下:Spring是如何解决循环依赖的?然后在分析的时候,我发现如果要想说清楚Spring是如何解决循环依赖的,那么就必须得先说清楚什么是循环依赖?从字面理解&…

智慧公厕系统为管理方提供更丰富的管理手段

很多时候,当人们外出游玩、在写字楼办公、商场购物、乘坐地铁火车出行时,都会看到公厕前面会有排队的现象,特别是对于人口流动大,公厕设施少的公共区域,队伍更是极其的长。智慧公厕可以解决传统公厕的脏乱差、异味和管…

LeetCode 535. TinyURL 的加密与解密

TinyURL 是一种 URL 简化服务, 比如:当你输入一个 URL https://leetcode.com/problems/design-tinyurl 时,它将返回一个简化的URL http://tinyurl.com/4e9iAk 。请你设计一个类来加密与解密 TinyURL 。 加密和解密算法如何设计和运作是没有限…

从0探索NLP——KenLM

从0探索NLP——KenLM 导航帖 前情提要 上一篇文章介绍了传统统计语言模型——NGram的原理及其平滑方式,本次介绍一下基于这些理论的一种实现KenLM。 常用的N-gram训练工具有SRILM、IRSTLM、BerkeleyLM和KenLM等 KenLM比SRILM晚出来,训练速度也更快&am…

Kaldi语音识别技术(八) ----- 整合HCLG

Kaldi语音识别技术(八) ----- 整合HCLG 文章目录Kaldi语音识别技术(八) ----- 整合HCLGHCLG 概述组合LG.fst可视化 LG.fst组合CLG.fst可视化CLG.fst生成H.fst组合HCLG.fst生成HaCLG.fst生成HCLG.fstHCLG 概述 HCLG min(det(H o min(det(C o min(det(L o G))))) 将…