谷歌推出TransformerFAM架构,以更低的消耗处理长序列文本

Transformer对大模型界的影响力不言而喻,ChatGPT、Sora、Stable Difusion等知名模型皆使用了该架构。

但有一个很明显的缺点,其注意力复杂度的二次方增长在处理书籍、PDF等超长文档时会显著增加算力负担。

虽然会通过滑动窗口注意力和稀疏注意力等技术来解决这一问题,在处理极长序列时仍存在局限性。

因此,谷歌的研究人员提出了全新架构TransformerFAM,可以无缝与预训练模型集成,并通过LoRA进行少量精调从而大幅度提升模型性能

研究人员在1B、8B和24B三种参数的Flan-PaLM大语言模型上评估了Transformer FAM的性能。实验结果显示,与Transformer架构相比,TransformerFAM在长序列任务上取得了好的能力并且资源消耗更低。

论文地址:https://arxiv.org/abs/2404.09173

图片

TransformerFAM的技术灵感来自人脑中工作记忆的机制。研究人员发现,大脑中的工作记忆能力是由前额叶皮层和视床之间的反馈循环维持的,即持续的神经元脉冲活动形成了一个反馈回路,从而实现了对短期记忆的维持和更新。

受此启发,研究人员设计了一个集成在Transformer中的反馈循环,使得注意力机制不仅可以关注输入序列,还能自我关注自身的潜在表示,使大模型能够存储超长和更新全局上下文信息。

简单来说,可以把TransformerFAM看成是一个"便签本",可以帮助大模型记住很多短暂、细小的事情,又不会对内存、算力造成过多的负担。

反馈注意力记忆

反馈注意力记忆(Feedback Attention Memory,FAM)是TransformerFAM架构的核心模块,主要通过反馈循环使神经网络能够注意到自身的潜在表示,从而允许大模型处理超长的输入序列。

图片

研究人员在每个Transformer层中都加入了FAM模块,在自注意力过程中被激活,使得输入查询不仅关注当前块和滑动窗口覆盖的过去记忆段,还能关注前一步的FAM状态,将全局上下文知识融入当前表示。

同时一个专门的FAM查询则负责根据当前块和上一步的FAM,更新后续的FAM状态以实现全局上下文信息的传递。

这种巧妙设计使得每个Transformer层都能够维持一个与其抽象层次相对应的分布式工作记忆状态。

块内压缩

块内压缩是Transformer架构中处理长序列数据的关键技术。主要是将长序列分成若干个小块,然后对每个块中的信息进行压缩,以便模型能够更高效地处理和记忆这些信息。

在每个Transformer层中,块内压缩通过自注意力机制将当前块的信息压缩成一个固定长度的表示用于反馈记忆的激活。然后再与之前的FAM状态结合,通过一个前馈网络进行更新生成全新的FAM状态。

图片

更新后的FAM状态会被传递到下一个块,作为那里的额外上下文信息,从而实现跨块的数据信息传递。

随着模型逐块处理整个序列,新的记忆状态会包含越来越多跨块的信息,从而形成一个全局的上下文理解,但对内存、算力的需求几乎没有额外增加,同时又获得了“记忆存储”的泛化能力。

本文素材来源TransformerFAM论文,如有侵权请联系删除

END

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

win11安装docker运行Open-Webui 界面化展示 ollama大模型

1.OpenWeb UI运行需要docker 环境下载docker Get Started | Docker 2.需要命令提示符docker -v 查询是否安装成功; 查询docker详情docker version 3.github拉取open-webUi镜像Package open-webui GitHub 复制命令运行在命令提示符; 等待下载完成 4.到…

打造一个增强版Kimi:可以生成图片、PPT、PDF文档、数据分析等

Kimi虽然在国内AI大模型中表现不错,但是和ChatGPT还是差不少功能。现在有一个很简单的方法,把kimi功能增强,使用效果大大改善,比如生成图片: 具体方法如下: 打开coze网站:https://www.coze.cn/…

AI大模型探索之路-实战篇4:DB-GPT数据应用开发框架调研实践

目录 前言一、DB-GPT总体概述二、DB-GPT关键特性1、私域问答&数据处理&RAG2、多数据源&GBI3、多模型管理4、自动化微调5、Data-Driven Multi-Agents&Plugins6、隐私安全 三、服务器资源准备1、创建实例2、打开jupyterLab 四、DB-GPT启动1、激活 conda 环境2、切…

使用VUE3+TS+elementplus创建一个增加按钮

一、前言 在上一篇文章中分享了创建table的过程&#xff0c;详见&#xff08;VUE3TSelementplus创建table&#xff0c;纯前端的table&#xff09;&#xff0c;本文在创建好的table的基础上&#xff0c;再创建一个增加按钮。 二、程序展示 1、前面创建table的程序 <templ…

Springboot+Vue项目-基于Java+MySQL的游戏交易系统(附源码+演示视频+LW)

大家好&#xff01;我是程序猿老A&#xff0c;感谢您阅读本文&#xff0c;欢迎一键三连哦。 &#x1f49e;当前专栏&#xff1a;Java毕业设计 精彩专栏推荐&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb;&#x1f447;&#x1f3fb; &#x1f380; Python毕业设计 &…

关于智慧校园安全用电监测系统的设计

人生人身安全是大家关注的话题&#xff0c;2019年12月中国消防统计近五年发生在全国学生宿舍的火灾2314起&#xff08;中国消防2019.12.应急管理部消防救援局官方微博&#xff09;&#xff0c;违规电器是引发火灾的主因。如果在各寝室安装智能用电监测器实时监督线路参数&#…

