论文推荐:Rethinking Attention with Performers

news2024/11/14 18:59:15

重新思考的注意力机制,Performers是由谷歌,剑桥大学,DeepMind,和艾伦图灵研究所发布在2021 ICLR的论文已经超过500次引用

传统的Transformer的使用softmax 注意力,具有二次空间和时间复杂度。Performers是Transformer的一个变体,它利用一种新颖的通过正交随机特征方法 (FAVOR+) 快速注意力来有效地模拟 softmax 之外的可核化注意力机制来近似 softmax 注意力。

背景知识

传统Transformer由于softmax attention的存在,具有二次的空间和时间复杂度:

为解决上述问题,Performers提出了一些研究建议。

标准稀疏化技术

标准稀疏化技术。

左图:稀疏模式示例,其中令牌仅关注附近的其他令牌。

右图:在图注意力网络中,令牌仅关注图中的邻居,这些节点应该比其他节点具有更高的相关性。

Performer

LHS:标准注意力矩阵,其中包含每对条目的所有相似性分数,由对查询和键的 softmax 用 q 和 k 表示。

RHS:标准注意力矩阵可以通过低阶随机矩阵 Q’ 和 K’ 来近似,其中行编码原始查询/键的潜在随机非线性函数。对于常规的 softmax-attention,这里的转换非常紧凑,涉及指数函数和随机高斯投影。

传统的Transformer自注意模块有Q, K, V,其中Q和K生成A,然后与V相互作用。Performer中矩阵A用低秩随机矩阵Q '和K '来近似,这是一种新的基于正交随机特征的快速注意方法(FAVOR+)。FAVOR+适用于注意力块,使用矩阵A的形式如下:

qi/kj代表Q/K中的第i/ j个查询/键行向量,内核K定义为(通常是随机的)映射Φ:

对于Q ', K ',行分别为Φ(qi)和Φ(ki)。

这里^Att↔代表近似注意,下图中的括号表示计算顺序:

对于某些分布D∈P(R^ D)(如高斯分布),函数f1,…,fl,函数h和确定性向量ωi或ω1,…,ωm, iid ~ D取如下形式的Φ:

形成有效的注意机制:

左图:标准单向注意需要遮蔽注意矩阵来获得它的下三角部分。

右:可以通过前缀求和机制获得 LHS 的无偏近似,其中键和值向量的随机特征图外积的前缀和是动态构建的,并与查询随机特征向量左乘 获得结果矩阵中的新行。

通过(随机)特征映射的规则注意机制AV (在D^(-1)-renormalization之前)的近似值。虚线块表示计算顺序,并附有相应的时间复杂度。

有了低秩近似/矩阵分解/矩阵分解的概念,空间和时间的复杂性变得更加线性。

结果展示

NLP 数据集

Transformer和Performer的前向和反向传递速度和允许的最大长度的比较

“X”(OPT)表示可实现的最大可能加速,此时注意力只是返回v矩阵。

Performer 几乎达到线性时间和次二次的内存消耗(因为显式O(L2)注意矩阵没有存储)。通过比较“X”,Performer实现了几乎最佳的加速和内存效率。

蛋白质序列数据集

使用2019年1月发布的TrEMBL中的蛋白质序列训练36层模型。Reformer和Linformer在蛋白质数据集上的准确性显著下降。

Performer-ReLU(取f=ReLU)在(U)和(B)两种情况下都达到了最高的精度。(U:单向,B:双向)

通过将来自 TrEMBL 的蛋白质序列连接到长度 L = 8192,尝试了一种蛋白质基准来预测蛋白质组之间的相互作用。

较小的 Transformer (nlayer = 3) 很快就限制在 19%,而 Performer 能够持续训练到 24%。

ImageNet64(图像生成)

Performer/6 层匹配 Reformer/12 层,而 Performer/12 层匹配 Reformer/24 层。根据硬件(TPU 或 GPU),还发现通过针对 (U) 设置的 Jax 优化,Performer 可以比 Reformer 快 2 倍。Performer 使 Transformer 能够应用于更长的序列,而不受注意矩阵结构的限制,从而推进生物学和医学的应用(例如:非常长的蛋白质序列)。

论文地址:

[2021 ICLR] [Performer]Rethinking Attention with Performers

https://avoid.overfit.cn/post/4e5c93d291d94bd9ba1d06e0d8c0f4c9

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

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

相关文章

常用射频器件性能指标

IFM(Instantaneous FrequencyMeasurement):瞬时测频接收机; SOC(System on Chip):片上系统,可独立实现接收机功能; AIU:前端 一、放大器关键参数 1.1 -1dB压…

如何选择好的软件测试技术?

软件测试技术是指测试软件或软件一部分的方法或方式。每种测试技术都有其自身的优势。不同的技术针对不同类型的缺陷。因此,说一种技术是最好的是错误的。根据软件及其要求,一种测试技术可能比另一种更适合用于该目的。有时,结合使用不同的测…

安卓APP源码和设计报告——魔幻相机

课程设计报告书 Android大作业 学 院 计算机科学与工程学院 专 业 计算机科学与技术一班 学生姓名 小组成员 学生学号 指导教师 课程编号 课程学分 起始日期 教师评语 教师签名:日期: 成绩评定 备注 Android大作业 魔幻相机 一、选题背景 据统计&am…

[激光原理与应用-47]:《焊接质量检测》-4-普雷茨特激光焊接过程监控系统LWM分析

