上下文输入无限制,谷歌发布Infini-Transformer

去年,百川智能发布号称全球最长的上下文窗口大模型Baichuan2-192K,一次性可输入35万字,超越GPT-4。

今年3月,Kimi智能助手宣布在上下文窗口技术上突破200万字

紧追其后,国内各大互联网巨头纷纷布局升级自家大模型产品,360智脑正式内测500万长文本处理能力功能,阿里宣布通义千问开放1000万字长文本能力,百度也即将开放200-400万的长文本能力。

而近日,谷歌推出Infini-Transformer框架,彻底结束LLM上下文长度之争,支持无限长的输入

4月10日,谷歌发布论文《Leave No Context Behind: Efficient Infinite Context Transformers with Infini-attention》,提出一种名为"Infini-attention(无限注意力)"的新型注意力机制,可以将基于 Transformer 的LLM 扩展到无限长输入,而不增加内存和计算需求。

图片

论文链接:https://arxiv.org/pdf/2404.07143.pdf

使用该技术,研究者成功将一个 1B 的模型上下文长度提高到 100 万;应用到 8B 模型上,模型能处理 500K 的书籍摘要任务。

不同于传统的 Transformer 使用局部注意力丢弃旧片段,为新片段释放内存空间。Infini-attention将压缩记忆整合进标准的点积注意力机制,并在单个Transformer块内同时实现了掩码局部注意力和长期线性注意力机制。

该方法使现有LLM能够通过持续预训练和fine-tuning自然地扩展到处理无限长上下文,并以流的方式处理极长的输入进行计算。Infini-attention复用了标准注意力计算的所有键(Key)、值(Value)和查询(Query)状态,将旧的KV状态存储在压缩记忆中,而不是像标准注意力机制那样丢弃它们。在处理后续序列时,Infini-attention通过使用注意力查询状态来从记忆中提取值。为计算最终的上下文输出,Infini-attention会聚合长期记忆提取的值和局部注意力上下文。

Infini-attention的核心思想是将压缩记忆整合进标准点积注意力机制中,如图所示。

图片

Infini-Transformer与Transformer-XL的操作方式类似,都是在一个个序列段上进行计算。在每个段内计算标准因果点积注意力上下文。不同的是,Transformer-XL在处理下一个段时会丢弃前一个段的注意力状态,而Infini-Transformer复用旧的 KV 注意力状态,以通过压缩存储来维护整个上下文历史。因此,Infini-Transformer 的每个注意力层都具有全局压缩状态和局部细粒度状态。

Infini-attention的具体实现如图所示:

图片

它与标准的多头注意力(MHA)类似,每个注意力层都维护H个parallel的压缩记忆。Infini-attention首先计算标准的点积注意力上下文A_dot,然后从压缩记忆中检索出长期记忆上下文A_mem。最后,它通过一个学习的门控scalar β来结合这两部分上下文,得到最终的注意力输出O

Infini-attention的记忆更新和检索机制借鉴了先前工作,采用了简单高效的线性注意力形式。具体地,记忆检索通过将查询Q与之前存储的键值对M进行线性注意力计算得到;而记忆更新则是将新的键值对以联想绑定的方式累加到M中。研究人员还引入了delta规则来进一步优化记忆更新,尝试有选择地只更新那些不存在于记忆中的新信息。

与标准(多头注意力)MHA相比,Infini-attention仅引入了极少量的额外参数(每头一个标量值),就能够学习长短期上下文信息的最佳平衡。这种设计不仅计算高效,而且便于将Infini-attention无缝集成到现有的Transformer LLM中,支持即插即用的长上下文适应。

图片

在具体实验中,首先在长上下文语言建模基准测试(PG19和Arxiv-math)上评估了小型Infini-Transformer模型。表2结果显示,Infini-Transformer不仅优于Transformer-XL和Memorizing Transformers等基线模型,而且存储参数减少了114倍。研究人员还发现,当训练序列长度增加到100K时,模型的困惑度进一步降低。

图片

