当前位置:   article > 正文

陈巍:GPT-4核心技术分析报告(2)——GPT-4的技术分析(收录于GPT-4/ChatGPT技术与产业分析)_gpt4的核心技术

gpt4的核心技术

陈巍:本文是《GPT-4核心技术分析报告》的第2章的简写版(无公式版)。从GPT家族的发展历史、架构开始,讲解GPT-4的多模态架构和GPT-4中的关键技术,适合GPT-4技术入门和投资人熟悉相关技术。

本章目录

2 GPT-4的技术分析

2.1 架构知识预热:从GPT-1到ChatGPT

2.1.1 GPT和BERT之前的时代

2.1.2 Transformer与注意力机制

2.1.3 GPT-1与无监督训练

2.1.4 GPT-2与Zero-shot Learning

2.1.5 GPT-3与上下文学习

2.1.6 GPT-3.5/ChatGPT与指令微调

2.2 GPT-4的多模态架构

2.2.1多模态对于大语言模型的重要意义

2.2.2 GPT-4多模态架构与交叉注意力

2.3 GPT-4的关键技术

2.3.1 理论基础——多模态涌现能力

2.3.2 核心优势——多模态思维链

2.3.3 编程范式——多模态提示工程

2.3.4 关键技术——人类反馈强化学习

2.3.5 安全技术——基于规则的奖励模型

2.3.6 安全技术——多模态幻觉检测

2.3.7 模型信息——关于模型大小

主要参考文献

GPT-4是严格意义上的多模态模型,可以支持图像和文字两类信息的同时输入,输出为文本。从学术界的分析来看,无论是知识/能力获取还是与现实物理世界的交互,多模态感知都是实现通用人工智能的必要条件。没有多模态,AI大概难以充分“理解”这个世界。之前的ChatGPT或GPT-3.5就像AI蒙上双眼在那里“盲答”,而到了多模态的GPT-4,就是AI一边看一边思考

在GPT-4中,多模态输入的图像和文本都基于Transformer作为通用模块/接口,图形感知模块与语言模块对接进行进一步融合计算。通过在多模态语料库上预训练模型,训练数据包括文本数据、任意交错的图像和文本,以及图像-字幕对,可以使模型获得原生支持多模态任务的能力。

一方面,多模态技术将大语言模型的应用拓宽了到更多高价值领域,例如多模态人机交互、文档处理和机器人交互技术。

另一方面,也更为重要的是,不同模态的模型内部融合产生了更多能力,而不是简单的模态功能叠加。这一现象类似于视觉启发了更深层次的语言表达和理解。

下面先通过GPT家族的历史介绍来进行GPT的架构知识预热,然后引申到GPT-4的多模态架构和核心技术。

2.1 架构知识预热:从GPT-1到ChatGPT

对前几代GPT架构很熟悉的可以略过这一部分。

GPT-4之前有几个的前辈,包括GPT-1、GPT-2、GPT-3和ChatGPT。GPT家族与来自Google的BERT模型都是知名的NLP模型族,两者都基于Transformer技术。GPT-4则是在GPT-3.5/ChatGPT基础上增加了额外的视觉语言模块,理论上具有更大的模型尺寸和输入文本窗口。

2.1.1 GPT和BERT之前的时代

基于规则的NLP V.S. 基于机器学习的NLP V.S. 基于深度学习的NLP(来源:Jaeyeol Song, Deep learning-based extraction of predicate-argument structure (PAS) in building design rule sentences, 2020)

自然语言处理(NLP)的研究可以追溯到 20 世纪 40 年代。早期NLP技术是基于规则的,即基于特定的规则使用程序/代码和知识图谱进行固定模式的对话,所有的应答都是固定模式和已有知识库的。基于规则的NLP不容易出现幻觉,但是应答能力仅限于与特定领域相关的内容,且不容易形成逻辑推理。在机器学习和深度学习诞生后,NLP技术逐渐进入基于模型的时代。

在进入深度学习模型阶段后,早期的NLP文本生成是通过传统循环神经网络 (RNN)、长短时记忆神经网络 (LSTM)或门控循环单元 (GRU)实现的。这三类经典模型都是基于循环结构实现的。

传统循环神经网络 (RNN)包含串行数据点之间的依赖关系(前后或时间关系),并将记忆的概念引入神经网络。通过训练长程 RNN单元 记住基于上下文的概念,从而学习到这些可重复的模式。

但循环神经网络存在短时记忆问题。对于很长的语言/文本序列,将信息从较早的单元传递到较晚的单元容易出现失真。特别是在处理大段长文本时,RNN甚至有可能在一开始的传输中就遗漏或丢失重要信息。另外,在反向传播训练过程中,RNN容易遇到梯度消失这类训练难题。

之后提出的LSTM 和 GRU 是解决RNN短时记忆问题的优化模型。LSTM 和 GRU内部通过门控的机制,进行信息要素的调节。门控可以调节并保留序列中的重要信息,丢弃非关键信息,将有价值的数据信息传递到长序列链中的后级进行计算。LSTM 和 GRU 已经广泛用于各类云边端的语音识别、语音合成和文本生成。

这三类模型能够较好的进行模式识别,在输出单个单词或短语方面表现良好,但无法生成高精度的多轮对话,更无法实现逻辑推理能力。

RNN-LSTM-GRU单元架构对比(来源:互联网)

2.1.2 Transformer与注意力机制

这里只简单介绍Transformer的基本结构。更详细的分析可看我们后面发布的技术书籍。

"Attention is All You Need"(Vaswani, et al., 2017)是2017年最有影响力的NLP论文之一。这篇论文提出了很多对注意力技术的改进,在循环网络单元的情况下实现seq2seq建模,并且提出新的Transformer架构。

