当前位置:首页 > 文章列表 > 科技周边 > 人工智能 > 彻底解决ChatGPT健忘症!突破Transformer输入限制:实测支持200万个有效token

彻底解决ChatGPT健忘症!突破Transformer输入限制:实测支持200万个有效token

来源:51CTO.COM 2023-05-04 10:35:25 0浏览 收藏

大家好,我们又见面了啊~本文《彻底解决ChatGPT健忘症!突破Transformer输入限制:实测支持200万个有效token》的内容中将会涉及到等等。如果你正在学习科技周边相关知识,欢迎关注我,以后会给大家带来更多科技周边相关文章,希望我们能一起进步!下面就开始本文的正式内容~

ChatGPT,或者说Transformer类的模型都有一个致命缺陷,就是太容易健忘,一旦输入序列的token超过上下文窗口阈值,后续输出的内容和前文逻辑就对不上了。

ChatGPT只能支持4000个token(约3000个词)的输入,即便最新发布的GPT-4也只支持最大32000的token窗口,如果继续加大输入序列长度,计算复杂度也会成二次方增长。

最近来自DeepPavlov, AIRI, 伦敦数学科学研究所的研究人员发布了一篇技术报告,使用循环记忆Transformer(RMT)将BERT的有效上下文长度提升到「前所未有的200万tokens」,同时保持了很高的记忆检索准确性。

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

该方法可以存储和处理局部和全局信息,并通过使用循环让信息在输入序列的各segment之间流动。

实验部分证明了该方法的有效性,在增强自然语言理解和生成任务中的长期依赖处理方面具有非凡的潜力,可以为记忆密集型应用程序实现大规模上下文处理。

不过天下没有免费的午餐,虽然RMT可以不增加内存消耗,可以扩展到近乎无限的序列长度,但仍然存在RNN中的记忆衰减问题,并且需要更长的推理时间。

彻底解决ChatGPT健忘症!突破Transformer输入限制:实测支持200万个有效token

但也有网友提出了解决方案,RMT用于长期记忆,大上下文用于短期记忆,然后在夜间/维修期间进行模型训练。

循环记忆Transformer

2022年,该团队提出循环记忆Transformer(RMT)模型,通过在输入或输出序列中添加一个特殊的memory token,然后对模型进行训练以控制记忆操作和序列表征处理,能够在不改变原始Transformer模型的前提下,实现一个全新的记忆机制。

彻底解决ChatGPT健忘症!突破Transformer输入限制:实测支持200万个有效token

论文链接:https://arxiv.org/abs/2207.06881

发表会议:NeurIPS 2022

与Transformer-XL相比,RMT需要的内存更少,并可以处理更长序列的任务。

彻底解决ChatGPT健忘症!突破Transformer输入限制:实测支持200万个有效token

具体来说,RMT由m个实值的可训练向量组成,过长的输入序列被切分为几个segments,记忆向量被预置到第一个segment embedding中,并与segment token一起处理。

彻底解决ChatGPT健忘症!突破Transformer输入限制:实测支持200万个有效token

与2022年提出的原始RMT模型不同的是,对于像BERT这样的纯编码器模型,只在segment的开始部分添加一次记忆;解码模型将记忆分成读和写两部分。

在每个时间步长和segment中,按以下方式进行循环,其中N为Transformer的层数,t为时间步,H为segment

彻底解决ChatGPT健忘症!突破Transformer输入限制:实测支持200万个有效token

按顺序处理输入序列的segments后,为了实现递归连接,研究人员将当前segment的memory token的输出传递给下一个segment的输入:

彻底解决ChatGPT健忘症!突破Transformer输入限制:实测支持200万个有效token

RMT中的记忆和循环都只基于全局memory token,可以保持骨干Transformer模型不变,使得RMT的记忆增强能力可以与任意的Transformer模型兼容。

计算效率

按照公式可以估算不同大小和序列长度的RMT和Transformer模型所需的FLOPs

在词汇量大小、层数、隐藏大小、中间隐藏大小和注意头数的参数配置上,研究人员遵循OPT模型的配置,并计算了前向传递后的FLOPs数量,同时考虑到RMT循环的影响。