研究人员还在1M长度密钥检索任务和5K长度微调任务上验证了Infini-Transformer的性能。实验中输入 token 的范围从 32K 到 1M,对于每个测试子集,研究者控制密钥的位置,使其位于输入序列的开头、中间或结尾附近。图3实验报告了零样本准确率和微调准确率。在对 5K 长度输入进行 400 个步骤的微调后,Infini-Transformer 解决了高达 1M 上下文长度的任务。

图片

表 4 将 Infini-Transformer 与专门为摘要任务构建的编码器 - 解码器模型进行了比较。结果表明 Infini-Transformer 超越了之前最佳结果,并且通过处理书中的整个文本在 BookSum 上实现了新的 SOTA。

图片

随着算法不断突破,新技术不断涌现,势必将造就智能算力的爆发式增长。英智公司智能调度全球高端算力,助力企业抓住人工智能发展趋势,满足政企在模型训练、应用部署中的需要。英智公司希望每个政企都能抓住AI浪潮的风口,实现数字化转型和高质量发展。

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

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

相关文章

JAVA基础08- 继承,重写,super以及this

目录 继承(extends) 定义 说明 作用 方法的重写 定义 重写关键点 方法重写与重载的区别 练习 练习1(方法继承与重写的简单练习) 练习2(方法继承与重写的进阶练习) This的使用 定义 作用以及注…

Postman之版本信息查看

Postman之版本信息查看 一、为何需要查看版本信息?二、查看Postman的版本信息的步骤 一、为何需要查看版本信息? 不同的版本之间可能存在功能和界面的差异。 二、查看Postman的版本信息的步骤 1、打开 Postman 2、打开设置项 点击页面右上角的 “Set…

MyBatis 源码分析 - SQL 的执行过程

MyBatis 源码分析 - SQL 的执行过程 * 本文速览 本篇文章较为详细的介绍了 MyBatis 执行 SQL 的过程。该过程本身比较复杂,牵涉到的技术点比较多。包括但不限于 Mapper 接口代理类的生成、接口方法的解析、SQL 语句的解析、运行时参数的绑定、查询结果自动映射、延…

基于SpringBoot+Vue的二手车交易系统的设计与实现(源码+文档+包运行)

一.系统概述 如今社会上各行各业,都喜欢用自己行业的专属软件工作,互联网发展到这个时候,人们已经发现离不开了互联网。新技术的产生,往往能解决一些老技术的弊端问题。因为传统二手车交易信息管理难度大,容错率低&…

Connection: keep-alive 简介

一、在使用fiddler抓包工具会出现如下场景 二、keep-alive 保持连接 "Connection: keep-alive" 是 HTTP 协议中的一个头部字段,用于指示客户端和服务器之间的连接是否保持活跃状态。 当客户端发送一个 HTTP 请求给服务器时,可以在请求头部中包…

阿里云4核8G云服务器价格多少钱?700元1年