Transformer在数学上是大矩阵的计算,通过计算不同语义之间的关联度(概率)来生成具有最高概率的语义反馈。RNN、LSTM或者GRU主要是进行模式识别,而Transformer不仅仅是一个矩阵计算。Transformer事实上还承载着语义关联的重要功能。

Transformer中的核心组件是多头自注意机制模块。Transformer将输入的编码表示视为一组键值对(K,V),两者的维度都等于输入序列长度。

多头自注意机制模块(来源:修改自Google)

多头注意力机制的模块内采用缩放点积注意力机制:输出是值的加权和,其中分配给每个值的权重由查询(Q)与所有键(K)的点积决定:

多头机制不是只计算一次注意力,而是并行运行缩放点积注意力算法。独立的注意力输出被Concat连接(矩阵连接,非计算)并线性转换为预期的维度。

原始的Transoformer包括编码器-解码器架构(GPT只有解码器结构)。编码器和解码器都是N个相同层的堆叠,源序列和目标序列(原始数据可以是图像或文本)都经过嵌入层以产生相同维度的数据。

Transformer整体架构(来源:修改自Google)

单个编码器层由多头注意力块(含有Q、K、V输入)和一个前馈模块组成。解码器层由多头注意力块开始,后面是一个连接编码器堆栈输出的多头注意块(即查询Q来自解码器,而值V和键K来自编码器),然后是一个前馈模块,最终在 Softmax(选择概率最高的分类或词汇)模块进行分类器输出。

随着Transformer技术的发展,Transformer也使用在了CV领域,并形成了Vision Transformer技术。

视觉与语言Transformer技术的演进

2.1.3 GPT-1与无监督训练

GPT-1模型的Transformer结构(来源:OpenAI)

2018年6月,OpenAI 发表了GPT-1,以预训练生成式变换器为名的GPT家族首次登上历史舞台。在当时,OpenAI还笼罩在Google的光环之下,并不是很知名。

在GPT-1这项工作之前,绝大多数最先进的 NLP 模型都是使用监督学习,专门针对特定垂直领域任务(如情感分类等)进行训练。但已有的监督模型有两个主要限制:一方面需要大量带有标注的训练数据来学习不容易获得的特定任务,另一方面无法将现有模型泛化到训练数据集以外的任务。

也就是说,如果在真实生活场景使用有监督模型,训练数据集的构建任务将异常庞大和琐碎,数据集的标注成本会异常的高。为了解决这些问题,OpenAI提出了GPT-1。

GPT-1的核心是Transformer,通过两个途径针对性的解决上述的两个问题:

1)通过无监督训练,解决需要大量高质量标注数据的问题,降低数据成本。

2)通过大量不同类型混杂语料进行预训练,解决训练任务的泛化问题。

BERT与GPT的技术基本架构对比(图中En为输入的每个词汇,Tn为输出的每个词汇,来源:互联网)

在GPT-1诞生的时代,AR(Autoregressive,自回归)与AE(Autoencoding,自编码)是无监督学习中的两大路径。AR类语言模型基于大量语料统计,基于单向或双向上下文进行文本生成,对数据的前后相对关系敏感,适合文本生成类任务。AE则通过被掩盖的输入重建原始数据(例如BERT),弥补了单向或双向信息的损失,但却由于信息的掩盖可能导致训练与实际推理的偏差。换句话说,BERT这类基于编码器的模型训练难度可能是高于同尺寸GPT类的。

GPT-1 是一个典型的自回归语言模型,只具有解码器模块。GPT-1模型使用 768大小词嵌入。使用 12 层模型,每个自注意力层有 12 个注意力头,并使用GELU 作为激活函数。

GPT-1模型训练使用了BooksCorpus数据集。训练主要包含两个阶段:第一个阶段,先利用大量无标注的语料(节约标注成本)预训练一个语言模型。在BooksCorpus 数据集上训练后,GPT-1能够学习到大范围的文本/词汇的隐含关系,并在包含连续文本和长文的多样化语料库中获取大量知识。

接着,在第二个阶段对预训练好的语言模型进行精调,将其迁移到各种有监督的NLP任务。也就是后文提到的“预训练+精调”模式。

OpenAI团队也在GPT-1的研究中评估了模型层数对无监督预训练和有监督精调的影响。

层数的影响,从无监督的预训练到有监督的目标任务。

实验表明转移嵌入(transferring embeddings)明显改进了模型性能,每个Transformer层在MultiNLI数据集上获得的提升可高达9%。

GPT-1在MultiNLI和RACE上的表现与转移层数的关系(来源:OpenAI)

2.1.4 GPT-2与Zero-shot Learning

2019年,OpenAI 发表了另一篇关于他们最新模型 GPT-2 的论文( Language Models are Unsupervised Multitask Learners )。该模型开源并在很多NLP任务中使用。相对GPT-1,GPT-2是泛化能力更强的词向量模型,尽管并没有过多的结构创新,但是训练数据集(WebText,来自于Reddit上高赞的文章)和模型参数量更大。目前很多开源的GPT类模型是基于GPT-2进行的结构修改或优化。

GPT-2 有 15 亿个(1.5B)参数。是 GPT-1(117M 参数)的 10 倍以上。GPT-2与 GPT-1 的主要区别包括:

1)GPT-2 有 48 层,使用 1600 维向量进行词嵌入,使用了 50,257 维标记的更大词汇量。

使用1024大小的上下文窗口。

2)GPT-2的层归一化被移动到每个子块的输入,并在最终的自注意力块之后添加了一个额外的层进行归一化。

