作者|魔王

来源|机器之心

基于注意力的架构为什么那么有效?近期谷歌等一项研究认为注意力并没有那么有用,它会导致秩崩溃,而网络中的另两个组件则发挥了重要作用:「跳过连接」有效缓解秩崩溃,「多层感知器」能够降低收敛速度。此外,该研究还提出了一种理解自注意力网络的新方式——路径分解。

基于注意力的架构在机器学习领域已经非常普遍,但人们对其有效性原因的理解仍然有限。

最近,来自谷歌和瑞士洛桑联邦理工学院(EPFL)的研究者提出了一种理解自注意力网络的新方式:将网络输出分解为一组较小的项,每个项包括一系列注意力头的跨层操作。基于该分解,研究者证明自注意力具备强大的「token uniformity」归纳偏置。

也就是说,如果没有跳过连接(skip connection)或多层感知器(MLP),其输出将双指数级收敛至秩 1 矩阵。另外,跳过连接和 MLP 还可以阻止输出的衰退。该研究在不同 Transformer 变体上的实验证实了这一收敛现象。

论文地址:https://arxiv.org/pdf/2103.03404.pdf

项目地址:https://github.com/twistedcubic/attention-rank-collapse

纯注意力以双指数级速率丢失秩

注意力机制最初旨在更好地学习长程序列知识,在 Transformer 网络中得到了有效使用。之后,基于注意力的架构逐渐渗透到多个机器学习应用领域,如自然语言处理、语音识别和计算机视觉。因此,开发一些工具,来理解 Transformer 和注意力的内在工作机制是非常重要的,这既可以帮助理解现有的模型,又能为未来设计更高效的模型做准备。

该研究对此类网络的操作和归纳偏置提供了新的见解。研究者惊讶地发现纯自注意力网络(SAN)——即不具备跳过连接(skip connection)和多层感知器(MLP)的 Transformer,会损失一部分表达能力,其损失程度与网络深度成双指数级关联。具体而言,研究者证明网络输出以三次方收敛速度收敛至秩 1 矩阵。

研究者利用随机矩阵的特性部分地推导出收敛界限,但其结果超出了想象。利用特殊堆叠自注意力模块的级联效应,研究者发现这类网络的收敛速度比标准理论所描述的快指数级。

此外,尽管之前有研究考虑了单个自注意力矩阵的秩,但该研究认为其结果首次说明了整个网络收敛至秩 1 矩阵的条件。

注意力机制不给力,Transformer 凭什么那么有效呢?

问题来了:如果 Transformer 的自注意力机制不给力,又是什么赋予了它优秀的能力呢?

该研究分析了三个重要组件:跳过连接、MLP 和层归一化,结果表明,跳过连接能够有效地缓解秩崩溃(rank collapse),MLP 则通过增加利普希茨常数来降低收敛速度。

MLP 的作用。

研究者通过证明在类 Transformer 的 SAN 架构变体上的收敛行为的上下界,描述了这些反作用力。研究结果揭示了跳过连接此前不为人知的重要作用,它的作用可不只是促进优化和梯度流动。

跳过连接的下界。

路径分解

在分析过程中,研究者提出了一种新的路径分解方式来研究自注意力网络。他们将 SAN 分解为弱耦合路径的线性组合,每一条「路径」对应一个深度单头 SAN。

直观来看,我们可以将原始网络中每一层的自注意力头看作不同的 gateway,一条路径遵循一系列 gateway 选择,每层一个 gateway(参见图 1)。结合秩崩溃分析,该研究结果表明具备跳过连接的深度 SAN 类似于多个弱相依浅层网络的集成

该研究的主要贡献如下:

1. 系统研究了 Transformer 的构造块,揭示自注意力与其反作用力(跳过连接和 MLP)之间的对抗影响。这揭示了跳过连接在促进优化之外的重要作用。

2. 提出一种通过路径分解来分析 SAN 的新方法,发现 SAN 是多个浅层网络的集成。

3. 在多个常见 Transformer 架构上进行实验,从而验证其理论。

