作为一个曾经的VUI领域从业者,LLM出现后非常想要弄清大模型对VUI领域的影响,于是有了此文。

本篇适合对大模型、GPT原理入门的同学阅读,尽可能用简单的语言解释了语言大模型涉及的知识和问题。详细的大模型案例精选在这里:

   

 

本文部分内容由GPT 协助完成。


一.技术原理

1.1 LLM

定义和特点

LLM是语言模型(Language Model)的一种,简单来说,LLM通过学习大量的文本数据,例如文章、对话和网页等,来预测下一个词或下一段话的可能性,从而使计算机能够更好地理解和生成人类语言。

LLM的核心特点包括自动化训练、大规模的数据训练、更强的上下文感知能力、多模态生成。

一般LLM指参数数量超过10亿数量级的模型。

GPT和LLM的关系

GPT是其中一种实现LLM大规模语言模型的技术,GPT出现之前,LLM并没有作为一个独立的概念被广泛讨论和使用。

 

1.2 GPT

1.2.1 GPT的训练思路——了解GPT为什么强大

GPT(Generative Pre-Training 生成式的预训练),G是生成Generative、P是预训练( Pre-trained)、T是模型结构Transformer。

总的来说,GPT的训练经历了两个过程:

Part 1.无监督学习阶段

GPT名字中的预训练( Pre-trained)指的也就是这个阶段,之所以叫无监督,是在这个阶段GPT使用了大量未标注的文本数据来自我学习,这和传统的NLP领域研究方法完全不同。

这种方法使得GPT模型可以从大量的无标注数据中学习语言的潜在模式和规律:比如可以学习文本的上下文信息,构建单词之间的语义关系,并在训练过程中自适应地优化模型参数,从而使模型具有更好的文本生成能力。

Part 2.有监督微调

这个阶段可以理解为通过给到GPT正确的对话模板(包含案例和执行结果)让GPT通过案例来学习,并且形成回答。可以使得GPT的能力分化到不同的技能树。

在该阶段需要注意避免过度依赖模板训练,同时引入多样性的数据和技能树,从而使得GPT在生成回答时更加灵活和多样化。

1.2.2 GPT是如何生成回答的?

这里有个重要的概念:自回归生成

这是指模型根据输入的前文和已生成的部分文本来预测下一个单词或字符,不断重复这个过程直到生成整个文本。这个方法又被叫做“生成式”,每次选取生成概率最高的那个字出现。

后文在介绍Google的语言模型Bert时会提到,这种自回归生成的方式是导致GPT 最终超越Bert的关键。

1.2.3 GPT神奇的涌现能力

涌现使GPT模型可以自动生成具有语言上下文和逻辑关系的连贯文本,这些文本在预训练时并没有直接指定,而是通过模型自身的学习和推理得到的。这被众多文章称为:“乌鸦”能力(文章最后有附图解释乌鸦和鹦鹉的故事)

GPT 3 已经涌现了上下文理解能力、一定的泛化能力。使得模型无需经过重新训练就可以理解新的数据。具体来说,当 GPT 3 在处理一段文本时,它不仅会考虑到这段文本本身的含义和语法结构,还会同时考虑到该文本所处的上下文环境,例如前面的文本内容、所属的领域、用户身份等。从而更好地理解这段文本的含义和目的,并且在生成相应的回应时更加精准地表达出自己的意思。

GPT 3.5相比3.0增加了代码训练及指令微调,并且涌现了使用思维链(chain-of-thought)进行复杂推理的能力。

 

//涌现究竟是如何出现的,目前并没有确切的答案,更多的猜测是当数据量达到一定规模后,由于模型学习到了足够多的样本案例,逐渐出现的。

 

1.2.4 GPT-4

官方由于竞争以及安全方面考虑,并未公布具体细节,从能力上来讲,GPT-4可以接受图像和文本作为输入,并产生文本输出。可以处理更长的提示和对话,并且不会出现太多的事实错误。并且在代码风格、输出格式和变量命名方面表现更好。

//关于这部分,可以在知乎问题下看到GPT-4的能力已经达到了非常惊人的程度https://www.zhihu.com/question/589641558

1.2.5 GPT和Chat GPT是一回事吗?

不是。ChatGPT是基于GPT技术构建的专为聊天应用程序设计的语言模型,但已经过微调以理解人类命令指令的含义,例如理解上下文、识别意图和提供适当的响应。

 

1.2.6 GPT解决了传统模型的哪些问题

更强上下文理解能力

GPT在涌现阶段学习文本的上下文信息,构建单词之间的语义关系。

更强的泛化能力

传统的语言模型通常采用有监督学习的训练方式。这种方法需要大量的标注数据作为训练模型的输入。这种方式会导致模型「泛化」能力不佳。