3)GPT-2在初始化时,残差层的权重按 1/√N 缩放,其中 N 是残差层的数量。

GPT-2的研发团队训练了 117M(与 GPT-1 相同)、345M、762M 和 1.5B参数的四种语言模型,并比较了不同大小的模型精度。在同一数据集上,模型的性能随着参数数量的增加而提升。这一现象事实上导致了后来的语言模型的尺寸的迅速增加。

GPT 2 的一个关键能力是零样本学习(Zero-shot Learning)。Zero-shot是零样本任务迁移的一种特殊情况,即在没有提供示例情况下,模型根据给定的指令理解特定任务。

GPT-2使用的 WebText 的数据集包含来自超过 800 万份文档的 40GB 文本数据。比 GPT-1 模型的 BookCorpus 数据集更加庞大。

GPT-2性能与模型大小关系(来源:OpenAI)

2.1.4 GPT-3与上下文学习

2020年6月,OpenAI 发表了另一篇关于GPT-3 模型的论文(Language Models are Few-Shot Learners)。该模型的参数是 GPT-2 的100 倍以上(175B),并且在更大的文本数据集(低质量的Common Crawl,高质量的WebText2,Books1,Books2和Wikipedia)上进行训练,从而获得更好的模型性能。

GPT-3实际上是由多个版本组成的第3代家族,具有不同数量的参数和所需的计算资源。包括专门用于代码编程的Code系列。GPT-3的后继知名版本包括InstructGPT和ChatGPT。

GPT-3家族(来源:互联网)

由于使用了大量参数和广泛的数据集, GPT-3在零样本和少样本设置中的下游 NLP 任务上表现良好,其编写的文章与人类撰写的在很多时候难以区分,继续延续了GPT-2越大越好的理念。GPT-3还可以执行从未明确训练过的即时任务,例如求和数字、编写 SQL 查询和代码、解读句子中的单词。

GPT-3 有 96 层Transformer层,每层有 96 个注意力头。GPT-3 的词嵌入大小从 GPT-2 的 1600 增加到 12888。上下文窗口大小也从 GPT-2 的 1024 个增加到 GPT-3 的 2048个。并且使用了局部带状稀疏注意力模式。

GPT-3一个突出的特点是上下文学习(In-Context Learning)。在学习预测给定上下文词汇的下一个词汇的同时,GPT-3也学习或模仿数据中的模式,通过对应的关键信息匹配和模式模仿来输出对应情境下的回答。在问答中出现少量提示信息时,语言模型会将示例的模式与其训练时从类似数据中学到的知识或模式进行匹配,并使用知识或模式来应答。上下文学习能力,随着模型参数数量的增加而增强。这一显著能力同样体现在了ChatGPT和GPT-4中。

GPT-3与以往模型的训练算力需求对比(来源:OpenAI)

GPT-3 在五个不同语料库(Common Crawl、WebText2、Books1、Books2 和 Wikipedia。)的混合训练数据集上进行训练,每个语料库都分配不同的权重。相对高质量的数据集权重更高,且使用频次超过1次。 从这时我们可以注意到,对于大语言模型,训练的效果很大程度要要依靠于高质量的语料。

2.1.5 GPT-3.5/ChatGPT与指令微调

GPT-3与GPT-3.5分支(来源:OpenAI)

2022 年 3 月 15 日,OpenAI 发布了名为“text-davinci-003”的新版模型,该模型被描述为比以前版本的 GPT 更强大更具有逻辑能力。目前有若干个属于GPT-3.5 系列的模型分支,其中code-davinci针对代码完成任务进行了优化。

ChatGPT 是基于GPT-3.5(Generative Pre-trained Transformer 3.5)架构开发的对话AI模型,是InstructGPT 的兄弟模型,也是GPT-3.5系列的最高规格。ChatGPT很可能是OpenAI 在GPT-4 正式推出之前的演练,或用于收集大量对话数据

GPT-3.5家族与GPT-3家族对比(来源:OpenAI)

OpenAI使用 RLHF(Reinforcement Learning from Human Feedbac,人类反馈强化学习) 技术对 ChatGPT 进行了训练,且加入了更多人工监督进行微调。

ChatGPT 具有以下特征:

1)可以主动承认自身错误。若用户指出其错误,模型会听取意见并优化答案。

2)ChatGPT 可以质疑不正确的问题。例如被询问 “哥伦布 2015 年来到美国的情景” 的问题时,机器人会说明哥伦布不属于这一时代并调整输出结果。

3)ChatGPT 可以承认自身的无知,承认对专业技术的不了解。

4)支持连续多轮对话。

与大家在生活中用到的各类智能音箱和“人工智障“不同,ChatGPT在对话过程中会记忆先前使用者的对话讯息,即上下文理解,以回答某些假设性的问题。ChatGPT可实现连续对话,极大的提升了对话交互模式下的用户体验。

从GPT-1到GPT-4的对比(含BERT,笔者团队绘制,转载请注明)

2.2 GPT-4的多模态架构

2.2.1多模态对于大语言模型的重要意义

到了GPT-4,技术内涵产生的飞跃其实超过了ChatGPT。有些人认为GPT-4仅仅是GPT-3.5的升级优化,这其实是一种误解。大部分人可能还未看到GPT-4带来的巨大影响和未来

人类或其他高等生物的认知能力通常与从多种模式中学习有关。例如,苹果这一概念包括从视觉和语言获得的多重语义。包括苹果的颜色、形状、纹理以及吃苹果的声音,苹果在词典或其他网络媒体的相应定义等等。我们大多数人在学习认字的时候,也是先看到苹果的卡片图像,然后再记住对应的文字。