彻底解决ChatGPT健忘症!突破Transformer输入限制:实测支持200万个有效token

通过将一个输入序列划分为若干段,并仅在segment的边界内计算全部注意力矩阵来实现线性扩展,结果可以看到,如果segment长度固定,RMT的推理速度对任意模型尺寸都是线性增长的。

由于FFN层的计算量较大,所以较大的Transformer模型往往表现出相对于序列长度较慢的二次方增长速度,不过在长度大于32,000的极长序列上,FLOPs又回到了二次增长的状态。

对于有一个以上segment的序列(在本研究中大于512),RMT比非循环模型有更低的FLOPs,在尺寸较小的模型上最多可以将FLOPs的效率提升×295倍;在尺寸较大的模型如OPT-175B,可以提升×29倍。

记忆任务

为了测试记忆能力,研究人员构建了一个合成数据集,要求模型记忆简单的事实和基本推理。

任务输入包括一个或几个事实和一个只能用所有这些事实来回答的问题。

为了增加任务的难度,任务中还添加了与问题或答案无关的自然语言文本,这些文本可以看作是噪音,所以模型的任务实际上是将事实与不相关的文本分开,并使用事实文本来回答问题。

彻底解决ChatGPT健忘症!突破Transformer输入限制:实测支持200万个有效token

彻底解决ChatGPT健忘症!突破Transformer输入限制:实测支持200万个有效token

事实记忆

测试RMT在记忆中长时间写入和存储信息的能力:在最简单的情况下,事实位于输入的开头,问题在输入的最后,并逐渐增加问题和答案之间的不相关文本数量,直到模型无法一次性接受所有输入。

彻底解决ChatGPT健忘症!突破Transformer输入限制:实测支持200万个有效token

事实检测和记忆

事实检测通过将事实移到输入中的一个随机位置来增加任务难度,要求模型首先将事实与不相关的文本区分开来,将其写入记忆,然后回答位于最后的问题。

基于记忆事实进行推理

记忆的另一个重要操作是利用记忆的事实和当前的背景进行推理。

为了评估这个功能,研究人员引入了一个更复杂的任务,将生成两个事实并随机地放置在输入序列;在序列末尾提出的问题是必须选择用正确的事实来回答问题。

彻底解决ChatGPT健忘症!突破Transformer输入限制:实测支持200万个有效token

实验结果

研究人员使用HuggingFace Transformers中预训练的Bert-base-cased模型作为所有实验中RMT的主干,所有模型以记忆大小为10进行增强。

在4-8块英伟达1080Ti GPU上进行训练和评估;对于更长的序列,则切换到单张40GB的英伟达A100上进行加速评估。

课程学习(Curriculum Learning)

研究人员观察到,使用训练调度可以显著改善解决方案的准确性和稳定性。

刚开始让RMT在较短的任务版本上进行训练,在训练收敛后,通过增加一个segment来增加任务长度,将课程学习过程一直持续到达到理想的输入长度。

从适合单个segment的序列开始实验,实际segment的大小为499,因为从模型输入中保留了3个BERT的特殊标记和10个记忆占位符,总共大小为512。

可以注意到,在对较短的任务进行训练后,RMT更容易解决较长的任务,因为使用较少的训练步骤就能收敛到完美的解决方案。

外推能力(Extrapolation Abilities)

为了观察RMT对不同序列长度的泛化能力,研究人员评估了在不同数量的segment上训练的模型,以解决更大长度的任务。

彻底解决ChatGPT健忘症!突破Transformer输入限制:实测支持200万个有效token

可以观察到,模型在较短的任务上往往表现良好,但在较长的序列上训练模型后,就很难处理单segment推理任务。

一个可能的解释是,由于任务规模超过了一个segment,模型在第一个segment就停止了对问题的预期,导致质量下降。

有趣的是,随着训练segment数量的增加,RMT对较长序列的泛化能力也出现了,在对5个或更多的segment进行训练后,RMT可以对两倍长的任务进行近乎完美的泛化。