目录 第1章 激光焊接过程监控系统LWM概述 第2章 产品特性与功能 2.1 生产相关的信息 2.2 原始信息检测 2.3 焊接质量分析信息 2.4 缺陷报告与生产控制 2.5 LWM给客户带来的好处 2.6 适用范围 2.7 人机界面 (HMI) 第3章 焊接质量检测的原理 3.1 基本原理 3.2 技术规…

excel_阻止常数值串以科学计数法显示@数据分列@空格分隔符号分列数据

文章目录excel_阻止常数值串以科学计数法显示WPS设置某列的数据显示格式核心步骤数据-分列选择分割符设置文本类型收尾工作数据居中Office-Excelexcel_阻止常数值串以科学计数法显示 WPS 设置某列的数据显示格式 核心步骤 如果您的数据是普通数据,那么类型框里输入0就可以了…

太忙,没时间学?在职人员如何高效备考MBA?

对于很多在职人员来说,想要进一步深造提升学历,备考MBA无疑是个不错的选择。但近几年随着MBA考生人数的增长,其竞争也愈加激烈。因此想要取得好的成绩,成功上岸,不仅仅需要持续不断的努力,时间的科学管理和…

机器人与视觉,基于TCP(工具坐标)偏移

基于工具坐标系的移动偏转。 基于TCP旋转的特点在于,具有1个固定端点,多个活动端的特点。 我们在建立TCP左边偏移的时候,可以将2个点近似的模拟在同一个坐标系下 基于TCP偏转的特点在于,工作的时候,示教点与工作点的位…

CSS -- 03. CSS盒子模型

文章目录盒子模型1 盒子模型1.1 看透网页的本质1.2 盒子模型组成1.3 边框1.4 表格的细线边框1.5 边框会影响盒子实际大小1.6 内边距(padding)1.7 外边距(margin)1.8 外边距合并1.9 清除内外边距2 圆角边框3 盒子阴影4 文字阴影盒子…

netfilteriptables探讨(4)——nat的实现与使用

在之前的几篇文章中,我们讨论了netfilter与iptables的实现原理与基本用法。在netfilter&iptables的各种使用场景中,nat是最常用也是最复杂的用法之一。许多常用的网络使用模式都是通过nat iptables规则实现的,例如docker默认的bridge网络…

Netty_06_手写RPC基础版(实践类)

文章目录一、前言二、整体运行三、客户端和服务端3.1 客户端3.2 服务端3.3 RpcServerInitializer和RpcClientInitializer四、小结一、前言 常用的rpc框架:dubbo thrift gRPC rpc定义:remote proceducer call rpc目的/解决的问题: 像调用本地…

Nginx实战应用-负载均衡

在上篇文章的基础上我们再创建两个服务,三个服务的端口分别是 8081 8082 8083. 2.Nginx配置 upstream块 upstream name{…} upstream gupao{ server 192.168.12.1:8081; server 192.168.12.1:8082; server 192.168.12.1:8083; } server { location / { pr…

平均月薪15k+?自动化测试工程师?3个月教你从“点工”蜕变为“码农”

前言 一、自动化测试工程师平均收入【看图(来自职友集)】 基本收入都在15k左右,随着技术的越来越牛逼工资也就会越来越高。 我的职业生涯开始和大多数测试人一样,刚开始接触都是纯功能界面测试。那时候在一家电商公司做测试&…

[附源码]计算机毕业设计基于vue+mysql开发的考试系统Springboot程序

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

【PAT甲级 - C++题解】1092 To Buy or Not to Buy

✍个人博客:https://blog.csdn.net/Newin2020?spm1011.2415.3001.5343 📚专栏地址:PAT题解集合 📝原题地址:题目详情 - 1092 To Buy or Not to Buy (pintia.cn) 🔑中文翻译:买还是不买 &#x…

JAVA中的运算符-关系运算符

文章目录0 写在前面1 关系运算符说明2 举例3 写在最后0 写在前面 JAVA包含丰富的关系运算符,这些关系运算符最终结果一定是boolean类型。即两个结果:true false 1 关系运算符说明 符号说明ab,判断a和b的值是否相等,成立为true,…

游戏开发48课 性能优化6

3.7.2 算法优化 思路是找出最耗CPU的算法或逻辑,优化之。 空间换时间。利用预排序/预处理/缓存/动态规划等等思路换取CPU的性能。选取更快的算法。属于数据结构和算法的范畴,思路是将O(n2)降低成O(n)或O(logn),具体可以参看《算法导论》《游…

springcloud 服务消费及熔断

目录 1. 服务消费方式 1.1 RestTemplate 1.2 feign 2. 服务熔断(降级) 2.1 在微服务架构中服务熔断的必要性 2.2 hystrix 1. 服务消费方式 1.1 RestTemplate 传统情况下在java代码里访问restful服务,一般使用Apache的HttpClient。不过…

PMP内容2

PMP内容2目录概述需求:实现思路分析1.沟通管理2.监督沟通:3.风险管理4.5.实施采购控制采购相关方管理:相关方Survive by day and develop by night. talk for import biz , show your perfect code,full busy,skip hardness,make …

JavaWeb语法一:进程和线程的区别与联系

目录 1.进程的概念 1.1:进程控制块抽象(PCB) 1.2:进程调度的相关属性 1.2.1:进程的状态 1.2.2:优先级 1.2.3:上下文 1.2.4:记账信息 2:进程的虚拟地址空间 3.线程…

算法与数据结构29:四边形不等式技巧

四边形不等式技巧题目一题目二题目三四边形不等式技巧题目四题目五题目一 给定一个非负数组arr,长度为N, 那么有N-1种方案可以把arr切成左右两部分 每一种方案都有,min{左部分累加和,有部分累加和} 求这么多方案中,mi…