视觉Transformer中ReLU替代softmax,DeepMind新招让成本速降

点击蓝字 关注我们

关注并星标

从此不迷路

计算机视觉研究院

ba87b0701d965ec8498180d674ba713d.gif

公众号ID计算机视觉研究院

学习群扫码在主页获取加入方式

计算机视觉研究院专栏

Column of Computer Vision Institute

Deepmind 出新招,ReLU 尽展优势。

46ae36f536b60332f0fc5316cddde1ea.gif

Transformer 架构已经在现代机器学习领域得到了广泛的应用。注意力是 transformer 的一大核心组件,其中包含了一个 softmax,作用是产生 token 的一个概率分布。softmax 有较高的成本,因为其会执行指数计算和对序列长度求和,这会使得并行化难以执行。

Google DeepMind 想到了一个新思路:用某种不一定会输出概率分布的新方法替代 softmax 运算。他们还观察到:在用于视觉 Transformer 时,使用 ReLU 除以序列长度的注意力可以接近或匹敌传统的 softmax 注意力。

视觉Transformer中ReLU替代softmax,DeepMind新招让成本速降_第1张图片

论文:https://arxiv.org/abs/2309.08586

这一结果为并行化带来了新方案,因为 ReLU 注意力可以在序列长度维度上并行化,其所需的 gather 运算少于传统的注意力。

方法

注意力

注意力的作用是通过一个两步式流程对 d 维的查询、键和值 {q_i, k_i, v_i} 进行变换。

在第一步,通过下式得到注意力权重 dcc8cf1ae9da1f9df656bdded08fe425.png

视觉Transformer中ReLU替代softmax,DeepMind新招让成本速降_第2张图片

其中 ϕ 通常是 softmax。

下一步,使用这个注意力权重来计算输出84b15b8c93d761febf259bedeac50274.png 这篇论文探索了使用逐点式计算的方案来替代 ϕ。

ReLU 注意力

DeepMind 观察到,对于 1 式中的 ϕ = softmax,4c48198c868252399701ee0c02ddde4b.png是一个较好的替代方案。他们将使用 852c4ce9e254ee8ffef4bdfff13f6a91.png的注意力称为 ReLU 注意力。

已扩展的逐点式注意力

研究者也通过实验探索了更广泛的 d7e1de641f3e22525db02e0c7380f22a.png 选择,其中 α ∈ [0, 1] 且 h ∈ {relu,relu² , gelu,softplus, identity,relu6,sigmoid}。

序列长度扩展

他们还观察到,如果使用一个涉及序列长度 L 的项进行扩展,有助于实现高准确度。之前试图去除 softmax 的研究工作并未使用这种扩展方案。

在目前使用 softmax 注意力设计的 Transformer 中,有 27191f807f4b54f123371f6b1a0083b7.png ,这意味着 1fde955f53615d211501bf7dc5425cc4.png 尽管这不太可能是一个必要条件,但 d7cfbf17a1814e2b7efa88faa1241a70.png能确保在初始化时 6c7584ce1bcf63fd7fb3415034326e96.png 的复杂度是 4de42b172475ab17ffcb1c3641fb4891.png ,保留此条件可能会减少替换 softmax 时对更改其它超参数的需求。

在初始化的时候,q 和 k 的元素为 O (1),因此 1fc6a54abe4a3deb3be6334d0d44332b.png 也将为 O (1)。ReLU 这样的激活函数维持在 O (1),因此需要因子b0648e1722e1e562876898415658273f.png才能使 cee8beb7848e552d0022ad3efbc0d96e.png 的复杂度为  7c76e0356bd7aa004f2571a947d4a51e.png

实验与结果

主要结果

图 1 说明在 ImageNet-21k 训练方面,ReLU 注意力与 softmax 注意力的扩展趋势相当。X 轴展示了实验所需的内核计算总时间(小时)。ReLU 注意力的一大优势是能在序列长度维度上实现并行化,其所需的 gather 操作比 softmax 注意力更少。

