大型语言模型如何工作?

简介: 大型语言模型如何工作?

引言

本文旨在以浅显易懂的方式,向读者阐释大型语言模型(LLM)的工作原理。

我们首先看一下文档补全器模型的工作原理:

user prompt:
A banana is

model response:
an elongated, edible fruit

然后,文档生成器模型的工作原理如下:

user prompt:
I want to buy a new car

model response:
What kind of car do you want to buy?

了解上面两个模型的不同之处。

第一个模型是文档补全器,只会根据最有可能成为下一个字符的内容来补全提示。这是我们用一部分互联网数据训练的基础模型。

第二个模型是文档生成器,会根据提示问题生成更像人类的回答。这就是 ChatGPT 模型。

ChatGPT 模型是一种推理模型,能够根据提示问题生成响应。它与基础模型的区别在于增加了两个训练步骤:微调和从人类反馈中进行强化学习。

预训练:基础模型

这正是 AI 革命的核心,也是其神奇之处。训练模型的过程是向它提供大量数据,并让它从中学习。

如 GPT-3 论文所述,基础模型是在大量互联网数据上训练的。对于像你我这样的个人来说,这并不容易。它不仅需要获取数据,还需要大量的计算能力,比如 GPU 和 TPU。

但不用担心,我们仍然可以在自己的电脑上学习训练一个小型 GPT 模型。

LLM 训练的创新之处在于引入了 Transformer 架构,这使得模型能够在保留输入各部分之间关键上下文关系的同时,从海量数据中学习。

通过保持这些联系,模型可以基于提供的上下文有效推断新的见解,不论是单词、句子、段落,还是更多。凭借这一能力,LLM 训练为自然语言处理和生成任务开辟了新的可能性,使机器能够更好地理解和回应人类的交流。

以下是用于训练基础模型的 Transformer 架构示意图:

这是一个基于神经网络的模型训练,结合了一些旧的和新的技术,包括:标记化、嵌入、位置编码、前馈、归一化、 softmax 、线性变换,尤其是多头注意力机制。

这是你我都非常感兴趣的部分。我们想要明确了解该架构的理念以及具体的训练过程。因此,从下一篇文章开始,我们将深入探讨用于训练基础模型的论文、代码和数学原理。

微调:训练助手

微调是一种非常巧妙的技术实现。据我所知,OpenAI可能是首个采用这种方法的机构。其核心思想虽然简单,但执行起来非常高效:聘请人工标注员来构建大量的问答对话对(比如达到10万对)。接着,将这些对话对输入到模型中,让模型通过它们进行学习。

这个过程就是所谓的微调。想象一下,当模型经过这10万个对话样本的训练后,它将能够像人类一样进行回应!现在,让我们来审视一下这些经过标注的对话样本:

Human labeled Q&A

Q: What is your name?
A: My name is John.
Human labeled Q&A

Q: What's the capital of China?
A: China's capital is Beijing.
Human labeled Q&A

Q: Summarize the plot of the movie Titanic.
A: The movie Titanic is about a ship that sinks in the ocean.

通过向模型灌输这些回应风格,模型对相关上下文的回应概率将大幅提升,从而能够针对用户的提问给出回应。我们通过让模型在多样化的对话风格中进行训练,提高了它对用户提示给出恰当且相关回答的可能性。

这就是语言模型能够表现得如此聪明且接近人类的原因;它们通过学习模仿现实对话的节奏和模式,能够令人信服地与用户进行互动对话。

下面是一个图表,展示了从基础模型的预训练到助手模型微调过程中的一些关键亮点:

RLHF:根据人类反馈进行强化学习

2022 年 1 月,OpenAI 发表了他们关于对齐语言模型以遵循指令的作品。在他们的博客文章中,他们描述了如何根据人类反馈进一步微调模型:

这个问题稍显复杂。核心思想在于让模型通过人类的反馈进行学习。不同于直接提供大约10万个预标记的问答对,我们收集用户提出的问题和模型给出的回答,然后由人类对这些回答进行排序。将这些经过排序的对话作为最理想的问答样本,再次输入模型,让模型学习这些样本以提升其整体性能。

OpenAI在其博客中介绍了这一过程:

为了使我们的模型更加安全、更有帮助、更符合预期,我们采用了一种称为人类反馈强化学习(RLHF)的技术。我们的客户通过API提交提示后,我们的标注者会展示出期望的模型行为,并对我们模型生成的多个回答进行排序。然后,我们利用这些数据对GPT-3进行微调。

以下是一个基础模型与经过微调/RLHF处理后的模型响应的对比示例:

你可以看到,没有fine-tune和RLHF,模型只是一个文档补全器。

Prompt 工程

尽管采用了微调和人类反馈强化学习(RLHF),模型有时仍需额外辅助才能生成我们期望的回答。这正是提示工程大显身手的地方。

简单来说,我们可以通过精心构思提示来引导模型给出我们想要的答案,有时这甚至可以在不进行微调的情况下实现。

如果你不想深入数学和编程的复杂性,那么专注于提示工程是个不错的选择,因为它仅通过更巧妙地设计提示,就能让大型语言模型(LLM)发挥出最佳性能。

现在,让我们通过一个实例来进一步了解:

prompt: The sky is
output: blue.

prompt: Complete the sentence:The sky is
output: blue during the day and dark at night.

精心设计的Prompt能够引导模型完成诸如解决数学问题或概括文本等复杂工作。因此,Prompt工程在大型语言模型(LLM)的生态系统中发挥着至关重要的作用

总结