为了测试泛化的极限,研究人员验证任务的规模增加到4096个segment(即2,043,904个tokens)。

RMT在如此长的序列上保持得出奇的好,其中「检测和记忆」任务是最简单的,推理任务是最复杂的。

参考资料:https://arxiv.org/pdf/2304.11062.pdf

文中关于ChatGPT,模型,RMT的知识介绍,希望对你的学习有所帮助!若是受益匪浅,那就动动鼠标收藏这篇《彻底解决ChatGPT健忘症!突破Transformer输入限制:实测支持200万个有效token》文章吧,也可关注golang学习网公众号了解相关技术文章。

版本声明
本文转载于:51CTO.COM 如有侵犯,请联系study_golang@163.com删除
微软 SharePoint 协作软件将新增 AI 驱动 Copilot 服务微软 SharePoint 协作软件将新增 AI 驱动 Copilot 服务
上一篇
微软 SharePoint 协作软件将新增 AI 驱动 Copilot 服务
微信 NLP 算法微服务治理
下一篇
微信 NLP 算法微服务治理
查看更多
最新文章
查看更多
课程推荐
  • 前端进阶之JavaScript设计模式
    前端进阶之JavaScript设计模式
    设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
    542次学习
  • GO语言核心编程课程
    GO语言核心编程课程
    本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
    508次学习
  • 简单聊聊mysql8与网络通信
    简单聊聊mysql8与网络通信
    如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
    497次学习
  • JavaScript正则表达式基础与实战
    JavaScript正则表达式基础与实战
    在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
    487次学习
  • 从零制作响应式网站—Grid布局
    从零制作响应式网站—Grid布局
    本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
    484次学习
查看更多
AI推荐
  • 美图AI抠图:行业领先的智能图像处理技术,3秒出图,精准无误
    美图AI抠图
    美图AI抠图,依托CVPR 2024竞赛亚军技术,提供顶尖的图像处理解决方案。适用于证件照、商品、毛发等多场景,支持批量处理,3秒出图,零PS基础也能轻松操作,满足个人与商业需求。
    18次使用
  • SEO标题PetGPT:智能桌面宠物程序,结合AI对话的个性化陪伴工具
    PetGPT
    SEO摘要PetGPT 是一款基于 Python 和 PyQt 开发的智能桌面宠物程序,集成了 OpenAI 的 GPT 模型,提供上下文感知对话和主动聊天功能。用户可高度自定义宠物的外观和行为,支持插件热更新和二次开发。适用于需要陪伴和效率辅助的办公族、学生及 AI 技术爱好者。
    15次使用
  • 可图AI图片生成:快手可灵AI2.0引领图像创作新时代
    可图AI图片生成
    探索快手旗下可灵AI2.0发布的可图AI2.0图像生成大模型,体验从文本生成图像、图像编辑到风格转绘的全链路创作。了解其技术突破、功能创新及在广告、影视、非遗等领域的应用,领先于Midjourney、DALL-E等竞品。
    43次使用
  • MeowTalk喵说:AI猫咪语言翻译,增进人猫情感交流
    MeowTalk喵说
    MeowTalk喵说是一款由Akvelon公司开发的AI应用,通过分析猫咪的叫声,帮助主人理解猫咪的需求和情感。支持iOS和Android平台,提供个性化翻译、情感互动、趣味对话等功能,增进人猫之间的情感联系。
    44次使用
  • SEO标题Traini:全球首创宠物AI技术,提升宠物健康与行为解读
    Traini
    SEO摘要Traini是一家专注于宠物健康教育的创新科技公司,利用先进的人工智能技术,提供宠物行为解读、个性化训练计划、在线课程、医疗辅助和个性化服务推荐等多功能服务。通过PEBI系统,Traini能够精准识别宠物狗的12种情绪状态,推动宠物与人类的智能互动,提升宠物生活质量。
    38次使用
微信登录更方便
  • 密码登录
  • 注册账号
登录即同意 用户协议隐私政策
返回登录
  • 重置密码