视觉Transformer中ReLU替代softmax,DeepMind新招让成本速降_第3张图片

序列长度扩展的效果

图 2 对比了序列长度扩展方法与其它多种替代 softmax 的逐点式方案的结果。具体来说,就是用 relu、relu²、gelu、softplus、identity 等方法替代 softmax。X 轴是 α。Y 轴则是 S/32、S/16 和 S/8 视觉 Transformer 模型的准确度。最佳结果通常是在 α 接近 1 时得到。由于没有明确的最佳非线性,所以他们在主要实验中使用了 ReLU,因为它速度更快。

视觉Transformer中ReLU替代softmax,DeepMind新招让成本速降_第4张图片

qk-layernorm 的效果

主要实验中使用了 qk-layernorm,在这其中查询和键会在计算注意力权重前被传递通过 LayerNorm。DeepMind 表示,默认使用 qk-layernorm 的原因是在扩展模型大小时有必要防止不稳定情况发生。图 3 展示了移除 qk-layernorm 的影响。这一结果表明 qk-layernorm 对这些模型的影响不大,但当模型规模变大时,情况可能会不一样。

视觉Transformer中ReLU替代softmax,DeepMind新招让成本速降_第5张图片

添加门的效果

先前有移除 softmax 的研究采用了添加一个门控单元的做法,但这种方法无法随序列长度而扩展。具体来说,在门控注意力单元中,会有一个额外的投影产生输出,该输出是在输出投影之前通过逐元素的乘法组合得到的。图 4 探究了门的存在是否可消除对序列长度扩展的需求。总体而言,DeepMind 观察到,不管有没有门,通过序列长度扩展都可以得到最佳准确度。也要注意,对于使用 ReLU 的 S/8 模型,这种门控机制会将实验所需的核心时间增多大约 9.3%。

视觉Transformer中ReLU替代softmax,DeepMind新招让成本速降_第6张图片

转自机器之心

© THE END 

转载请联系本公众号获得授权

50fbfebe79c6b0377029ce98409d04c2.gif

计算机视觉研究院学习群等你加入!

ABOUT

计算机视觉研究院

计算机视觉研究院主要涉及深度学习领域,主要致力于目标检测、目标跟踪、图像分割、OCR、模型量化、模型部署等研究方向。研究院每日分享最新的论文算法新框架,提供论文一键下载,并分享实战项目。研究院主要着重”技术研究“和“实践落地”。研究院会针对不同领域分享实践过程,让大家真正体会摆脱理论的真实场景,培养爱动手编程爱动脑思考的习惯!

视觉Transformer中ReLU替代softmax,DeepMind新招让成本速降_第7张图片

 往期推荐 

  • Drone-YOLO:一种有效的无人机图像目标检测

  • 机场项目:解决飞行物空间大小/纵横比、速度、遮挡等问题引起的实时目标检测问题

  • 2PCNet:昼夜无监督域自适应目标检测(附原代码)

  • YOLO-S:小目标检测的轻量级、精确的类YOLO网络

  • 大改Yolo框架 |  能源消耗极低的目标检测新框架(附论文下载)

  • 改进的检测算法:用于高分辨率光学遥感图像目标检测

  • 小米平板6 Max-Yolo:在便携终端上实时检测不再是难题

  • 旋转角度目标检测的重要性!!!(附源论文下载)

  • PE-YOLO:解决黑夜中的目标检测难点

  • EdgeYOLO:边缘设备上实时运行的目标检测器及Pytorch实现

  • Q-YOLO:用于实时目标检测的高效推理

  • 首个全量化Vision Transformer的方法FQ-ViT,AI大模型落地不远了!

  • YoloV8与ChatGPT互通,这功能是真的强大!

  • GPT理解的CV:基于Yolov5的半监督目标检测

你可能感兴趣的:(transformer,深度学习,人工智能)