阿里云4核8G云服务器价格多少钱?700元1年。阿里云4核8G服务器租用优惠价格700元1年,配置为ECS通用算力型u1实例(ecs.u1-c1m2.xlarge)4核8G配置、1M到3M带宽可选、ESSD Entry系统盘20G到40G可选,CPU采用Intel(R) Xeon(R…

储能系统--BMS电流采样详解

一、行业标准介绍 汽车电池管理系统 储能电池管理系统 二、BMS电流采样 (1)电流采样的作用 电流传感器一般会位于动力电池系统主正或主副回路测量整个电池包的电流,电流信号会送到BMS,给BMS做充放电控制,电池SOC、SO…

pip安装swig@FreeBSD

SWIG (Simplified Wrapper and Interface Generator) 是一个用于连接 C/C 代码与其他高级编程语言(如Python、Java、C# 等)的工具。它允许开发人员将现有的 C/C 代码封装成可以在其他语言中调用的接口,而无需手动编写大量的代码。 SWIG 的工…

编程入门(三)【GPT工具的使用】

读者大大们好呀!!!☀️☀️☀️ 🔥 欢迎来到我的博客 👀期待大大的关注哦❗️❗️❗️ 🚀欢迎收看我的主页文章➡️寻至善的主页 文章目录 前言背景了解GPT工具使用技巧GPT工具在学习和工作中的应用 前言 背景了解 2…

OpenStack云平台实战

1、环境准备 主机CPU数量内存硬盘IPV4发行版controller48GB100GBens33: 192.168.110.27/24 esn34: 192.168.237.131/24CentOS 7.9compute48GB200GB、100GBens33: 192.168.110.26/24 esn34: 192.168.237.132/24CentOS 7.9 1.1 虚拟机安装部署 1.1.1 创建虚拟机 这里16或者17都…

工业级3D可视化工具HOOPS Visualize, 快速构建移动端和PC端工程应用程序!

HOOPS Visualize是一款强大的工业级3D渲染引擎,帮助您打造出众的工程应用程序。HOOPS Visualize的基石是图形内核,这是一种全功能的,以工程为重点的场景图技术,我们称为Core Graphics。Core Graphics集成到一个框架中,…

【STM32】嵌入式实验二 GPIO 实验 (前三个设计)

1. 按键亮灯 设计 GPIO 实验项目 1,功能:当按键 KB1 按下时,实验板上全彩发光二极管周边 的发光二极管全亮,当按键 KB2 按下时跑马灯 D0 闪亮。 实验要求基于寄存器的GPIO配置,所以需要手动操作寄存器来配…

轻松上手Flowise:本地部署与最佳实践

🧙‍♂️ 诸位好,吾乃斜杠君,编程界之翘楚,代码之大师。算法如流水,逻辑如棋局。 📜 吾之笔记,内含诸般技术之秘诀。吾欲以此笔记,传授编程之道,助汝解技术难题。 &#…

Sigmoid激活函数

Sigmoid函数是一种常用的激活函数,其数学公式为: σ ( x ) 1 1 e − x \sigma(x) \frac{1}{1 e^{-x}} σ(x)1e−x1​ 其中, x x x 是函数的输入, σ ( x ) \sigma(x) σ(x) 是函数的输出。 sigmoid函数在神经网络中常被用于…

32.5k star!发现一个新的 API 调试工具!postman 要被替换了【文末有项目源码】

在软件开发过程中,API(应用程序接口)扮演着至关重要的角色。为了确保 API 的可靠性和性能,开发人员需要一种高效的方式来测试和调试它们。这方面的工具,大家经常用到的应该就是 postman 了。不过,今天想要给…

算法与数学

学过数据结构的对这个应该都不会感到陌生,但是乍一看原来是数学,然而事实就是如此。二分法的数学源头就是这个。 还有前缀和的 我们这里所说的前缀和其实就是我们在高中学的数列中的Sn(前n项和),只是我们这里需要将S1 , S2 , S3 , S4 …… S…

用户与组管理

一、用户分类 管理员用户:root 程序用户 普通用户 二、用户列表文件 查看用户列表文件 cat /etc/passwd 注:etc/passwd内容总共分为7个区域,每个区域用“:”分隔开 第一列:用户名。区分大小写;用户名可以使…

多轴机械臂/正逆解/轨迹规划/机器人运动学/Matlab/DH法 学习记录03——机械臂运动学逆解

系列文章目录 本科毕设正在做多轴机械臂相关的内容,这里是一个学习机械臂运动学课程的相关记录。 如有任何问题,可发邮件至layraliufoxmail.com问询。 1. 数学基础 2. 机械臂几何法与DH表示法 3. 机械臂运动学逆解 文章目录 系列文章目录一、引言1.手臂…

Impala Daemon无法启动问题记录(UNIX 域套接字路径不存在)

前言:集群扩节点,新加节点的Impala Daemon起不起来了 去后台查看报错日志 上午11点19:08.002分 ERROR cc:288 Invalid short-circuit reads configuration:Impala cannot read or execute the parent directory of dfs.domain.socket.path 上午11点19:…

【SAP NWDI】服务开启:SLD,CM,CMS(二)

一、启用System Landscape Directory 二、启用 NWDI using CMS
最新文章