泛化问题是指机器学习模型在学习和理解语言时,只能记忆和学习到训练数据中出现的特定单词、短语、句子和语法规则,而无法将这些知识推广到新的、类似但不完全相同的情境中。

GPT通过预训练得到的涌现能力使其具有很好的泛化能力,可以处理各种类型和领域的任务。另外GPT的训练方法是单字猜测的方式预测下一个字,只需要积累不同场景下一个字的通用规律即可,无需遇到新的数据时往往需要重新训练。

减少人工成本

相比传统模型需要手工设计特征,GPT在预训练过程中自动从大量数据中学习到了丰富的语言知识和规律,从而使得在任务微调阶段无需进行特征工程。这一点大大简化了模型的构建过程,减少了人工参与和主观判断的成本。

此外GPT主要使用大规模无监督的预训练,减少了对标注数据的依赖。

 

1.3 一些需要解释的名词

也许你会经常在其他文章中看到他们但是不理解其中的含义:

AGI 人工通用智能

也称为强人工智能,它是指一种具备像人类一样的学习、推理、思考、决策和自我发展等能力的人工智能系统。与目前的人工智能系统相比,AGI具有更广泛的适用性和更高的智能水平,能够处理各种复杂的任务和问题,并能够持续地自我学习和进化,从而实现真正的人类水平智能。目前还没有任何一个人工智能模型能够达到真正的AGI水平。

Transformer

是一种基于注意力机制(attention mechanism)的序列到序列(sequence-to-sequence)模型。

传统的序列到序列模型(如循环神经网络RNN)存在着信息传递效率低、难以并行计算等问题,而Transformer通过引入自注意力机制来解决这些问题。自注意力机制允许模型根据序列中的其他位置调整每个位置的表示,从而提高模型对上下文的理解能力。与RNN相比,Transformer能够更好地处理长序列,并且可以使用并行计算来提高训练速度。

Attention mechanism 注意力机制

是一种用于机器学习和自然语言处理的技术,它可以根据输入的信息动态地将注意力集中在不同的位置,从而使得模型能够更好地理解和处理输入的序列数据。

sequence-to-sequence 序列到序列

是一种常见的神经网络架构,用于将一个序列映射到另一个序列。它由两个主要组件组成:编码器和解码器。编码器将输入序列转换为一个向量表示,解码器则将这个向量解码成目标序列。在这个过程中,模型会学习到输入序列和输出序列之间的对应关系,从而实现转换。

In-Context Learning 上下文理解

指机器学习模型可以根据上下文信息,对相同的词汇在不同上下文中进行不同的理解和处理,以更准确地对文本进行理解和生成。

Few Shot

在给定非常少的样本(通常是几个或者十几个)的情况下,让模型学会针对该领域的语言理解或生成任务。具体来说,就是通过给模型提供一些示例,让模型在学习这些示例的基础上,能够根据给定的提示或问题进行推理或生成相应的文本。

Zero Shot

是指在没有接受任何训练的情况下,让模型对没有出现在训练集中的任务进行推理或生成相应的文本。具体来说,就是通过给模型提供一些与目标任务相关的信息,例如一些关键词或描述,让模型能够推断出目标任务所需要的信息并生成相应的文本。

Few Shot、Zero Shot这两个概念主要是为了描述语言模型的泛化能力,也就是模型在学习过一些示例后能否推广到新的任务或问题。在实际应用中,这种泛化能力非常重要,因为很难为每个任务或问题都提供大量的样本进行训练。这两个方法通常适合拥有较大数据集的模型,比如GPT。

Fine tuning 微调

在预训练模型的基础上使用标注数据进行微调,以适应特定任务,通常适合较小数据集的模型,比如Bert。

Prompt

Prompt是一种基于自然语言生成模型的输入提示机制,可以在一定程度上指导模型的生成结果。通过Prompt,我们可以给模型提供一些提示、条件或者上下文信息,以期望模型能够生成更准确、更符合预期的输出结果。

 

附录:学习资料推荐

原理篇

不想看文字可以看视频:

【渐构】万字科普GPT4为何会颠覆现有工作流;为何你要关注微软Copilot、文心一言等大模型_哔哩哔哩_bilibili

 

详细的文字介绍:这篇文章中“乌鸦与鹦鹉模式”的案例给我留下非常深刻的印象:

万字长文,探讨关于ChatGPT的五个最核心问题

 

张俊林:由ChatGPT反思大语言模型(LLM)的技术精要

ChatGPT 的「神功」,是如何炼成的?

 


想要收到更及时的文章推送的小伙伴可以扫码关注公众号哟~