首页 > 其他分享 >LSTM卷土重来!xLSTM:一举超越Mamba、Transformer!

LSTM卷土重来!xLSTM:一举超越Mamba、Transformer!

时间:2024-05-14 18:21:14浏览次数:14  
标签:Transformer xLSTM 内存 sLSTM Mamba LSTM 门控

前言 LSTM:这次重生,我要夺回 Transformer 拿走的一切。

本文转载自新智元

仅用于学术分享,若侵权请联系删除

欢迎关注公众号CV技术指南,专注于计算机视觉的技术总结、最新技术跟踪、经典论文解读、CV招聘信息。

CV方向的准研究生们,未来三年如何度过?

招聘高光谱图像、语义分割、diffusion等方向论文指导老师

20 世纪 90 年代,长短时记忆(LSTM)方法引入了恒定误差选择轮盘和门控的核心思想。三十多年来,LSTM 经受住了时间的考验,并为众多深度学习的成功案例做出了贡献。然而,以可并行自注意力为核心 Transformer 横空出世之后,LSTM 自身所存在的局限性使其风光不再。

当人们都以为 Transformer 在语言模型领域稳坐江山的时候,LSTM 又杀回来了 —— 这次,是以 xLSTM 的身份。

5 月 8 日,LSTM 提出者和奠基者Sepp Hochreiter在 arXiv 上传了 xLSTM 的预印本论文。

论文的所属机构中还出现了一家叫做「NXAI」的公司,Sepp Hochreiter 表示:「借助 xLSTM,我们缩小了与现有最先进 LLM 的差距。借助 NXAI,我们已开始构建自己的欧洲 LLM。」

具体来说,xLSTM 从三个层面解决了 LSTM 以往所存在的局限性:

(i) 无法修改存储决策。

可以通过「最近邻搜索」(Nearest Neighbor Search)问题来举例说明这一局限性:在给定参考向量的情况下,必须按顺序扫描序列,寻找最相似的向量,以便在序列末端提供其附加值。图 2 左侧显示了这项任务的均方误差。当发现更相似的向量时,LSTM 难以修改存储的值,而新的 xLSTM 通过指数门控弥补了这一限制。

(ii) 存储容量有限,即信息必须压缩成标量单元状态。

图 2 右侧给出了 Wikitext103 上不同 token 频率的 token 预测困惑度。由于 LSTM 的存储容量有限,它在不常见 token 上的表现较差。xLSTM 通过矩阵内存解决了这一问题。

(iii) 由于内存混合而缺乏可并行性,需要进行顺序处理。例如,从一个时间步到下一个时间步的隐藏状态之间的隐藏 - 隐藏连接。

与此同时,Sepp Hochreiter 和团队在这篇新论文中回答了一个关键问题:如果克服这些局限性并将 LSTM 扩展到当前大语言模型的规模时,能实现怎样的性能?

将 LSTM 扩展到数十亿参数

为了克服 LSTM 的局限性,xLSTM 对等式(1)中的 LSTM 理念进行了两项主要修改。

在原来的 LSTM 中,恒定误差选择轮盘是由单元输入 z_t 对单元状态 c_(t-1)(绿色)进行的加法更新,并由 sigmoid 门(蓝色)进行调节。输入门 i_t 和遗忘门 f_t 控制这一更新,而输出门 o_t 控制存储单元的输出,即隐藏状态 h_t。存储单元的状态被 ψ 归一化或压缩,然后输出门控得到隐藏状态。

xLSTM 的修改包括指数门控和新颖的内存结构,因此丰富了 LSTM 家族的两个成员:

(i) sLSTM(第 2.2 节),具有标量内存、标量更新和内存混合功能;

(ii) mLSTM(第 2.3 节),具有矩阵内存和协方差(外积)更新规则,完全可并行处理。

sLSTM 和 mLSTM 都通过指数门控增强了 LSTM。为了实现并行化,mLSTM 放弃了内存混合,即隐藏 - 隐藏递归连接。mLSTM 和 sLSTM 都可以扩展到多个存储单元,其中 sLSTM 具有跨单元内存混合的特点。此外,sLSTM 可以有多个头,但不存在跨头的内存混合,而只存在每个头内单元间的内存混合。通过引入 sLSTM 头和指数门控,研究者建立了一种新的内存混合方式。对于 mLSTM 而言,多头和多单元是等价的。

将这些新的 LSTM 变体集成到残差块模块中,就得到了 xLSTM 块。将这些 xLSTM 块剩余堆叠到架构中,就形成了 xLSTM 架构。xLSTM 架构及其组件见图 1。