不同模态(来源:Jonathan Reed)

与BERT模型类似,GPT-4之前的ChatGPT或GPT-3.5都是根据输入语句,根据语言/语料概率来自动生成回答的每一个字(词语)。从数学或从机器学习的角度来看,语言模型是对词语序列的概率相关性分布的建模,即利用已经说过的语句(语句可以视为数学中的向量)作为输入条件,预测下一个时刻不同语句甚至语言集合出现的概率分布。 “苹果”在GPT-3.5和之前的GPT中只是单纯的语义符号和概率

GPT-4等模型新出现的多模态输入的能力对语言模型至关重要,使得“苹果”等单纯的符号语义扩展为更多的内涵。第一,多模态感知使语言模型能够获得文本描述之外的常识性知识。第二,多模态感知与语义理解的结合为新型任务提供了可能性,例如机器人交互技术和多媒体文档处理等等,仅列出的这两项应用就市场巨大。第三,通过多模态感知统一了接口。图形界面其实是最自然和高效的人机自然交互方式。多模态大语言模型可通过图形方式直接进行信息交互,提升交互效率和模式融合。

多模态模型可以从多种来源和模式中学习知识,并使用模态的交叉关联来完成任务。通过图像或图文知识库学习的信息可用于回答各类多模态语言问题;从文本中学到的信息也可在视觉任务中使用。

2.2.2 GPT-4多模态架构与交叉注意力

截至 2023 年初,多模态大模型正经历将图文信息进行对齐,进行模态认知管理,进一步形成多模态决策或生成的极端。常见的多模态大模型可分为:

1)图像描述生成或文本生成图像。例如最近知名的CLIP、Stable Diffusion。

2)图文问答。例如带有图示的物理题求解或图表分析。GPT-4就是典型代表。

3)文本到图像或图像到文本的检索。

4)视频流描述。

多模态模型的5种典型结构(来源:深圳鹏城实验室)

以视觉-语言模态模型为例,通常由 3 个关键元素组成:图像编码器、文本编码器以及融合来自两个编码器的信息的策略。这些关键元素紧密耦合在一起

根据鹏城实验室新发出的论文归纳,目前常见的多模态模型架构主要包括以下几种:

1)合并注意力架构(Merge-attention):如上图(a),多个输入模态调整为同一的特征表示,多个模态的特征在自注意力之前被合并,共同进入Transformer。

2)共同注意力架构(Co-attention):如上图(b),每个输入模态都具备私有自注意力通道,用于模态独立特征的导入,然后再使用共同的交叉注意力层融合多模态特征。

3)交叉注意力架构(Cross-attention):对于多模态任务,将图像与语言分别结合,实现图文信息的相互嵌入与问答。

4)三角Transformer架构(Tangled-transformer):使用三组 Transformer 模块同时处理动作、图形对象和语言特征,通过特定的三角连接关系,注入其他模态的 Transformer 网络,以不同模态的信息融合。

5)模态间对比学习架构(Inter-Modality Contrastive Learning):不同模态的信息被分解,通过矩阵结构建立多模态对比学习关联。

目前评估,OpenAI采用该种交叉注意力架构的研发GPT-4的代价最小,可以大幅度使用ChatGPT中已经构建的语言模块。从笔者团队的分析看,GPT-4很有可能正是采用这类架构。

交叉注意力(Cross-attention)机制将视觉信息直接融合到语言模型解码器的层中,而不是使用图像作为语言模型的附加前缀,交叉注意力将相同维度的独立嵌入序列进行非对称的整合。这类架构可有效地平衡文本生成能力和视觉信息。VisualGPT、VC-GPT和Flamingo等模型也使用这种预训练策略,并使用图像字幕和视觉问答任务进行训练。

2.3 GPT-4的关键技术

2.3.1 理论基础——多模态涌现能力

讲到多模态大语言模型的优势,一般首先要提到这类模型的涌现能力和思维链。这两者是大语言模型不断接近人类的关键特征

我们之所以认为GPT-4会是具有里程碑意义的一代,正是因为多模态的GPT-4会从视觉角度和视觉-文字语义融合方面涌现出更多的能力。这些能力的出现不是简单的视觉或文本能力的叠加。2022-2023年,我们可以认为AI是第一次睁开双眼理解这个世界,通过多种模态的感知来形成更高级的智能。

在大型语言模型(LLM)中,涌现能力(Emergent Abilities)是指模型具有从原始训练数据中自动学习并发现新的、更高层次的特征和模式的能力。就中文释义而言,涌现能力也指大语言模型涌现出来的新能力。这有点类似于去超市遇到买二赠一,赠品的质量居然还出乎意料。

与大语言模型相比(LLM)相比,多模态大语言模型(Multi-modal Large Language Model ,MLLM)可实现更好的常识推理性能,跨模态迁移更有利于知识获取,产生更多新的能力,加速了能力的涌现。这些独立模态或跨模态新特征、能力或模式通常不是通过目的明确的编程或训练获得的,而是模型在大量多模态数据中自然而然的学习到的。

缩放定律(参数增加后精度损失连续减少) V.S. 涌现能力(1010-1011参数后新能力的涌现)

(来源:OpenAI)

在语言模型发展的早期,通过在更多数据上训练更大的模型,可获得近似连续的精确度提升。(可称为缩放定律/Scaling Laws)到了 2015 年左右,随着深度学习技术的发展和语料库的增大,模型达到一定的临界规模后,NLP开发者们发现,大语言模型(包括GPT-3、GLaM、LaMDA和Megatron-Turing NLG等)开始表现出一些开发者最开始未能预测的、更复杂的能力和特性,这些新能力和新特性被认为是涌现能力的体现。