实验

该研究首次在多个知名 Transformer 架构中测试了秩崩溃现象,用图示的方式表示一些 Transformer 变体的归纳偏置,并测试了路径有效性。

真实架构中的秩崩溃

为了验证其理论预测,研究者检查了三个知名 Transformer 架构的残差,分别是 BERT、Albert 和 XLNet。下图 2 绘制了网络训练前后每个层输出的相对残差:

该实验确认,移除跳过连接后,所有网络均出现快速秩崩溃。尽管 MLP 在缓解收敛方面似乎没太大帮助,但研究者注意到这一观察未必准确反映 Transformer 的运作原理:移除跳过连接会导致 MLP 输入出现极大的分布偏移。研究者希望网络重新训练会降低收敛速度。

可视化不同架构的偏差

为了实验验证 Transformer 架构不同组件的归纳偏置,研究者探索了循环使用单层 Transformer 来预测简单 2D 环状序列的行为。研究者训练网络直到它能够以接近 0 的损失记住环状轨迹上的下一步。下图 3 展示了模型在推断时预测的轨迹:

路径的有效性

SAN 可被视作多个不同长度(从 0 到 L)路径的集成,每一个路径包含不同的自注意力头序列。该研究对具备跳过连接的 SAN 进行的分析表明,路径有效性会随着路径长度的增加而降低,即使涉及的非线性运算数量增加了。为了验证这一假设,研究者将不同长度的路径分隔开,并评估其预测能力。

下图 4 展示了在序列记忆(Sequence memorization)、学习分类(Learning to sort)和凸包预测(Convex hull prediction)三项任务中的性能。研究者测试了不同的子集,并报告了五次重复试验的均值和标准差。至于推断,研究者还绘制了朴素分类器和整个训练模型(路径分解前)的准确率。

从上图中可以看到,短路径具备较强的预测能力,长度为 1 的路径在记忆、分类和凸包任务中分别获得了超过 0.8、0.6、0.65 的准确率。而较长路径的输出准确率并不比随机猜测好多少。由于凸包任务中存在类别不均衡现象,研究者使用多数类预测器来获取随机基线。尽管凸包任务中长短路径的准确率差异没那么大,但研究者观察到长路径的方差明显更大,这表明其比随机猜测好不了太多。长度为 0 的路径方差很小,但未获得和任务相关的有用信息(很可能是因为它们没有穷尽全局信息)。

????

现在,在「知乎」也能找到我们了

进入知乎首页搜索「PaperWeekly」

点击「关注」订阅我们的专栏吧

关于PaperWeekly

PaperWeekly 是一个推荐、解读、讨论、报道人工智能前沿论文成果的学术平台。如果你研究或从事 AI 领域,欢迎在公众号后台点击「交流群」,小助手将把你带入 PaperWeekly 的交流群里。

