机器之心 | 预训练无需注意力,扩展到4096个token不成问题,与BERT相当

news2024/11/15 9:43:38

本文来源公众号“机器之心”,仅用于学术分享,侵权删,干货满满。

原文链接:预训练无需注意力,扩展到4096个token不成问题,与BERT相当

本文提出了双向门控 SSM(BiGS)模型,结合基于状态空间模型(SSM)的 Routing 层和基于乘法门的模型架构,在不使用注意力的情况下能够复制 BERT 预训练结果,并可扩展到 4096 个 token 的长程预训练,不需要近似。

Transformer 作为 NLP 预训练模型架构,能够有效的在大型未标记的数据上进行学习,研究已经证明,Transformer 是自 BERT 以来 NLP 任务的核心架构。

最近的工作表明,状态空间模型(SSM)是长范围序列建模有利的竞争架构。SSM 在语音生成和 Long Range Arena 基准上取得了 SOTA 成果,甚至优于 Transformer 架构。除了提高准确率之外,基于 SSM 的 routing 层也不会随着序列长度的增长而呈现二次复杂性。

本文中,来自康奈尔大学、 DeepMind 等机构的研究者提出了双向门控 SSM (BiGS),用于无需注意力的预训练,其主要是将 SSM routing 与基于乘法门控(multiplicative gating)的架构相结合。该研究发现 SSM 本身在 NLP 的预训练中表现不佳,但集成到乘法门控架构中后,下游准确率便会提高。

实验表明,在受控设置下对相同数据进行训练,BiGS 能够与 BERT 模型的性能相匹配。通过在更长的实例上进行额外预训练,在将输入序列扩展到 4096 时,模型还能保持线性时间。分析表明,乘法门控是必要的,它修复了 SSM 模型在变长文本输入上的一些特定问题。

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

方法介绍

SSM 通过以下微分方程将连续输入 u (t) 与输出 y (t) 联系起来:

对于离散序列,SSM 参数被离散化,其过程可以近似为:

这个方程可以解释为一个线性 RNN,其中 x_k 是一个隐藏状态。y 也可以用卷积计算:

Gu 等人展示了一种在神经网络中使用 SSM 的有效方法,他们开发了参数化 A 的方法,称为 HiPPO,其产生了一个稳定而高效的架构,称为 S4。这保留了 SSM 对长期序列建模的能力,同时比 RNN 训练更有效。最近,研究人员提出了 S4 的简化对角化版本,它通过对原始参数更简单的近似实现了类似的结果。在高层次上,基于 SSM 的 routing 为神经网络中的序列建模提供了一种替代方法,而无需二次计算的注意力成本。

预训练模型架构

SSM 能取代预训练中的注意力吗?为了回答这个问题,该研究考虑了两种不同的架构,如图 1 所示的堆叠架构(STACK)和乘法门控架构(GATED)。

具有自注意力的堆叠架构相当于 BERT /transformer 模型,门控架构是门控单元的双向改编,最近也被用于单向 SSM。带有乘法门控的 2 个序列块(即前向和后向 SSM)夹在前馈层中。为了进行公平比较,门控架构的大小保持与堆叠架构相当。

图 1:模型变量。STACK 是标准 transformer 架构,GATED 为基于门控单元。对于 Routing 组件(虚线),该研究同时考虑双向 SSM(如图所示)和标准自注意力。门控(X)表示逐元素乘法。

实验结果 

预训练

表 1 显示了 GLUE 基准测试中不同预训练模型的主要结果。BiGS 在 token 扩展上复制了 BERT 的准确率。这一结果表明,在这样的计算预算下,SSM 可以复制预训练 transformer 模型的准确率。这些结果明显优于其他基于非注意力的预训练模型。想要达到这个准确率,乘法门控是必要的。在没有门控的情况下,堆叠 SSM 的结果明显更差。为了检查这种优势是否主要来自于门控的使用,本文使用 GATE 架构训练了一个基于注意力的模型;然而,结果显示该模型的效果实际上低于 BERT。

表 1:GLUE 结果。(Top)在控制设置下,不同架构和 routing 的比较。参见图 2 了解详细信息。(Bottom) 报告了基于 CNN、LSTM 和 FNet 的其他非注意力预训练模型的可比结果。

