参数量仅为4%,性能媲美GPT-3:开发者图解DeepMind的RETRO

简介: 参数量仅为4%,性能媲美GPT-3:开发者图解DeepMind的RETRO

构建越来越大的模型并不是提高性能的唯一方法。


从 BERT 到 GPT-2 再到 GPT-3,大模型的规模是一路看涨,表现也越来越惊艳。增大模型规模已经被证明是一条可行的改进路径,而且 DeepMind 前段时间的一些研究表明:这条路还没有走到头,继续增大模型依然有着可观的收益。

但与此同时,我们也知道,增大模型可能并不是提升性能的唯一路径,前段时间的几个研究也证明了这一点。其中比较有代表性的研究要数 DeepMind 的 RETRO Transformer 和 OpenAI 的 WebGPT。这两项研究表明,如果我们用一种搜索 / 查询信息的方式来增强模型,小一点的生成语言模型也能达到之前大模型才能达到的性能。

在大模型一统天下的今天,这类研究显得非常难能可贵。

在这篇文章中,擅长机器学习可视化的知名博客作者 Jay Alammar 详细分析了 DeepMind 的 RETRO(Retrieval-Enhanced TRansfOrmer)模型。该模型与 GPT-3 性能相当,但参数量仅为 GPT-3 的 4%。


RETRO 整合了从数据库中检索到的信息,将其参数从昂贵的事实和世界知识存储中解放出来。

在 RETRO 之前,研究社区也有一些工作采用了类似的方法,因此本文并不是要解释它的新颖性,而是该模型本身。

将语言信息和世界知识信息分离开来

一般来讲,语言模型的任务就是做填空题,这项任务有时候需要与事实有关的信息,比如


但有时候,如果你对某种语言比较熟悉,你也可以直接猜出空白部分要填什么,例如:


这种区别非常重要,因为大型语言模型将它们所知道的一切都编码到模型参数中。虽然这对于语言信息是有意义的,但是对于事实信息和世界知识信息是无效的。加入检索方法之后,语言模型可以缩小很多。在文本生成过程中,神经数据库可以帮助模型检索它需要的事实信息。


随着训练数据记忆量的减少,我们可以使用较小的语言模型来加速训练。任何人都可以在更小、更便宜的 GPU 上部署这些模型,并根据需要对它们进行调整。

从结构上看,RETRO 是一个编码器 - 解码器模型,就像原始的 Transformer。然而,它在检索数据库的帮助下增加了输入序列。该模型在数据库中找到最可能的序列,并将它们添加到输入中。RETRO 利用它的魔力生成输出预测。


在探索模型架构之前,让我们先深入挖掘一下检索数据库。

RETRO 的检索数据库

此处的数据库是一个键值存储(key-value store)数据库。其中 key 是标准的 BERT 句子嵌入,value 是由两部分组成的文本:

  1. Neighbor,用于计算 key;
  2. Completion,原文件中文本的延续。


RETRO 的数据库包含基于 MassiveText 数据集的 2 万亿个多语言 token。neighbor chunk 和 completion chunk 的长度最多为 64 个 token。

RETRO 数据库内部展示了 RETRO 数据库中键值对的示例。

RETRO 将输入提示分成多个 chunk。为简单起见,此处重点关注如何用检索到的文本扩充一个 chunk。但是,模型会针对输入提示中的每个 chunk(第一个 chunk 除外)执行此过程。

数据库查找

在点击 RETRO 之前,输入提示进入 BERT。对输出的上下文向量进行平均以构建句子嵌入向量。然后使用该向量查询数据库。

使用 BERT 处理输入提示会生成上下文化的 token 嵌入 。对它们求平均值会产生一个句子嵌入。

然后将该句子嵌入用于近似最近邻搜索。检索两个最近邻,它们的文本成为 RETRO 输入的一部分。

BERT 句子嵌入用于从 RETRO 的神经数据库中检索最近邻。然后将这些添加到语言模型的输入中。

现在 RETRO 的输入是:输入提示及其来自数据库的两个最近邻(及其延续)。

从这里开始,Transformer 和 RETRO 块将信息合并到它们的处理中。

检索到的近邻被添加到语言模型的输入中。然而,它们在模型内部的处理方式略有不同。

高层次的 RETRO 架构

RETRO 的架构由一个编码器堆栈和一个解码器堆栈组成。

RETRO Transformer 由一个编码器堆栈(处理近邻)和一个解码器堆栈(处理输入)组成。

编码器由标准的 Transformer 编码器块(self-attention + FFNN)组成。Retro 使用由两个 Transformer 编码器块组成的编码器。

解码器堆栈包含了两种解码器 block:

  • 标准 Transformer 解码器块(ATTN + FFNN)
  • RETRO 解码器块(ATTN + Chunked cross attention (CCA) + FFNN)


构成 RETRO 的三种 Transformer 模块。

编码器堆栈会处理检索到的近邻,生成后续将用于注意力的 KEYS 和 VALUES 矩阵。

解码器 block 像 GPT 一样处理输入文本。它对提示 token 应用自注意力(因此只关注之前的 token),然后通过 FFNN 层。


只有到达 RETRO 解码器时,它才开始合并检索到的信息。从 9 开始的每个第三个 block 是一个 RETRO block(允许其输入关注近邻)。所以第 9、12、15…32 层是 RETRO block。


下图展示了检索到的信息可以浏览完成提示所需的节点步骤。


原文链接:http://jalammar.github.io/illustrated-retrieval-transformer/