足球走地数据分析之大小球策略及工具介绍

在足球走地数据分析中&#xff0c;大小球策略是一种非常实用的投注方式。以下是一些关于大小球策略的分析和建议&#xff1a; 理解大小球概念&#xff1a;大小球是足球走地投注中的一种玩法&#xff0c;主要预测的是一场比赛中的总进球数是否超过或低于一个预设的数值。例如&a…

浏览器API与协议

现代浏览器是一个囊括了数百个组件的操作系统&#xff0c;包括进程管理、安全沙箱、分层的优化缓存、JavaScript虚拟机、图形渲染和GPU管道、存储系统、传感器、音频和视频&#xff0c;网络机制等等。 在浏览器上运行的应用的性能。&#xff0c;取决于多个组件&#xff1a;解析…

C#利用WinForm实现可以查看指定目录文件下所有图片

目录 一、关于Winform 二、创建应用 三、功能实现 四、代码部分 一、关于Winform Windows 窗体是用于生成 Windows 桌面应用的 UI 框架。 它提供了一种基于 Visual Studio 中提供的可视化设计器创建桌面应用的高效方法。 利用视觉对象控件的拖放放置等功能&#xff0c;可…

适用于 Windows 7/8/10/11 的 6 款最佳免费分区软件

分区软件程序旨在帮助您创建、缩小、删除、扩展、合并或拆分硬盘和其他存储设备的分区。虽然可以在 Windows 中对硬盘进行分区而无需使用其他软件&#xff0c;但您可以执行的活动范围有限。例如&#xff0c;如果没有外部工具&#xff0c;您无法调整分区大小或合并分区。在这篇文…

Stable Diffusion|黑白老照片修复

在这个时代&#xff0c;我们习惯于拥有高清、色彩丰富的照片&#xff0c;然而&#xff0c;那些古老的黑白色老照片由于年代的久远&#xff0c;往往会出现模糊、破损等现象。 关于AI绘画技术储备 学好 AI绘画 不论是就业还是做副业赚钱都不错&#xff0c;但要学会 AI绘画 还是要…

解决 fatal: Not a git repository (or any of the parent directories): .git 问题

解决方法&#xff1a;在命令行 输入 git init 然后回车就好了

一些常见的程序设计问题

秒杀 redis缓存库存 1.判断库存名额是否充足&#xff0c;2.进行扣减 为了防止超卖&#xff0c;必须保证这两部的原子性 库存扣减后发送mq消息&#xff0c;去异步执行创建订单流程&#xff0c;创建订单失败会造成少卖。可加重试机制&#xff0c;对多次重试依旧失败的&#xff…

史上最全PMP学习资料、项目管理资料、备考经验包,3A一次通过

你是否也有过类似的经历&#xff1f; 为了获取备考资料&#xff0c;有的同学在论坛、知乎或者相关垂直类网站下载了很多的资料&#xff0c;这些资料大部分是机构进行获客引流的资料&#xff0c;没有真正的干货。 经常会看到10G、20G的资料包&#xff0c;感觉内容很丰富&#xf…

2024中青杯A题数学建模成品文章数据代码分享

人工智能视域下养老辅助系统的构建 摘要 随着全球人口老龄化的加剧&#xff0c;养老问题已经成为一个世界性的社会问题&#xff0c;对社会各个方面产生了深远影响&#xff0c;包括劳动力市场、医疗保健和养老金制度等。人口结构变化对养老服务的质量和覆盖面提出了更高要求。特…

OpenHarmony集成OCR三方库实现文字提取

1. 简介 Tesseract(Apache 2.0 License)是一个可以进行图像OCR识别的C库&#xff0c;可以跨平台运行 。本样例基于Tesseract库进行适配&#xff0c;使其可以运行在OpenAtom OpenHarmony&#xff08;以下简称“OpenHarmony”&#xff09;上&#xff0c;并新增N-API接口供上层应…

第198题|很精彩的一道题|函数强化训练(五)|武忠祥老师每日一题

解题思路&#xff1a;解决这道题有两种方法&#xff1a;第一种直接法排除法&#xff0c;第二种秒杀法 直接法排除法 (A) 要证明f(x)是以2为周期的函数&#xff1a;则要证明f(x2)f(x); 证明过程如下&#xff1a; A得证。 (B) 变上限积分关于周期的结论&#xff1a; f(x)连…

dubbo复习: (6)和springboot集成时的条件路由

根据指定的条件&#xff0c;对不满足条件的请求进行拦截。 比如拦截ip地址为192.168.31.227的请求。只需要在dubbo admin中的条件路由菜单创建相应的规则 enabled: true force: true runtime: true conditions:- host ! 192.168.31.227

安装petalinux工具

petalinux 并不是一个特殊 Linux 内核&#xff0c;而是一套开发环境配置的工具&#xff0c;降低 uboot、内核、 根文件系统的配置的工作量&#xff0c;可以从 Vivado 的导出硬件信息自动完成相关软件的配置。 petalinux 是赛灵思基于 buildroot 工具链为自家处理器方便适配 Li…

51单片机汇编语言设计流水灯

1、仿真原理图 2、汇编代码及详细注释 &#xff08;1&#xff09;、代码1 ORG 0000H ; 设置代码起始地址为0000H 熄灭发光二极管 MOV A,#0FEH ; 将数值0FEH载入A寄存器&#xff0c;熄灭所有发光二极管 MOV P1, A ; 将A寄存器的值移动到P1寄存器&#xff0c;将0FEH写入P1…