当模型尺寸增加到一定大小后,新能力涌现

(来源:Google/Deepmind)

我们在研究GPT-4时,发现GPT-4具备了OpenAI在预训练时和发表的技术报告中并未明确的能力。这些能力都属于涌现出来的能力。而且某些能力或许要在OpenAI开放GPT-4的视觉输入后才能发现。

涌现能力是基于深度学习模型的分层结构和权重学习机制实现的。涌现出来的能力可以是基于文本的,也可以是多模态的。我们可以将GPT-4这类大模型的训练视为解方程,每一层神经元(可视为变量组合)的输出都作为下一层神经元的输入,并且模型的每个权重(Weight)都通过强化学习算法进行学习和更新。这种分层的结构和权重学习机制使得深度学习模型能够自动的学习到从原始数据中提取隐含的特征和模式,从而实现涌现能力。当大语言模型被训练时,通过学习大量的多模态训练数据,并且根据数据中的统计规律和模式自适应的调整其内部参数和结构,从而表现出一些新的能力和特性。这类似于咱们常说的量变引发质变

涌现能力是大语言模型的重要特性,也是现在火爆的大模型各种能力的理论基础。涌现能力使得GPT-4能够在无需人工干预的情况下,从原始的多模态数据中自动学习到复杂的特征和模式,从而实现更准确和更高效的预测和决策。

涌现能力的另一个重要表现是多模态模型的泛化能力。在没有专门训练过的情况,GPT-4也可以泛化到新的、未知的多模态数据样本上。这种泛化能力主要取决于模型的结构和训练过程,以及数据的数量和多样性。如果模型具有足够的复杂性和泛化能力,就可以从原始数据中发现新的、未知的特征和模式。

当然,GPT-4涌现出的新能力可能仍有局限性,例如:模型可能产生错误的回答,对某些问题缺乏理解,容易受到输入干扰等。目前认为GPT-4的幻觉与其涌现能力具有相关性。随着涌现能力的增强,在不引入幻觉控制技术的情况下,也会产生更多的幻觉。

2.3.2 核心优势——多模态思维链

思维链(Chain of Thought)可视为大语言模型涌现出来的核心能力之一。之所以现在各类GPT研究火爆,也与模型训练出的思维链可进入产品应用有密切关系。

思维链形成机制可以解释为模型通过学习大量的语言数据来构建一个关于语言结构和意义的内在表示,通过一系列中间自然语言推理步骤来完成最终输出。思维链是ChatGPT和GPT-4能让大众感觉到语言模型“像人”的关键特性

虽然GPT-4这些模型并非具备真正的意识或思考能力,但用类似于人的推理方式的思维链来提示语言模型,极大的提高了GPT-4在推理任务上的表现,打破了精调(Fine-tune)的平坦曲线。具备了多模态思维链能力的GPT-4模型具有一定逻辑分析能力,已经不是传统意义上的词汇概率逼近模型。

当然思维链的训练可能并不容易。尽管现在有大量团队进入大语言模型训练领域,但若干年内能找到训练诀窍并完成思维链训练的团队可能不多。对创企来说,完成思维链的训练,才算真正拿到了这波大模型AI竞技的入场券

思维链提示的示例(来源:Google)

通过多模态思维链技术,GPT-4将一个多步骤的问题(例如图表推理)分解为可以单独解决的中间步骤。在解决多步骤推理问题时,模型生成的思维链会模仿人类思维过程。这意味着额外的计算资源被分配给需要更多推理步骤的问题,使用更多的时间,把复杂问题分解为简单问题,进一步增强GPT-4的表达和推理能力。

当模型尺度增加到一定规模,思维链能力出现(来源:Google)

一般认为模型的思维推理能力与模型参数大小有正相关趋势,传统看法是突破一个临界规模(大概62B,B代表10亿),模型才能通过思维链提示的训练获得相应的能力。如果在6B以下的单模态模型,那很可能还只是GPT-2级别的初级模型。另外也有研究表明,在语言训练集中加入编程语言(例如Python编程代码)可提升模型逻辑推理能力。具有多模态思维链推理能力的GPT-4模型可用于简单数学问题、符号操作和常识推理等任务。

多模态思维链框架(来源:AWS)

GPT-4的多模态思维链是通过观察大量的多模态数据来学习内在表示,然后利用这个表示来生成连续的语言输出的机制。这个过程是通过模型的训练、内在表示的构建和语言输出的生成三个步骤来实现的。

同时,根据AWS的研究,通过多模态思维链可以将大模型的参数量进一步缩小,甚至可在在1B参数下优于GPT-3.5(175B)16个百分点,并且可通过多模态训练进一步降低模型幻觉的产生概率。当然,这种多模态思维链带来的模型性能提升和缩小是否能够泛化到不同场景还有待进一步确认。

在缺乏视觉参考的情形下,幻觉的发生率大概是64%。有了视觉模态加持之后,RougeL得分已经提升到96.97%,回答准确度有了明显提升,62.5%的幻觉问题获得了解决。

通过加入视觉模态降低语言模型的幻觉(来源:AWS)

2.3.3 编程范式——多模态提示工程

多模态大模型(如GPT-4)的提示工程(Prompt Engineering)是指根据特定的目标和语境设计出一系列问题或任务,以便使用大模型生成有关主题或主题领域的连贯和有意义的文本。提示工程的目标是通过精心设计提示,以从模型中引出所需的响应,来提高生成文本的质量和相关性。提示工程与思维链的产生密不可分,也是目前自然语言编程的理论基础