Long-Form 任务

表 2 结果显示,可以将 SSM 与 Longformer EncoderDecoder (LED) 和 BART 进行比较,但是,结果显示它在远程任务中表现得也不错,甚至更胜一筹。与其他两种方法相比,SSM 的预训练数据要少得多。即使 SSM 不需要在这些长度上进行近似,长格式也依旧很重要。

表 2:SCROLLS Encoder 测试结果。基线模型都是编码器 —— 解码器模型,一个基于 Longformer (LED),另一个基于 BART。输入的长度有截断。

更多内容请查看原论文。

THE END !

文章结束,感谢阅读。您的点赞,收藏,评论是我继续更新的动力。大家有推荐的公众号可以评论区留言,共同学习,一起进步。

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

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

相关文章

vben admin里面换行useTable里面的columns

{title: 标题,dataIndex: systemName,width: 300, minWidth: 300,customRender: ({ text }: { text: string }) > {return ${text};},}, customRender: ({ text }: { text: string }) > { return ${text}; },这行代码. 方法② ellipsis: false,加这个进去&#xff…

半导体产业核心环节有哪些?2024年中国半导体产业研究报告大揭秘!

半导体指常温下导电性能介于导体与绝缘体之间的材料。半导体应用在集成电路、消费电子、通信系统、光伏发电、照明应用、大功率电源转换等领域。半导体产业经济则是指以半导体产品为核心的经济活动,包括芯片设计、制造、封装测试及应用等。它是全球经济的支柱&#…

Linux 硬件学习 s3c2440 arm920t蜂鸣器

1.查找手册时钟图,输入12m想要通过pll得到400m的信号 2.对比pll值,找到最近的为405,得到pll中mdiv为127,pdiv为2,sdiv为1 3.想要得到fclk400,hclk100,pclk50,对比分频比例&#xff0…

Unet改进24:添加DualConv||轻量级深度神经网络的双卷积核

本文内容:在不同位置添加DualConv 目录 论文简介 1.步骤一 2.步骤二 3.步骤三 4.步骤四 论文简介 卷积神经网络(CNN)架构通常对内存和计算要求很高,这使得它们在硬件资源有限的嵌入式系统中不可行。 我们提出了双卷积核(DualConv)来构建轻量级深度神经网络。DualConv结…

亚马逊云科技 Gen BI 2024-09-04 上海站QuickSight

机缘 我又来了,感觉不上班比上班还要忙 天天像特种工一天,今天有度过的充实的一天,上午去图书馆,下午去了 亚马逊云科技 Gen BI 技术体验日 。 具体照片可以去 这里看 哈哈,这个就是我了 商业智能的趋势 根据艾瑞咨…

WildCard平台:什么是 ChatGPT 随心用?什么是 Claude 随心用?什么是随心用全能套餐?

最近胖虎收到很多私信都在询问,很多人搞不清楚什么是 ChatGPT 随心用?什么是 Claude 随心用?什么是随心用全能套餐?下面就对三种套餐做了全面的QA解答。 如果想直接使用随心用,或者订阅ChatGPT,或者支付 C…

示波器基础知识汇总(1)

系列文章目录 1.元件基础 2.电路设计 3.PCB设计 4.元件焊接 5.板子调试 6.程序设计 7.算法学习 8.编写exe 9.检测标准 10.项目举例 11.职业规划 文章目录 前言1、电子信号2、波属性①、幅度②、相移③、周期④、频率⑤、波形正弦波方波/矩形波三角波/锯齿波脉冲复合波 3、信…

YOLOv9模型训练或测试过程中,无法打印模型的GFLOPs

项目场景: 在YOLOv9模型的改进中,常常需要替换一些模块来提高模型的精度。但在评价模型大小规模的时候需要根据模型的参数量、计算量进行评定,一般在模型的训练文件train.py,或者是test.py还有models/yolo.py都会输出这些数据。 …

idea单元测试报错找不到主类

报错截图 主要是单测中没有配置类 在下面的command line 中选择jar manifest 因为条参数过长,这里设置只使用主类 详细解释见: https://www.jianshu.com/p/8322b3b17040