谷歌自锤Attention:纯注意力并没那么有用,Transformer组件很重要相关推荐

  1. 谷歌再一次打脸:纯注意力并没那么有用,Transformer组件很重要

    基于注意力的架构为什么那么有效?近期谷歌等一项研究认为注意力并没有那么有用,它会导致秩崩溃,而网络中的另两个组件则发挥了重要作用:「跳过连接」有效缓解秩崩溃,「多层感知器」能够降低收敛速度.此外,该研 ...

  2. Transformer组件很重要Attention is all you need

    点上方计算机视觉联盟获取更多干货 仅作学术分享,不代表本公众号立场,侵权联系删除 转载于:机器之心 AI博士笔记系列推荐 周志华<机器学习>手推笔记正式开源!可打印版本附pdf下载链接 基 ...

  3. 【TransformerCNNTiDE】从CNN到ViT,再从ViT到TiDE,回顾近十年顶刊和会议发表的关于Attention自注意力、Conv卷积机制以及最新诞生的TiDE模型的发展历程

    目录 一.CV中的Transformer介绍 二.Attention机制增强CNN 前言: 1. Attention Augmented Convolutional Networks(ICCV 201 ...

  4. 改进YOLOv5 | Stand-Alone Self-Attention | 针对视觉任务的独立自注意力层 | 搭建纯注意力FPN+PAN结构

    改进YOLOv5 | Stand-Alone Self-Attention | 搭建纯注意力Neck结构 论文地址:https://arxiv.org/abs/1906.05909 卷积是现代计算机视 ...

  5. Attention使用注意力机制的seq2seq 动手学深度学习v2

    1. Attention使用注意力机制的seq2seq 2. Attention使用注意力机制的seq2seq 代码实现 3. Q&A attention在搜索的时候,是在当前句子搜索. 一般 ...

  6. 计算机插上u盘就无法点亮,好U盘插电脑没反应怎么办?其实很简单可解决

    U盘插电脑没反应分很多种情况,有复杂的有简单的,但今天这里介绍的是最简单的一种故障情况,那就是驱动问题,首先100%确认U盘是正常的,因为在其他电脑上可以正常使用,而插入自己的电脑之后就提示驱动安装失 ...

  7. 施一公:我直到博士毕业,对研究也没兴趣!对未来很迷茫,也不知道将来要干什么......

    本文为施一公在北京大学的演讲,内容朴实无华但信息量极大,演讲中,施一公毫无保留的分享了自己的成长经历和心路历程.还分享了自己是如何从一个"准北大物理人",最后被成功"忽悠 ...

  8. 谷歌seo自建博客做外链有用吗?谷歌外链怎么做?

    本文分享利用自建博客来做外链是否对谷歌搜索排名有用 本文由光算创作,有可能会被修改或剽窃,我们佛系对待这种行为吧. 谷歌seo自建博客做外链有用吗? 答案是:100%有效. 关于自建博客这里有两个问题 ...

  9. Attention!注意力机制可解释吗?

    来源:哈工大SCIR 本文约9300字,建议阅读10+分钟. 本文将与您探讨注意力机制的可解释性问题. 序言 自2014年Bahdanau将Attention作为软对齐引入神经机器翻译以来,大量的自然 ...

最新文章

  1. 共谋大数据产业发展新篇章
  2. python 漂亮的excel_python 自定义漂亮的 excel 结果测试报告
  3. 切勿版本化Web API
  4. 从遇见到信任 | Apache Dubbo 的毕业之旅
  5. XML模板解析————Dom4j解析xml案例分析
  6. 小程序模板-评分星星
  7. LeetCode(506)——相对名次(JavaScript)
  8. 打开json文件的工具_Flutter中JSON转Model——在线生成
  9. oracle叶子节点函数,oracle tree计算叶子节点到根节点的乘积
  10. 可信任的人工智能(三)
  11. 黑鲨装机大师一键重装系统图文
  12. python正弦函数_Python之正弦曲线实现方法分析
  13. 各大电商平台API调用、上传图片到淘宝API接口
  14. 《信息物理融合系统(CPS)设计、建模与仿真——基于 Ptolemy II 平台》——1.2 域和计算模型...
  15. Vue 动态加载public图片和图片预览例子
  16. 七夕 | 情人节 | 用Python给你送个钻石戒指
  17. 编译原理——词法分析(1)
  18. Curl学习日记2 - 在Windows CMD命令行中使用Curl
  19. Android UI RecyclerView讲解
  20. 二十四种设计模式之策略模式

热门文章

  1. 链表的基本操作 java_JAVA实现单链表的基本操作
  2. react打包后图片丢失_如何快速构建React组件库
  3. ArrayList LinkedList与HashMap 实现原理
  4. oracle sql 数据库之间导入数据
  5. Angular JS 中的内置方法之表单验证
  6. TCP系列42—拥塞控制—5、Linux中的慢启动和拥塞避免(二)
  7. 分布式事务:两段式提交(最终一致性)
  8. HDUOJ---2112HDU Today
  9. UVA 11584 Partitioning by Palindromes 动态规划 入门
  10. vtun 接收和发送数据流程图