语言模型的4种研究范式(来源:卡内基梅隆大学)

大概在2017-2019年间,语言模型的研究重心逐渐从传统特定领域的有监督学习模式(基于非神经网络或神经网络)转移到预训练模型上。在那时,基于预训练语言模型的研究范式通常是“预训练+精调”(Pre-train+Fine-tune),即在精调阶段,根据下游任务对预训练模型进行微调,以获得更好效果。

但是由于模型越来越大,以及预训练阶段和下游任务之间的差距可能很大,对各个细分领域Fine-tune的计算资源要求、训练数据需求和时间成本也在快速上涨。大量爆发的下游任务也使得175B这个级别模型预训练和精调变得异常复杂。在这种背景下,随着GPT-3的发布,提示工程成为了预训练模型的新方向。形象的说,提示有点类似于老师在学生回答问题时指点回答方向。

提示方法(来源:卡内基梅隆大学)

GPT-4/GPT-3模型中提示的新范式可归纳为“预训练+提示+预测“(Pre-train+Prompt+Predict)。在这一范式中,各种下游任务被调整为类似预训练任务的形式。通过选取合适的提示,使用者可以控制模型预测输出,从而一个完全预训练模型可以被用来解决多样的下游任务。

这里举一个填充提示的简单例子。(上图)我们从输入x(比如电影评论)开始,然后输出期望值y。其中一个任务是使用提示函数重新模板化此输入,其输出表示为x'。此时语言模型的任务仅仅是预测z值(句子中的一个词)来代替占位符Z。然后对于Z被答案填充的提示,我们将其称为填充提示。通过这一提示方式,在对应细分场景下,语言模型将原来的问题的期望值y(一句话)简化为答案z(一个词)的计算,明显降低了应答的复杂度。这相当于学生在老师的指导下学会造句。

提示工程使得GPT-3模型在训练样本较少时获得了更高精度(来源:OpenAI)

而GPT-4则针对多模态数据集,设计了对应的提示。GPT-4的提示工程涉及几个步骤,包括选择合适的模型架构和参数、设计提示格式和结构、选择合适的任务和训练数据,以及使用选定的提示和数据微调模型。更多GPT-4的提示细节还需等待OpenAI发布。

多模态提示示例(来源:微软)

提示工程同时也提高了语言模型“可操纵性”,即模型根据用户要求更改其行为的能力。例如,用户可以命令GPT-4以不同的风格、语气或内容特征来回答。例如“你是一个唠叨的数据专家”或“你是一个言简意赅的数据专家”来开始提示,让模型解释一个数据科学概念。这里“唠叨”和“言简意赅”操纵了模型回答的语言量。

2.3.4 关键技术——人类反馈强化学习

2.3.4.1 对齐调整

以往的大型语言模型(例如 GPT-3)根据来自互联网或书籍的大量文本数据进行训练,能够生成类似人类自然对话的文本。但是,这些模型未必产生与人类期望或理想值一致的输出。这类模型的目标函数是词汇序列的概率分布,使他们能够预测序列中的下一个词是什么。

但在实际应用中,人类往往希望模型执行一些特定的、有价值的认知工作,而不仅仅是单纯的产生对话序列。从数学含义的方向去理解,计算机计算出的单词序列的统计分布可能是对语言建模的一种有效的选择,但人类的认知往往要结合常识、道德和场景来选择最适合特定情境的文本序列,而不仅仅是简单的选择最高概率。这就需要将AI的表述或内在“价值观”与人类进行对齐(Alignment)。

训练策略可能会导致语言模型在某些更复杂的任务中出现偏差,因为仅经过训练以预测文本序列中的下一个词(或掩码词)的模型,可能不一定会学习一些其含义的更高层次的内在表示。

高精度低对齐 V.S. 低精度高对齐的形象示例

(来源:Marco Ramponi,https://www.assemblyai.com/blog/how-chatgpt-actually-works/

如果仅仅采纳最高概率,模型可能会表现出无助于人类的一些应答,包括:

1)缺乏帮助:无信息价值,或者不遵循用户的指示。

2)幻觉:模型编造了不存在的或错误的事实,或者给出不合理的流程。

3)生成有偏见或有害的输出:在有偏见/有害数据上训练的语言模型可能会在其输出中重现问题或有害信息。

对齐与未对齐的回答对比(来源:Ruibo Liu,et.al, Aligning Generative Language Models with Human Values)

在大语言模型前进的道路上,如何学会和嵌入人类的价值判断,规避幻觉和有害输出仍然是大模型商用化的突出挑战。根据目前研究情况,初步认为对齐(Alignment)调整可能会在一定程度上损害语言模型的综合能力。

2.3.4.2 RLHF

GPT-4/ChatGPT 与GPT-3.5的主要区别在于,新加入了被称为RLHF(Reinforcement Learning from Human Feedback,人类反馈强化学习)的技术。这一训练范式增强了人类对模型输出结果意向(Intent)的调节,并且对结果进行了更具理解性的排序。

OpenAI在其早期的学术报告中公开表示,与人类偏好保持一致,是许多领域人工智能技术研究和部署的核心组成部分。OpenAI希望通过RLHF技术,模型能倾向出高质量回答,确保模型输出对人类有益,进而保证模型的安全性。就笔者团队分析来看,RLHF也是保持多轮对话不偏离主题的关键保障。

GPT-4/ChatGPT最初引入人类标记员的主要目的是加快训练速度和质量。尽管强化学习技术在很多领域有突出表现,但是仍然存在着许多不足,例如训练收敛速度慢,训练成本高等特点。特别是现实世界中,许多任务的探索成本或数据获取成本很高。如何加快训练效率,是如今强化学习任务待解决的重要问题之一。