你已经耐心阅读到这里,我确信要完全理解这些信息需要花费一些时间,尤其是对于那些新接触大型语言模型(LLM)领域的读者。

相关文章
|
2月前
|
人工智能 自然语言处理 算法
谷歌推出”自我发现“框架,极大增强GPT-4等大模型推理能力
【4月更文挑战第20天】谷歌DeepMind团队推出了SELF-DISCOVER框架,让大型语言模型能自我发现并构建推理结构,提升在复杂任务中的性能。该框架模仿人类解决问题方式,分两阶段选择和适应原子推理模块,以解决挑战。在多任务测试中,SELF-DISCOVER相比传统方法表现出色,性能提升42%,计算量减少10至40倍。它具有跨模型应用的普适性,并与人类思维方式相通。然而,它在某些任务类型上仍有优化空间,且需解决计算成本问题。论文链接:https://arxiv.org/abs/2402.03620
40 1
|
2月前
|
人工智能 自然语言处理 机器人
“大型语言模型”和“LLM”这些术语将变得不那么常见
【1月更文挑战第7天】“大型语言模型”和“LLM”这些术语将变得不那么常见
63 1
“大型语言模型”和“LLM”这些术语将变得不那么常见
|
19天前
|
机器学习/深度学习 语音技术
多模态大模型不够灵活,谷歌DeepMind创新架构Zipper:分开训练再压缩
【6月更文挑战第12天】谷歌DeepMind的Zipper架构解决了多模态大模型灵活性问题,通过分解为单模态模型并用“压缩”过程组合,实现多模态生成。该方法允许独立训练每个模态,提升灵活性和可扩展性,适用于数据有限或领域特定的模态。Zipper利用交叉注意力机制融合模态输出,适用于图像描述、语音识别等任务。尽管需要更多计算资源且性能受限于单模态模型质量,但已在ASR和TTS领域展现潜力。论文链接:https://arxiv.org/pdf/2405.18669
27 3
|
23天前
|
机器学习/深度学习 人工智能 数据库
什么是大型语言模型 ?
什么是大型语言模型 ?
19 5
|
2月前
|
存储 机器学习/深度学习 人工智能
论文介绍:InfLLM——揭示大型语言模型在无需训练的情况下处理极长序列的内在能力
【5月更文挑战第18天】InfLLM是一种新方法,无需额外训练即可增强大型语言模型处理极长序列的能力。通过使用记忆单元存储长序列的远距离上下文,InfLLM能更准确地捕捉长距离依赖,提高对长文本理解。实验表明,InfLLM使预训练在短序列上的模型在处理极长序列时表现媲美甚至超过专门训练的模型。尽管有挑战,如动态上下文分割和记忆单元效率,InfLLM为长序列处理提供了有效且未经训练的解决方案。论文链接:https://arxiv.org/abs/2402.04617
51 3
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
让大模型不再巨无霸,这是一份最新的大模型参数高效微调综述
【5月更文挑战第12天】最新综述探讨了大模型参数高效微调,旨在减少计算成本、增强泛化能力和灵活性。方法包括Additive、Selective、Reparameterized和Hybrid PEFT,已应用于NLP、CV和多模态学习。尽管取得进展,仍需解决泛化、效率和可解释性问题。未来研究将关注多任务学习、强化学习和神经架构搜索。论文链接:https://arxiv.org/pdf/2403.14608.pdf
112 2
|
2月前
|
人工智能 自然语言处理 安全
【大模型】 基于AI和全球化进程的权衡:开源大模型与闭源大模型
【大模型】 基于AI和全球化进程的权衡:开源大模型与闭源大模型
58 0
|
2月前
|
机器学习/深度学习 自然语言处理 机器人
探索高效的大型语言模型:DiJiang的创新之路
【4月更文挑战第4天】华为诺亚方舟实验室提出DiJiang方法,通过频域核化技术优化Transformer模型,降低大型语言模型的计算复杂度和训练成本。使用DCT消除softmax操作,实现线性复杂度的注意力计算。实验显示DiJiang在保持性能的同时,训练成本降低约10倍,推理速度提升,但模型泛化和长序列处理能力还需验证。
52 8
探索高效的大型语言模型:DiJiang的创新之路
|
2月前
|
机器学习/深度学习 前端开发 机器人
如何开始定制你自己的大型语言模型
2023年,大型语言模型发展迅速,规模更大,性能更强。用户能否定制自己的模型取决于硬件资源。需在功能和成本间找到平衡,可以选择高性能(如40B+参数,适合专业用途,需强大GPU,成本高)或低性能(如7B参数,适合学习和简单应用,GPU成本较低)模型。训练模型可借助HuggingFace的Transformers库,定义数据集并进行训练。训练好的模型可使用Ollama和Open Web UI部署。具备适当GPU是入门基础。
84 2
|
2月前
|
人工智能 自然语言处理 机器人
论文介绍:大型语言模型作为通用模式机器
【2月更文挑战第29天】大型语言模型(LLMs)展现出处理复杂序列模式的能力,超越自然语言任务,进入机器人学领域。研究显示,LLMs能理解概率上下文无关文法生成的序列,处理抽象模式,甚至在标记随机替换后仍能完成模式。在机器人学中,未经额外训练的LLMs能推断数字序列,执行控制策略,如在CartPole任务中保持平衡。尽管面临延迟、计算成本等挑战,LLMs作为通用模式机器在序列处理和机器人学上的潜力预示着AI的新方向。论文链接:[arXiv:2307.04721](https://arxiv.org/abs/2307.04721)
27 1
论文介绍:大型语言模型作为通用模式机器