xLSTM 块应在高维空间中对过去进行非线性总结,以便更好地分离不同的历史或上下文。分离历史是正确预测下一个序列元素(如下一个 token)的先决条件。研究者在此采用了 Cover 定理,该定理指出,在高维空间中,非线性嵌入模式比在原始空间中更有可能被线性分离。

他们考虑了两种残差块结构:(i) post up-projection 的残差块(如 Transformer),它非线性地概括了原始空间中的历史,然后线性地映射到高维空间,应用非线性激活函数,再线性地映射回原始空间(图 3 左侧和图 1 第三栏,更详细的版本见图 9)。(ii) pre up-projection 的残差块(如状态空间模型),它线性地映射到高维空间,在高维空间中非线性地总结历史,然后线性地映射回原始空间。对于包含 sLSTM 的 xLSTM 块,研究者主要使用了 post up-projection 块。对于包含 mLSTM 的 xLSTM 块,使用 pre up-projection 块,因为在高维空间中内存容量会变大。

 

实验

随后,研究者对 xLSTM 进行了实验评估,并将其与现有的语言建模方法进行了比较。

第 4.1 节讨论了 xLSTM 在合成任务中的具体能力。首先,研究者测试了 xLSTM 的新指数门控与内存混合在形式化语言上的有效性。然后,他们评估了 xLSTM 的新矩阵内存在多次查询联想记忆任务(Multi-Query Associative Recall,MQAR)中的有效性。最后,研究者评估了 xLSTM 在 Long Range Arena(LRA)中处理长序列的性能。

第 4.2 节比较了当前各种语言建模方法的验证集复杂度,包括在同一数据集上对 xLSTM 进行消融研究,然后对不同方法的缩放行为进行评估。

研究者在自回归语言建模设置中使用 SlimPajama 的 15B token 训练了 xLSTM、Transformers、状态空间模型(SSM)等模型。表 1 中的结果显示,xLSTM 在验证复杂度方面优于所有现有方法。

图 6 显示了该实验的扩展结果,表明 xLSTM 对于更大规模的模型也有良好的表现。

消融研究则表明,性能改进源于指数门控和矩阵内存。

第 4.3 节进行了更深入的语言建模实验。

研究者增加了训练数据量,对来自 SlimPajama 的 300B 个 token 进行了训练,并比较了 xLSTM、RWKV-4、Llama 和 Mamba。他们训练了不同大小的模型(125M、350M、760M 和 1.3B),进行了深入的评估。首先,评估这些方法在推断较长语境时的表现;其次,通过验证易混度和下游任务的表现来测试这些方法;此外,在 PALOMA 语言基准数据集的 571 个文本域上评估了这些方法;最后,评估了不同方法的扩展行为,但使用的训练数据多了 20 倍。

可以看出,xLSTM 在性能和扩展性上都更胜一筹。

更多研究细节,可参考原论文。

 

欢迎关注公众号CV技术指南,专注于计算机视觉的技术总结、最新技术跟踪、经典论文解读、CV招聘信息。

计算机视觉入门1v3辅导班

【技术文档】《从零搭建pytorch模型教程》122页PDF下载

QQ交流群:470899183。群内有大佬负责解答大家的日常学习、科研、代码问题。

其它文章

分享一个CV知识库,上千篇文章、专栏,CV所有资料都在这了

明年毕业,还不知道怎么做毕设的请抓紧机会了

LSKA注意力 | 重新思考和设计大卷积核注意力,性能优于ConvNeXt、SWin、RepLKNet以及VAN

CVPR 2023 | TinyMIM:微软亚洲研究院用知识蒸馏改进小型ViT

ICCV2023|涨点神器!目标检测蒸馏学习新方法,浙大、海康威视等提出

ICCV 2023 Oral | 突破性图像融合与分割研究:全时多模态基准与多交互特征学习

听我说,Transformer它就是个支持向量机

HDRUNet | 深圳先进院董超团队提出带降噪与反量化功能的单帧HDR重建算法

南科大提出ORCTrack | 解决DeepSORT等跟踪方法的遮挡问题,即插即用真的很香

1800亿参数,世界顶级开源大模型Falcon官宣!碾压LLaMA 2,性能直逼GPT-4

SAM-Med2D:打破自然图像与医学图像的领域鸿沟,医疗版 SAM 开源了!

GhostSR|针对图像超分的特征冗余,华为诺亚&北大联合提出GhostSR

Meta推出像素级动作追踪模型,简易版在线可玩 | GitHub 1.4K星

CSUNet | 完美缝合Transformer和CNN,性能达到UNet家族的巅峰!