TAMER架构在强化学习中的应用

这里以TAMER(Training an Agent Manually via Evaluative Reinforcement,评估式强化人工训练代理)框架为例。该框架将人类标记员引入到模型代理(Agents)的学习循环中,可以通过人类向代理提供奖励反馈(即指导Agents进行训练),从而快速达到训练任务目标。

GPT-4的多模态奖励模型 (MMRM)是小号的有监督精调模型 (SFT) ,但在顶部添加了一个新的线性层来预测奖励。奖励模型的输入是原始输入加上 SFT 模型生成的输出。

在具体实现上,人类标记员扮演对话的用户和人工智能助手,提供多模态对话样本,让模型生成一些回复,然后标记者会对回复选项打分排名,将更好的结果反馈回模型中。代理(Agents)同时从两种反馈模式中学习——人类强化和马尔可夫决策过程奖励作为一个整合的系统,通过奖励策略对模型进行微调并持续迭代。

奖励模型的过拟合导致模型性能下降(来源:OpenAI)

因为模型仅仅从狭窄分布的训练数据中学习,所以GPT-4中奖励模型只是人类偏好的部分表征(管中窥豹),过度的训练反而可能导致奖励模型过拟合(以偏见代替整体),并导致模型训练效果的下降。另一方面,模型的人类标注员可能也无法代表用户所在地区人群的总体偏好。

2.3.5 安全技术——基于规则的奖励模型

安全是大模型商用的关键要素,OpenAI也投入了大量资源来提高 GPT-4 的安全性和一致性。包括引入领域专家进行对抗性测试和红队测试,模型辅助的安全流水线以及安全指标的改进。OpenAI引入的领域安全专家达到了50多人,覆盖AI一致性风险、网络安全、生物风险等领域。

与ChatGPT一样,GPT-4也使用了强化学习和人类反馈 (RLHF) 来微调模型的行为,以产生更符合用户意图的响应。但当给定不安全的输入时,模型可能会生成不良内容,例如提供有关犯罪的建议。另外,模型也可能对安全输入变得过于谨慎,拒绝无害的请求。

GPT-4的安全流水线包括两个主要部分:一组额外的安全相关 RLHF 训练提示,以及基于规则的奖励模型。

基于规则的奖励模型(Rule-based Reward Model,RBRM)是一组Zero-shot 迷你GPT-4 分类器,根据预定义的规则为特定动作或事件分配奖励。在这种模型中,奖励是根据事先定义的一组规则确定的,而不是从数据中学习得到的。这些分类器在 RLHF 微调期间为 GPT-4 策略模型提供额外的奖励信号,以正确的输出行为为目标进行训练,例如拒绝生成有害内容或不拒绝无害的请求。

基于规则的奖励模型(来源:日本国立信息学研究所)

很多早期的NLP模型和软件就是基于规则的(包括各种早期的智能音箱/”人工智障”),但这类模型在泛化场景下表现不佳,只能回答相对固定的问题,并不具备现在的大语言模型的涌现能力。

GPT-4中使用RBRM的目的是充分借助其优势,即模型中使用的规则可以简单实用一些,建立成本低于常规奖励模型。例如,在象棋等游戏中,规则可能很简单。在更复杂的情况下,规则可能相对复杂,例如为实现特定目标或达到一定的性能水平授予奖励,但总体来说比构建奖励模型的训练数据集成本更低,而且构建起来比更节约时间。

规则奖励模型通常用于强化学习,其中代理被训练为采取最大化奖励信号的行动。在这种情况下,规则奖励模型基于代理是否遵循特定规则或实现特定目标,为代理分配奖励。

规则奖励模型的优点允许更多地控制学习过程。通过事先指定规则,开发人员可以引导学习过程,使其专注于特定的行为或结果。

基于规则的奖励模型在样本较少情况下表现出较好性能(来源:Meta AI)

基于规则的奖励模型的主要特点如下:

  1. 规则的可定义性:根据预先定义的规则来为模型的输出分配奖励。这些规则通常由领域专家或高质量的人类标注员制定,以确保奖励与任务目标和期望行为保持一致。
  2. 规则的可解释性:奖励模型依赖于明确的规则,这些一般具有较高的可读性和可解释性。以方便开发人员解读和调试模型。
  3. 规则的可调整性:通过修改或添加新的规则,可以相对容易地调整奖励函数,以适应不同的任务和环境或更复杂的规则。

基于规则的奖励模型也存在一些局限,包括:

  1. 缺乏场景泛化能力:因为基于规则的奖励模型严重依赖于预先定义的规则,可能在未知或新的情况下泛化能力较弱,这可能导致模型在面对新的情况时出现幻觉现象或无法做出合适的应答。
  2. 规则设计的复杂性:例如对于复杂任务,设计适当的规则有可能非常耗时。此外,如果规则过于复杂或内部自相矛盾,可能导致模型训练不出有效的策略。
  3. 规则的学习效率有下降可能:由于模型需要在给定的规则集合中探索最佳策略,在规则设计不理想的情况下,基于规则的奖励模型可能导致较低的学习效率或过拟合。

2.3.6 安全技术——多模态幻觉检测

大型语言模型(Large Language Model, LLM)的幻觉(Hallucination)指的是模型生成的输出包含一些与输入不符合的信息,这些信息可能是错误的、无关的或者荒谬的。与人类直觉相反,随着模型变得更加以假乱真,幻觉会变得更加危险。GPT-4等模型的这种幻觉可能会出现在各种类型的任务中,比如文本生成、图文分析和问答系统等。

