大型语言模型简介
大型语言模型 (LLM) 是一种深度学习算法,可以使用非常大的数据集识别、总结、翻译、预测和生成内容。
什么是大型语言模型?
大型语言模型主要代表一类称为transformer网络的深度学习架构。transformer模型是一种神经网络,它通过跟踪顺序数据中的关系(例如本句中的单词)来学习上下文和含义。
transformer由多个transformer块(也称为层)组成。例如,transformer具有自注意力层、前馈层和规范化层,它们共同作用以解密输入以预测推理时的输出流。这些层可以堆叠在一起以形成更深的transformer和强大的语言模型。谷歌在 2017 年的论文“注意力就是你所需要的一切”中首次介绍了transformer。
有两项关键创新使得 Transformer 特别适合用于大型语言模型:位置编码和自注意力。
位置编码嵌入了输入在给定序列中出现的顺序。本质上,由于位置编码,单词可以非顺序地输入神经网络,而不是按顺序将句子中的单词输入神经网络。
自注意力在处理输入数据的每个部分时为其分配权重。此权重表示该输入在上下文中相对于其余输入的重要性。换句话说,模型不再需要对所有输入投入相同的注意力,而可以专注于输入中真正重要的部分。随着模型筛选和分析大量数据,神经网络需要关注输入的哪些部分的这种表示会随着时间的推移而学习。
这两种技术结合起来可以分析不同元素在长距离上非顺序地相互影响和关联的微妙方式和背景。
非顺序处理数据的能力使得复杂问题能够分解为多个较小的同时计算。自然,GPU 非常适合并行解决这些类型的问题,从而可以大规模处理大规模未标记数据集和庞大的transformer网络。
为什么大型语言模型很重要?
从历史上看,人工智能模型一直专注于感知和理解。
然而,大型语言模型是在具有数千亿个参数的互联网规模数据集上训练的,现在已经释放了人工智能模型生成类似人类内容的能力。
模型可以以可靠的方式阅读、编写、编码、绘制和创建,增强人类创造力并提高各行各业的生产力,以解决世界上最棘手的问题。
这些 LLM 的应用涵盖了大量用例。例如,人工智能系统可以学习蛋白质序列的语言,以提供可行的化合物,帮助科学家开发突破性的救命疫苗。
或者计算机可以帮助人类做他们最擅长的事情——发挥创造力、沟通和创造。患有写作障碍的作家可以使用大型语言模型来激发他们的创造力。
或者软件程序员可以提高工作效率,利用 LLM 根据自然语言描述生成代码。
什么是大型语言模型示例?
整个计算堆栈的进步使得开发越来越复杂的 LLM 成为可能。2020 年 6 月,OpenAI 发布了 GPT-3,这是一个拥有 1750 亿个参数的模型,可以使用简短的书面提示生成文本和代码。2021 年,NVIDIA 和 Microsoft 开发了 Megatron-Turing 自然语言生成 530B,这是世界上最大的阅读理解和自然语言推理模型之一,拥有 5300 亿个参数。
随着 LLM 规模的扩大,其能力也在不断增强。广义上讲,LLM 的文本内容用例可以按以下方式划分:
-
生成(例如,故事写作、营销内容创建)
-
总结(例如,法律释义、会议记录总结)
-
翻译(例如,语言之间、文本到代码)
-
分类(例如,毒性分类、情绪分析)
-
聊天机器人(例如,开放域问答、虚拟助手)
世界各地的企业开始利用 LLM 来解锁新的可能性:
- 医学研究人员在来自教科书、研究论文和患者电子健康记录的数据语料库上训练医疗保健领域的大型语言模型,以完成蛋白质结构预测等任务,这些任务可以揭示疾病的模式并预测结果。
- 零售商可以利用 LLM 通过动态聊天机器人为客户提供一流的客户体验。
- 开发人员可以利用 LLM 编写软件并教机器人如何执行物理任务。
- 财务顾问可以使用 LLM 来总结收益电话会议并创建重要会议的记录。
- 营销人员可以训练 LLM 将客户反馈和请求组织成集群或根据产品描述将产品细分为类别。
大型语言模型仍处于早期阶段,其前景广阔;具有零样本学习能力的单个模型可以通过即时理解和生成类似人类的想法来解决几乎所有可以想象到的问题。用例涵盖每个公司、每笔业务交易和每个行业,从而带来巨大的价值创造机会。
大型语言模型如何工作?
大型语言模型使用无监督学习进行训练。通过无监督学习,模型可以使用未标记的数据集在数据中找到以前未知的模式。这也消除了对大量数据标记的需求,这是构建 AI 模型的最大挑战之一。
由于 LLM 经历了广泛的训练过程,这些模型不需要针对任何特定任务进行训练,而是可以服务于多种用例。这些类型的模型被称为基础模型。
基础模型无需太多指导或训练即可为各种目的生成文本的能力称为零样本学习。这种能力的不同变体包括一次性或少量学习,其中基础模型被输入一个或几个示例,说明如何完成任务以理解和更好地执行选定的用例。
尽管大型语言模型的零样本学习具有巨大的能力,但开发人员和企业天生就希望驯服这些系统以他们期望的方式运行。为了将这些大型语言模型部署到特定用例,可以使用多种技术定制模型以实现更高的准确性。一些技术包括快速调整、微调和适配器。
有几类大型语言模型适用于不同类型的用例:
- 仅编码器:这些模型通常适用于可以理解语言的任务,例如分类和情感分析。仅编码器模型的示例包括 BERT(来自 Transformers 的双向编码器表示)。
- 仅解码器:这类模型非常擅长生成语言和内容。一些用例包括故事写作和博客生成。仅解码器架构的示例包括 GPT-3(生成式预训练 Transformer 3)。
- 编码器-解码器:这些模型结合了 Transformer 架构的编码器和解码器组件,以理解和生成内容。这种架构的一些出色用例包括翻译和摘要。编码器-解码器架构的示例包括 T5(文本到文本 Transformer)。
大型语言模型的挑战是什么?
开发和维护大型语言模型所需的大量资本投资、大型数据集、技术专业知识和大规模计算基础设施一直是大多数企业的进入壁垒。
- 计算、成本和时间密集型工作负载:维护和开发 LLM 需要大量资本投资、技术专长和大规模计算基础设施。训练 LLM 需要数千个 GPU 和数周至数月的专门训练时间。一些估计表明,对具有 1750 亿个参数、在 3000 亿个 token 上进行训练的 GPT-3 模型进行一次训练,仅在计算方面就可能花费超过 1200 万美元。
- 所需数据规模:如上所述,训练大型模型需要大量数据。许多公司难以获得足够大的数据集来训练他们的大型语言模型。对于需要私有数据(例如财务或健康数据)的用例,这个问题更加严重。事实上,训练模型所需的数据可能根本不存在。
- 技术专长:由于规模庞大,训练和部署大型语言模型非常困难,需要对深度学习工作流程、Transformer 和分布式软件和硬件有深入的了解,以及同时管理数千个 GPU 的能力。
如何开始使用大型语言模型?
NVIDIA 提供各种工具来简化大型语言模型的构建和部署:
- NVIDIA NeMo 服务是 NVIDIA AI Foundations 的一部分,是一种用于企业超个性化和大规模部署智能大型语言模型的云服务。
- NVIDIA BioNeMo 服务是 NVIDIA AI Foundations 的一部分,是一种用于药物发现生成 AI 的云服务,可让研究人员大规模定制和部署特定领域的、最先进的生成和预测生物分子 AI 模型。
- NVIDIA Picasso 服务是 NVIDIA AI Foundations 的一部分,是一种用于构建和部署生成 AI 驱动的图像、视频和 3D 应用程序的云服务。
- NVIDIA NeMo 框架是 NVIDIA AI 平台的一部分,是一个端到端、云原生的企业框架,用于构建、定制和部署具有数十亿个参数的生成 AI 模型。
尽管面临挑战,但大型语言模型的前景是巨大的。 NVIDIA 及其生态系统致力于让消费者、开发者和企业能够享受大型语言模型带来的好处。