相关文章
|
2月前
|
API 云栖大会
通义千问升级旗舰模型Qwen-Max,性能接近GPT-4o
通义旗舰模型Qwen-Max全方位升级,性能接近GPT-4o
752 10
|
1天前
|
机器学习/深度学习 人工智能 自然语言处理
o1医学领域大胜GPT-4,性能暴涨!顶尖华人团队激动发文:离AI医生越来越近了
【10月更文挑战第29天】近日,一支顶尖华人团队发布论文《A Preliminary Study of o1 in Medicine: Are We Closer to an AI Doctor?》,揭示了OpenAI最新语言模型o1在医学领域的卓越表现。研究显示,o1在概念识别、文本总结、问答等任务上远超GPT-4,显著提升了医学领域的AI应用水平,向实现AI医生的目标迈进了一大步。
6 3
|
3月前
|
自然语言处理 测试技术 计算机视觉
ECCV 2024:提升GPT-4V、Gemini检测任务性能,你需要这种提示范式
【8月更文挑战第14天】在2024年ECCV上,一篇论文介绍了DetToolChain——一种创新提示范式,旨在提升GPT-4V等多模态大型语言模型在检测任务上的表现。它利用精心设计的视觉提示引导模型关注图像的关键区域,并通过Chain-of-Thought方法将复杂任务分解为简单步骤,显著提高了零样本目标检测的准确性。实验显示,在多个基准测试上,DetToolChain带来了高达24.23%的性能提升。然而,这种方法可能需要大量计算资源,并且在不同任务和数据集上的效果仍有待验证。
160 66
|
2月前
|
数据可视化 Swift
小钢炮进化,MiniCPM 3.0 开源!4B参数超GPT3.5性能,无限长文本,超强RAG三件套!模型推理、微调实战来啦!
旗舰端侧模型面壁「小钢炮」系列进化为全新 MiniCPM 3.0 基座模型,再次以小博大,以 4B 参数,带来超越 GPT-3.5 的性能。并且,量化后仅 2GB 内存,端侧友好。
小钢炮进化,MiniCPM 3.0 开源!4B参数超GPT3.5性能,无限长文本,超强RAG三件套!模型推理、微调实战来啦!
|
2月前
|
人工智能 安全 测试技术
忘掉GPT-5!OpenAI推出全新AI模型系列o1,声称性能达到博士级
忘掉GPT-5!OpenAI推出全新AI模型系列o1,声称性能达到博士级
|
2月前
|
人工智能 自然语言处理 数据挖掘
【通义】AI视界|性能超越GPT-4o?最强大的开源AI模型来了……
本文介绍了五项最新AI技术动态,包括性能超越GPT-4o的开源AI模型Reflection70B、智谱清言App限时免费的视频通话功能、哈佛医学院研发的癌症诊断AI模型CHIEF、Replit推出的AI编程助手,以及英特尔与日本AIST合作设立的芯片制造研发中心。这些进展展示了AI领域的快速创新与广泛应用。更多详情,请访问通义官网体验。
|
2月前
|
机器学习/深度学习 数据采集 人工智能
Llama 8B搜索100次超越GPT-4o!推理+搜索即可提升性能,新Scaling Law诞生?
【9月更文挑战第8天】在人工智能领域,理查德·萨顿提出了一项重要观点,即利用通用计算方法最终是最有效的途径,这一理念在诸如计算机象棋、围棋、语音识别及视觉等多个子领域中得到了验证。萨顿强调,计算能力的指数增长使得依赖大量计算的技术更加吸引人,并且从长远来看,计算能力将是唯一重要的因素。尽管他的观点强调了搜索和学习方法的力量,但也有人批评其忽略了领域知识和其他因素的重要性。
37 2
|
4月前
|
测试技术
8B尺寸达到GPT-4级性能!北大等提出医疗专家模型训练方法
【7月更文挑战第8天】北京大学等研究者提出的新方法缓解了大模型如Llama-3-8B在持续预训练时的“稳定性差距”,通过多轮次训练、高质量子语料库选择和数据混合策略,提升性能和效率。在医疗领域,他们将OpenLlama-3B性能提升至40.7%,并创建的Llama-3-Physician模型达到GPT-4级别。尽管取得突破,该方法在其他模型和领域的适用性仍需探索,且持续预训练仍资源密集。[链接: https://arxiv.org/abs/2406.14833]
87 25
|
6月前
|
人工智能 测试技术 iOS开发
微软Phi-3,3.8亿参数能与Mixtral 8x7B和GPT-3.5相媲美,量化后还可直接在IPhone中运行
Phi-3系列是微软推出的一系列高效语言模型,旨在在移动设备上实现高性能。该系列包括 Phi-3-mini(38亿参数)、Phi-3-small 和 Phi-3-medium,它们在保持紧凑的同时,性能媲美GPT-3.5和Mixtral。模型通过精心筛选的数据集和优化训练策略,如数据最优化和阶段训练,实现高效能。 Phi-3-mini可在iPhone 14上运行,占用约1.8GB内存。这些模型在多个基准测试中展现出色性能,推动了AI在移动设备上的应用,增强了用户隐私和体验。虽然目前仅发布技术报告,但源代码和权重即将开放下载。
147 1
|
5月前
|
人工智能 机器人 测试技术
马斯克推出Grok-1.5,接近GPT-4级别的性能
马斯克推出Grok-1.5,接近GPT-4级别的性能

热门文章

最新文章