来自 | 知乎
作者 | Greene
https://zhuanlan.zhihu.com/p/361105702
报道 | 机器学习算法与自然语言处理公众号
本文仅作学术分享,若侵权,请联系后台删文处理
然而,Transformer 训练起来算力要求大,对抗训练加 Transformer 训练起来算力要求就是大上加大,好在我们不用亲自花费精力去实验,或者实验到一半的你也可以先休息一下,因为在 arXiv 上已经出现了研究 Transformer 的稳健性的论文。
第一篇映入眼帘的便是 2021年3月26日 公开的 Transformer 的老家谷歌做的这篇:
Understanding Robustness of Transformers for Image Classification
arXiv:2103.14586
首先,Transformer 也存在对抗样本(Adversarial Example),这依然是一个问题,不过,针对 Transformer 的对抗扰动和针对 CNN 的对抗扰动看起来确实不太一样:
说明 Transformer 和 CNN 摔跤的地方不太一样。Transformer 的对抗扰动有明显的块(Patch)间差异,看起来似乎是每一块单独生成的对抗样本拼接而成的。他们使用 PGD 和 FGSM 测得的稳健性如下:
one gray level
猜测
老实说,这个结果让人有点失望,本来以为 Transformer 有从根本上杜绝对抗攻击的可能,但这些结果表明,并没有 o(╥﹏╥)o
不过令人欣慰的是,对抗样本在 Transformer 和 CNN 之间的迁移性不好:
[1]
就在这篇文章出现的三天后,arXiv上便再次出现了一篇研究 Transformer 的稳健性的论文:
On the Adversarial Robustness of Visual Transformers
arXiv:2103.15670
这篇论文最吸引人的地方是开篇的第一幅图:
[2]
然而看到后面却发现,好像结论跟谷歌没差,他们给出的PGD 攻击的结果如下:
在同样的威胁模型下(
),ViT-B/16 的稳健精确度为 11.05% ~ 4.54%,与谷歌那篇论文的结论基本一致。图 1 目测绘制的是威胁模型为
[3]
他们做了更加完善的迁移攻击的研究,结果如下:
颜色更深表示迁移性更强,对角线是自己跟自己的迁移攻击成功率,可以看到,结论与谷歌那篇中一致,对抗样本在 Transformer 与 CNN 之间的迁移性较低。
难能可贵的是,最耗时间的对抗训练他们也帮我们做了,这里使用的威胁模型是常见的
:
[4]
有可能
Transformer 是比 CNN 更稳健呢?还是稳健性跟 CNN 差不多呢?两篇论文,诸君自取。不过可以确定的是,Transformer 跟 CNN 跌倒的方式不同,他们确实学习到了很不一样的特征,而不一样的特征能得到相似的效果,不难理解为何关于 Transformer 的论文这么多了。
PS:Transformer 有没有合适的翻译额,中英混杂看起来很累,翻译成变压器或者变形金刚似乎不太好。
参考链接
^不过这里测试迁移性使用的是 PGD 攻击,之前已经有研究表明,就迁移性而言,使用 FGSM 这种单次攻击得到的对抗样本要更好一些
^Robust Bench https://robustbench.github.io/
^因为保存成图片这个级别的扰动基本就没有用了
^Tianyu Pang, Xiao Yang, Yinpeng Dong, Hang Su, Jun Zhu. Bag of Tricks for Adversarial Training. arXiv preprint 2020. arXiv:2010.00467 https://arxiv.org/abs/2010.00467
△长按添加小助手
扫描二维码添加小助手微信(
ID : HIT_NLP
)
请备注:
姓名-学校/公司-研究方向-城市
(如:小事-浙大-对话系统-北京)
深度学习/机器学习等
—
—
为您推荐
思考丨到底什么叫算法工程师的落地能力?
我在哥大读博的五年,万字总结
一个算法工程师的日常是怎样的?
那些年,我们一起追过的Backbone
从SGD到NadaMax,十种优化算法原理及实现
原文链接
↓ 推荐关注↓ DotNet 「DotNet」专注.NET和.NET Core技术传播,包括:C#、.NET、.NET Core跨平台技术、工具资源和相关动态。 4篇原创内容 Official Account 首先,我们要感谢正在阅读这篇文章的你,我们所有的产品开发都始于你也止于你,无论你是在开发者社区上发帖,还是填写了调查问卷,还是向我们发送了反馈意见,或者参与了客户研究,感谢你帮助我们继续引导 Visual Studio 的产品路线图。现在我有一个激动人心的消息要宣布,Visual Studio 2022 的第一个公开预览版将在今年夏天发布。 Visual Studio 的下一个主要版本将会更快、更平易近人、更轻量级,为初学者和构建工业规模解决方案的人而设计。更重要的是有史以来第一次,Visual Studio 将是64位的。用户体验将感觉更干净、更智能、
你是否也有这样的困惑: PyTorch官方 基本概念 一步步深入,手把手带你建模、训练、部署 短短八节课程,你就能真正上手PyTorch! 既然这么厉害,那么就来一起感受一下这份教程吧~ 课程大纲 1 .介绍PyTorch 虽然这次课程偏向实际操作,但是官方依旧非常友好地默认大家都是新手,从基础概念上开始逐步引入。 2.介绍PyTorch Tensors 在第二节课程中,开始正式引入概念: Tensor(张量) 大大加快了运行速度 具体课程如下: 典型例子 比如创建一个-1到1之间的随机张量,可以取它的绝对值,使得到的所有值都是正数;可以接受它的反正弦值,因为值在-1到1之间且返回一个的角度。 线性代数运算 数据统计、汇总,计算均值、标准差、最大值、最小值等等也都不在话下。 3.自动求导机制 自动求导是PyTorch能够快速运行的重要原因,它可以在深度学习中构建灵活框架。 推动基于反向传播的机器学习