由于大模型(包括GPT-4)本质上可以视为训练集(人类知识/语言)的有损压缩,因此在模型运行时无法完整复现或者应答原始知识,从而模型的幻觉来自于信息压缩的偏差。多模态幻觉的本质是这种有损压缩偏差的体现,也是通过数学逼近人类语言的必然代价。(类似于压缩后的图像边缘出现不正常的条纹) 模型场景的增加和模型参数数量的巨大也增加了幻觉出现的概率。

大语言模型可视为知识/语言的有损压缩

幻觉包括以下几类:

  1. 含义相关性(Semantic Relatedness)的幻觉:模型生成的输出可能包含与输入语境无关或不相关的单词或短语,这些单词或短语通常是通过模型之前接触过的文本来学习的。
  2. 语义扩张(Semantic Expansion)的幻觉:模型生成的输出可能包含与输入语境相关但是过于具体或者过于抽象的内容,这些内容也可能是通过模型之前接触过的文本来学习的。
  3. 结构错误(Structural Errors)的幻觉:模型生成的输出可能不符合正确的语言表达或句子结构,这些错误可能是由于模型在生成时遗漏了某些信息,或者将不相关的信息结合在一起导致的。

为了降低幻觉出现的概率,改善模型质量,Meta AI提出一种幻觉内容检测机制。通过检测生成内容中的幻觉令牌/单词,对生成内容的真实度进行评估,以减少模型幻觉出现的概率。从GPT-4的幻觉减少比率来看,猜测类似该技术的方法或已应用在GPT-4中。

通过幻觉单词检测器减少幻觉(来源:Meta AI)

幻觉是GPT-4等大型语言模型中一个重要的问题,通过不断的优化模型和改进训练方法,或增加多模态幻觉语义检测器,研究人员可以逐步提高模型的准确性和稳定性,从而更好地满足各种自然语言处理任务的需求。

2.3.7 模型信息——关于模型大小

截至目前OpenAI还没有发布 GPT-4 模型大小和结构的具体信息。GPT-4 的技术报告也没有透露这些技术细节,训练数据或训练方法也没有相关信息释放出来。大模型的商业化竞争正愈演愈烈。

Bing反馈的GPT-4模型大小

GPT-3 是目前最大的知名语言模型之一,包含了 1750 亿(175B)个参数。在 GPT-3 发布之前,最大的语言模型是微软的 Turing NLG 模型,大小为 17 亿(1.7B)个参数。在 GPT-3 发布后不久,OpenAI 团队就曾表示他们计划在未来几年内研发更大的模型。而随着技术和算法的不断发展,GPT-4 模型似乎也应朝着更大的尺寸发展。

另外,GPT-4的上下文窗口尺寸也较GPT-3.5和GPT-3增大了不少。2020 年发布的 GPT-3 模型上下文窗口为 2,049 个令牌。在 GPT-3.5 中,窗口增加到 4,096 个令牌(约 3 页单行英文文本)。GPT-4 有两种尺寸。其中一个 (GPT-4-8K) 的上下文窗口大小为 8,192 个令牌,另一个 (GPT-4-32K) 可以处理多达 32,768 个令牌,大约 50 页文本。即便是线性增加,GPT-4也应比同档位的GPT-3模型大很多。

有传言说GPT-4模型大概是GPT-3的100倍或1000倍。从训练的角度看,这么大的模型膨胀可能会消耗更多的训练资源和训练周期的过度延长。

GPT-4与GPT-3.5的执行速度对比(来源:ARK投资)

根据ARK的分析,GPT-4的执行时间大概是GPT-3.5的3.7倍。由此我们初步估算GPT-4的文本语言部分的大小大约是62B-650B之间。根据目前 GPT 模型性能的发展趋势,以及多模态技术的加持,预计 GPT-4 的模型参数大概为62B-1500B之间。希望在本文编辑成书的时候,能有模型大小的官方信息释放出来。

主要参考文献

Priya Shree et al., “The Journey of Open AI GPT models”.

Alec Radford et al., “Improving Language Understanding by Generative Pre-Training”.

Alec Radford et al., “Language Models are Unsupervised Multitask Learners”.

Tom B. Brown et al., “Language Models are Few-Shot Learners”.

Zhuosheng Zhang et al., “Multimodal Chain-of-Thought Reasoning in Language Models”.

Long Ouyang et. al,”Training language models to follow instructions with human feedback”.

Y. Bai et al., “Training a helpful and harmless assistant with reinforcement learning from human feedback”.

Ruibo Liu et al., “Aligning Generative Language Models with Human Values”.

作者简介

陈巍博士,大模型+AI芯片专家,高级职称,千芯科技董事长。国际计算机学会(ACM)、中国计算机学会(CCF)专业会员。主要研究方向为大模型架构、稀疏压缩与部署加速,存算一体、AI芯片与3D Chiplet处理器,相关技术成果已被广泛应用于知名IDC和互联网企业。曾任领域知名人工智能(自然语言处理)企业首席科学家,中国科学院副主任,曾担任多个国家科技重大专项负责人。中国与美国发明专利软件著作权约70+项(约50+项发明专利已授权)。著有《Sora大模型技术精要—原理、关键技术、模型架构与未来趋势》《GPT-4大模型硬核解读》《ChatGPT大模型技术精要—发展历程、原理、技术架构详解和产业未来》《智能网联汽车:激光与视觉SLAM详解》等。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/天景科技苑/article/detail/811008
推荐阅读
相关标签
  

闽ICP备14008679号