Web开发的艺术:C#开发中实现代码简洁性与规范性的终极指南

一、变量的要求 变量名 1.简短有意义: 合适: student_count,student_ids,student_enable_list, water_price 不合适: numberOfItemsInTheCart, totalPriceOfTheOrderInTheShoppingCart,temp, data,list 2.变量名之间不要太像: 合适: totalAmount, disc…

传统CV算法——边缘检测算法Canny算法实战

Canny 算法 边缘:我的理解是在图像处理的过程中,针对我们图像处理的过程中,梯度变化以较大的地方能够让我们能够快速辨识,针对一个人脸,脸上有一些平滑的地方(没错我针对美颜的),与…

JavaScript 条件分支语句if...else

if 语句 只有当指定条件为 true 时&#xff0c;该语句才会执行代码 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name…

Introduction to Deep Learning with PyTorch

1、Introduction to PyTorch, a Deep Learning Library 1.1、Importing PyTorch and related packages import torch# supports: ## image data with torchvision ## audio data with torchaudio ## text data with torchtext 1.2、Tensors: the building blocks of network…

磁盘加密工具 | VeraCrypt v1.26.15 绿色版

VeraCrypt 是一个开源项目&#xff0c;旨在提供强大的加密解决方案&#xff0c;以创建和管理加密的磁盘分区和加密容器。它继承了著名的加密软件 TrueCrypt 的特性&#xff0c;并在此基础上进行了扩展和改进。 主要特性 1. 高级加密算法 VeraCrypt 支持多种加密算法&#xf…

假如你是HR,你怎么招「游戏策划」?

你是一名从业十余年&#xff0c; 拥有丰富面试经历、掌握多种话术的 资深游戏行业人事。 想知道策划岗位该怎么入行可点击蓝链 你不满足于在名不见经传的小企业 拿一份凑合过的薪资&#xff0c; 于是你成功跳槽来到国内顶级游戏大厂“猪厂”&#xff0c; 并且接手了你的…

Redis集群技术1——nosql简述

一、关系型数据库和 NoSQL 数据库 1.1 数据库主要分为两大类&#xff1a;关系型数据库与 NoSQL 数据库 关系型数据库&#xff0c;是建立在关系模型基础上的数据库&#xff0c;其借助于集合代数等数学概念和方法来处理数据库 中的数据主流的 MySQL、Oracle、MS SQL Server 和 …

谷歌排名SEO优化#蜘蛛池软件(搜索大客户)

谷歌排名SEO优化#蜘蛛池软件&#xff08;搜索大客户&#xff09; 如何检测你的网站是否能被谷歌搜索引擎蜘蛛抓取 通过一个工具快速检测你的网站&#xff0c;是否能被谷歌搜索引擎&#xff0c;bing搜索引擎的蜘蛛爬取收录。网站是否能被蜘蛛抓取收录是谷歌SEO的基础&#xff0…

C_深入理解指针(五) —— sizeof和strlen的对比、数组和指针笔试题解析、指针运算笔试题解析

目录 一、sizeof和strlen的对比 1、sizeof 2、strlen 3、sizeof 和 strlen的对比 二、数组和指针笔试题解析 1、⼀维数组 重点学习代码&#xff1a;sizeof与一维整型数组类型 2、字符数组 代码1&#xff1a;sizeof与字符数组类型 代码2&#xff1a;strlen与字符数组类…

log4j 和 java.lang.OutOfMemoryError PermGen space

还是OneCoder在项目中沙箱的问题&#xff0c;用classloader隔离做的沙箱&#xff0c;反复运行用户的任务&#xff0c;出现永生区内存溢出&#xff1a; java.lang.OutOfMemoryError: PermGen space 这个问题在tomcat重复热部署的时候其实比较常见。其道理也和我们沙箱的道理基本…

【重学 MySQL】十二、SQL 语言的规则与规范

【重学 MySQL】十二、SQL 语言的规则与规范 基本规则注释语法规则命名规则基本命名规则具体命名规范其他注意事项 数据导入指令 SQL&#xff08;Structured Query Language&#xff0c;结构化查询语言&#xff09;的规则与规范是确保SQL语句能够正确执行、提高代码可读性和可维…