AI最全资料汇总 | 基础入门、技术前沿、工业应用、部署框架、实战教程学习

计算机视觉入门1v3辅导班

计算机视觉交流群

标签:Transformer,xLSTM,内存,sLSTM,Mamba,LSTM,门控
From: https://www.cnblogs.com/wxkang/p/18191885

相关文章

  • 万事通,专精部分领域的多功能 Transformer 智能体
    介绍我们很高兴分享“万事通”(JackofAllTrades,简称JAT)项目,该项目旨在朝着通用智能体的方向发展。该项目最初是作为对Gato(Reed等,2022年)工作的公开复现启动的,Gato提出训练一种能够执行视觉与语言以及决策任务的Transformer。于是我们首先构建了Gato数据集的开放......
  • Transformers 加速的一些常用技巧
    Transformers是一个强大的架构,但模型因其采用的自注意力机制,虽然能够有效地处理序列数据并捕获长距离依赖关系,但同时也容易导致在训练过程中出现OOM(OutofMemory,内存不足)或者达到GPU的运行时限制。主要是因为参数数量庞大:Transformer模型通常包含大量的参数,尤其是在模型层面......
  • 经典译文:Transformer--Attention Is All You Need
    经典译文:Transformer--AttentionIsAllYouNeed来源  https://zhuanlan.zhihu.com/p/689083488 本文为Transformer经典论文《AttentionIsAllYouNeed》的中文翻译:https://arxiv.org/pdf/1706.03762.pdf注意力满足一切[email protected]......
  • 利用pycharm对分布式命令的设备进行debug(Vision mamba)
    背景介绍接着上次的visionmamba初步跑通,想进一步了解内部代码运行的过程,模型的工作机理,因此打算利用pycharm进行断点调试(即debug),花了半天时间终于学会了如何将控制台命令的形式传入pycharm中进行传参。在此,感谢大佬的博客,这里只是具体结合本机安装wsl2对大佬的博客进行......
  • Huggingface Transformers实现张量并行的小坑 set/get_output_embeddings
    transformers库里实现的很多模型会有这么两个函数get_output_embeddings和get_output_embeddings。以SwitchTransformer为例classSwitchTransformersForConditionalGeneration(SwitchTransformersPreTrainedModel):defset_output_embeddings(self,new_embeddings):......
  • Gradformer: 通过图结构归纳偏差提升自注意力机制的图Transformer
    这是4月刚刚发布在arxiv上的论文,介绍了一种名为“Gradformer”的新型图Transformer,它在自注意力机制中引入了指数衰减掩码。以下是主要创新点:指数衰减掩码: Gradformer在其自注意力模块中集成了衰减掩码。该掩码随着图结构中节点之间的距离减小而呈指数递减。这种设计使模型能够......
  • Transformers-自然语言处理(七)
    Transformers自然语言处理(七)原文:zh.annas-archive.org/md5/a1e65552fc41f3b5a667f63d9bed854c译者:飞龙协议:CCBY-NC-SA4.0附录V:问题的答案第一章,什么是转换器?我们仍处于第三次工业革命。(True/False)False.历史上的时代确实有重叠。然而,第三次工业革命着眼于使世......
  • Transformers-自然语言处理(二)
    Transformers自然语言处理(二)原文:zh.annas-archive.org/md5/a1e65552fc41f3b5a667f63d9bed854c译者:飞龙协议:CCBY-NC-SA4.0第四章:从头开始预训练RoBERTa模型在本章中,我们将从头开始构建一个RoBERTa模型。该模型将使用我们在BERT模型中所需的Transformers构造工具的......
  • VIT模型压缩综述(Comprehensive Survey of Model Compression and Speed up for Vision
    摘要:  VIT是计算机视觉的开山之作,在不同的领域都表现了优越的性能.但是过大的计算量和内存需求,限制了其使用.该篇综述研究了并评估了四种模型压缩的方法,在VIT上的作用:量化,低秩分解,知识蒸馏,剪枝.系统的分析并比较了这些方法在资源受限的环境下,优化VIT方面的效果.我们......
  • [Python急救站]基于Transformer Models模型完成GPT2的学生AIGC学习训练模型
    为了AIGC的学习,我做了一个基于TransformerModels模型完成GPT2的学生AIGC学习训练模型,指在训练模型中学习编程AI。在编程之前需要准备一些文件:首先,先win+R打开运行框,输入:PowerShell后输入:pipinstall-Uhuggingface_hub下载完成后,指定我们的环境变量:$env:HF_ENDPOINT="ht......