来自微软和加州大学圣塔芭芭拉分校的研究人员提出了LONGMEM:一种人工智能框架,使LLMs能够记忆长期历史
大型语言模型(LLMs)极大地改进了各种理解和生成任务的最新技术,彻底变革了自然语言处理。大多数LLMs通过从固定大小的本地上下文中收集信息并显示出新的技能(包括零-shot提示、上下文学习和思维链(CoT)推理)从庞大的语料库中进行自我监督训练,获益匪浅。现有LLMs的输入长度限制排除了它们对现实世界应用的泛化能力,例如扩展的水平规划,其中处理超出固定会话之外的长形材料的能力至关重要。
解决长度限制问题的最简单方法是简单地扩大输入上下文长度。例如,GPT-3将输入长度从GPT-2的1k提高到2k个标记,以获得更好的长距离相互依赖性。然而,基于Transformer自我注意力的平方计算复杂度严重限制了上下文密集注意力,并且这种技术通常需要从头开始进行计算密集型训练。另一个新的研究领域,虽然仍然需要从头开始训练,但专注于创建上下文稀疏注意力,以避免自我注意力的二次成本。
虽然Memorising Transformer(MemTRM)是一个着名的研究,但它通过将密集注意力集中于对于Transformers的非可微存储器检索的上下文令牌和记忆令牌来近似上下文稀疏注意力。通过将得出的语言模型扩大到处理高达65k个标记的大型书籍或论文,MemTRM在建模大型书籍或论文时提供了显着的困惑度好处。然而,MemTRM的链接内存方法,在语言建模过程中,使用单个模型对语言建模的编码和融合存储器,训练过程中会出现存储器陈旧度困难。换句话说,存储器中的已缓存早期表示可能与最新模型的表示有分布式变化,从而降低了记忆增强的使用。
在这篇论文中,来自加州大学圣巴巴拉分校和微软研究院的作者提出了LONGMEM框架,该框架可以将长形先前上下文或知识缓存到不可微分存储器库中,并通过解耦的存储器模块利用它们来解决存储器陈旧性问题。他们创建了一种革命性的剩余侧网络(SideNet),以实现解耦的存储器。冻结的骨干LLM用于从先前上下文中提取配对的注意键和值,存储到存储器库中。当前输入的结果注意查询用于SideNet的存储器增强层,以访问先前上下文中缓存的(键和值)。然后,相关的存储器增强通过联合注意力过程融合到学习的隐藏状态中。
新构建的跨网络剩余连接使预训练的骨干LLM能够更好地进行知识转移。通过反复训练剩余SideNet提取和融合存储器增强的长上下文,可以修改预训练LLM以利用长上下文记忆。他们解耦的存储器系统具有两个主要优点。首先,他们提出的体系结构中的解耦冻结骨干LLM和SideNet将内存检索和融合与将先前输入编码到内存中分离开来,这有效地解决了存储器陈旧性问题。相比之下,剩余的SideNet用作存储器检索器和读取器。其次,直接更改带有存储器增强的LLM在计算上效率低下并且遭受灾难性的遗忘。除了能够访问先前学习的知识外,LONGMEM还可以通过将不同类型的长文本和信息输入到存储器库中来防止灾难性的遗忘。
他们专注于两个说明性实例:在数千个任务相关演示示例中进行存储器增强的上下文学习和具有全长书籍上下文的语言建模。他们评估所提出的LONGMEM在几个长文本语言建模任务和存储器增强的上下文学习方面的表现如何。根据实验结果,他们的模型在长文本建模和上下文学习方面的能力经常超过了强基线。他们的方法显着提高了LLM代表长上下文语言的能力,比Gutenberg-2022语料库的各种长度分割的困惑度提高了-1.38〜-1.62。令人惊讶的是,他们的模型在ChapterBreak,一个困难的长上下文建模基准测试中,大大优于当前的强x-former基线,达到了40.5%的识别准确率。最后,与没有存储器增强的基线和MemTRM相比,LONGMEM在常见的NLU任务上显示出强大的上下文学习优势。