2023-GPT-4 大模型硬核解读

原文地址

GPT-4 大模型硬核解读

之前我们一直说自然语言处理是人工智能王冠上最大的那颗珍珠,但如今用世俗的珍珠或者王冠形容已经不合适了。多模态大模型带给人类世界的震撼,就如人工智能企业 Hugging Face(因提供开源预训练模型库而闻名)的联合创始人 Thomas Wolf 所述:“在过去的几年里,好的多模态模型一直是许多大型技术实验室的圣杯。“其中多模态指的是融合文本、图像、视频或音频等多种模态作为输入或输出。

作为“圣杯”的代表之一,GPT-4 这个标签代表第 4 代生成式预训练变换模型(Generative Pre-trained Transformer 4),是 OpenAI 在 2023 年 3 月 14 日公开的一种多模态模型,是对前几个月发布的 ChatGPT 的多模态升级。GPT-4 模型可对图文多模态输入生成应答文字,以及对视觉元素的分类、分析和隐含语义提取,并表现出优秀的应答能力。业内文章大多从侧面宣传 GPT-4 的优秀,却很少触及其核心技术内核。

OpenAI 的相关信息

本文将通过 OpenAI 和其他 AI 巨头已发表的大语言模型或多模态论文来详细阐述和分析与 GPT-4 相关核心技术要点、技术架构、训练流程、算力、局限与产业未来,告诉大家为何我们的下一代会从“内卷”过渡到“人机互卷”。

GPT-4 核心技术有哪些?

1.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 等)开始表现出一些开发者最开始未能预测的、更复杂的能力和特性,这些新能力和新特性被认为是涌现能力的体现。

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

我们在研究 GPT-4 时,发现 GPT-4 具备了 OpenAI 在预训练时和发表的技术报告中并未明确的能力。这些能力都属于涌现出来的能力。涌现能力是基于深度学习模型的分层结构和权重学习机制实现的。涌现出来的能力可以是基于文本的,也可以是多模态的。我们可以将 GPT-4 这类大模型的训练视为解方程,每一层神经元(可视为变量组合)的输出都作为下一层神经元的输入,并且模型的每个权重(Weight)都通过强化学习算法进行学习和更新。这种分层的结构和权重学习机制使得深度学习模型能够自动的学习到从原始数据中提取隐含的特征和模式,从而实现涌现能力。

当大语言模型被训练时,通过学习大量的多模态训练数据,并且根据数据中的统计规律和模式自适应的调整其内部参数和结构,从而表现出一些新的能力和特性。这类似于咱们常说的量变引发质变。涌现能力是大语言模型的重要特性,也是现在火爆的大模型各种能力的理论基础。涌现能力使得 GPT-4 能够在无需人工干预的情况下,从原始的多模态数据中自动学习到复杂的特征和模式,从而实现更准确和更高效的预测和决策。

涌现能力的另一个重要表现是模型的泛化能力。在没有专门训练过的情况,GPT-4 也可以泛化到新的、未知的多模态数据样本上。这种泛化能力取决于模型的结构和训练过程,以及数据的数量和多样性。如果模型具有足够的复杂性和泛化能力,就可以从原始数据中发现新的、未知的特征和模式。当然,GPT-4 涌现出的新能力可能仍有局限性,例如:模型可能产生错误的回答,对某些问题缺乏理解,容易受到输入干扰等。目前认为 GPT-4 的幻觉与其涌现能力具有相关性。

1.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 模型可用于简单数学问题、符号操作和常识推理等任务。

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

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

1.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 以不同的风格、语气或内容特征来回答。例如“你是一个唠叨的数据专家”或“你是一个言简意赅的数据专家”来开始提示,让模型解释一个数据科学概念。这里“唠叨”和“言简意赅”操纵了模型回答的语言量。

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

GPT-4/ChatGPT 与 GPT-3.5 的主要区别在于,新加入了被称为 RLHF(ReinforcementLearning from Human Feedback,人类反馈强化学习)的技术。这一训练范式增强了人类对模型输出结果意向(Intent)的调节,并且对结果进行了更具理解性的排序。OpenAI 在其早期的学术报告中公开表示,与人类偏好保持一致,是许多领域人工智能研究和部署的核心组成部分。OpenAI 希望通过 RLHF 技术,模型能倾向出高质量回答,确保模型输出对人类有益,进而保证模型的安全性。就笔者团队分析来看,RLHF 也是保持多轮对话不偏离主题的关键保障。

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

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

这里以 TAMER(Training an Agent Manually via Evaluative Reinforcement,评估式强化人工训练代理)框架为例。该框架将人类标记员引入到模型代理(Agents)的学习循环中,可以通过人类向代理提供奖励反馈(即指导 Agents 进行训练),从而快速达到训练任务目标。GPT-4 的多模态奖励模型(RM)是小号的有监督精调模型(SFT),但在顶部添加了一个新的线性层来预测奖励。奖励模型的输入是原始输入加上 SFT 模型生成的输出。

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

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

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

1.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、规则的学习效率有下降可能:由于模型需要在给定的规则集合中探索最佳策略,在规则设计不理想的情况下,基于规则的奖励模型可能导致较低的学习效率或过拟合。

1.6 优化技术——近端策略优化(PPO)算法

GPT-4/ChatGPT 中的近端策略优化(Proximal Policy Optimization,PPO)算法是一种高效的强化学习优化策略算法,由 OpenAI 的 John Schulman 等人于 2017 年提出。在 GPT-4/ChatGPT 里的使用应该算是新瓶装旧酒。

PPO 的前辈 TRPO(Trust Region Policy Optimization)相对复杂,并且与包含噪声(例如 Dropout)或参数共享(在策略和价值函数之间,或辅助任务)的架构不兼容。PPO 算法试图解决上述问题,以及计算复杂性和难以调整的超参数。PPO 通过简化优化问题并限制策略更新的幅度,实现了更高效、更稳定的学习过程,具有实现简单、能同时处理离散\连续动作空间问题、可大规模训练等优势。

PPO 算法与同类其他算法的比较(来源:OpenAI)

PPO 算法衍生于早期的策略梯度(Policy Gradient)算法,但通过一些技巧改进了其性能和稳定性,能够处理连续动作空间的问题。PPO 在策略更新时限制新策略与旧策略之间的差异,从而确保策略改进的稳定性。这通过在目标函数中引入一个“代理”目标函数来实现,该代理目标函数限制了新策略和旧策略之间的 KL 散度。

PPO 算法的核心思想是在每次迭代中,通过一种称为近端策略优化(Proximal Policy Optimization)的方法来更新策略参数,以最大化预期收益。具体来说,PPO 算法采用两个神经网络来表示模型的策略:一个执行动作(Actor),另一个处理奖励(Critic)。在每次迭代中,PPO 算法会从环境中采样一批经验数据,并使用这些数据来更新策略参数和价值参数。更新的策略将被 ε-clip 到一个小区域,以防止可能具有不可恢复危害的巨大更新。换句话说,优化的步伐不能太大也不能过小。

PPO 算法的主要特点如下:

1)裁剪的目标函数:PPO 通过裁剪策略比率(新策略概率与旧策略概率之比)来限制更新幅度。这种裁剪保证了新策略在旧策略的附近,使得更新更加稳定。 2)重要度采样:PPO 利用重要度采样来估计策略梯度,从而可以重复使用之前的经验来更新策略。这使得 PPO 在数据效率上更具优势。 3)多次更新:PPO 算法在每次收集一批数据后,对策略进行多次更新。这可以提高算法的收敛速度和稳定性。 4)简化的优化问题:相比于其他方法,如 TRPO,PPO 算法将优化问题简化为一阶优化问题,这大大减少了计算复杂性。

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

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

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

目前 OpenAI 还没有发布 GPT-4 模型大小和结构的具体信息。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 模型上下文窗口为 2049 个令牌。在 GPT-3.5 中,窗口增加到 4096 个令牌(约 3 页单行英文文本)。GPT-4 有两种尺寸。其中一个(GPT-4-8K)的上下文窗口大小为 8192 个令牌,另一个(GPT-4-32K)可以处理多达 32768 个令牌,大约 50 页文本。

有传言说 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 之间。

GPT-4 的原理是什么?

GPT-4 这一代,是严格意义上的多模态模型,可以支持图像和文字两类信息的同时输入。之前的 ChatGPT 多模态感知是实现通用人工智能的必要条件,无论是知识 / 能力获取还是与现实物理世界的交互。之前的 ChatGPT 就像 AI 蒙上双眼在那里盲答,而多模态就是 AI 一边看一边思考。多模态技术将语言模型的应用拓宽了到更多高价值领域,例如多模态人机交互、文档处理和机器人交互技术。

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

下面先介绍 GPT 家族,然后引申到 GPT-4 的多模态架构和独特性。

2.1 从 GPT-1 到 ChatGPT

说到 GPT-4,就不得不提到 GPT 家族。GPT 之前有几个的前辈,包括 GPT-1、GPT-2 和 GPT-3 和 ChatGPT。GPT 家族与 BERT 模型都是知名的 NLP 模型族,都基于 Transformer 技术。GPT-1 只有 12 层,而到了 GPT-3,则增加到 96 层。GPT-4 增加了额外的视觉语言模块,理论上具有更大的模型尺寸和输入窗口。

视觉与语言 Transformer 技术的演进

GPT 和 BERT 之前的时代

最早的 NLP 技术是基于规则的,即基于特定的规则使用程序进行固定模式的对话,所有的应答都是固定模式的。在深度学习诞生后,NLP 技术逐渐进入基于模型的时代。文本生成是通过递归神经网络(RNN)或各种长短时记忆神经网络(LSTM)实现的。这些模型能够较好的进行模式识别,在输出单个单词或短语方面表现良好,但无法生成高精度的多轮对话,更无法实现逻辑推理能力。

GPT-1 模型的 Transformer 结构

2018 年 6 月,OpenAI 发表了 GPT-1,GPT 家族首次登上历史舞台。GPT-1 模型训练使用了 BooksCorpus 数据集。训练主要包含两个阶段:第一个阶段,先利用大量无标注的语料预训练一个语言模型,接着,在第二个阶段对预训练好的语言模型进行精调,将其迁移到各种有监督的 NLP 任务。也就是前面提到过的“预训练 + 精调”模式。GPT-1 的核心是 Transformer。Transformer 在数学上是大矩阵的计算,通过计算不同语义之间的关联度(概率)来生成具有最高概率的语义反馈。

GPT-1 着重解决两个问题:

1)通过无监督训练解决需要大量高质量标注数据的问题。 2)通过大量语料训练解决训练任务的泛化问题。

BERT 与 GPT 的技术基本架构对比(图中 En 为输入的每个字,Tn 为输出回答的每个字)

GPT-2

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

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.5/ChatGPT

2022 年 3 月 15 日,OpenAI 发布了名为“text-davinci-003”的新版 GPT-3,该模型被描述为比以前版本的 GPT 更强大。目前有若干个属于 GPT-3.5 系列的模型分支,其中 code-davinci 针对代码完成任务进行了优化。ChatGPT 是基于 GPT-3.5(Generative Pre-trained Transformer 3.5)架构开发的对话 AI 模型,是 InstructGPT 的兄弟模型。ChatGPT 很可能是 OpenAI 在 GPT-4 正式推出之前的演练,或用于收集大量对话数据。

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

1)可以主动承认自身错误。若用户指出其错误,模型会听取意见并优化答案。 2)ChatGPT 可以质疑不正确的问题。例如被询问“哥伦布 2015 年来到美国的情景”的问题时,机器人会说明哥伦布不属于这一时代并调整输出结果。 3)ChatGPT 可以承认自身的无知,承认对专业技术的不了解。 4)支持连续多轮对话。

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

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

2.2 GPT-4 的多模态架构

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

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

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

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

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

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

1)图像描述生成或文本生成图像。例如最近知名的 CLIP、Stable Diffusion。 2)图文问答。例如带有图示的物理题求解或图表分析。 3)文本到图像或图像到文本的检索。 4)视频流描述。

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

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

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 很有可能正是采用这类架构。

GPT-4 训练技术分析

3.1 GPT-4 训练数据集

GPT-4 的训练数据集是基于 GPT-3 和 GPT-3.5 的训练数据集构建的,并在两者基础上增加了多模态数据集。仅当时 GPT-3.5 的训练数据收集就是由一项艰巨且重要的任务:数据集贡献来自一个由 30-50 名 OpenAI 员工组成的团队,并另外从第三方网站雇佣了固定的大约 50-100 名固定的标注员。到了 GPT-4 又增加了大量多模态数据。

GPT-4 数据集构成(预测)

OpenAI 在预训练阶段过滤 GPT-4 的数据集组合,以专门减少不适当的文本内容的数量。并通过结合内部训练的分类器和基于词典的方法来识别含有不当内容的数据。

其中来自 GPT-3 的预训练数据集包括约 570GB(该大小为去重过滤后的,去重过滤前大概 45TB)的 CommonCrawl 数据,大概是 410B 字节对编码的令牌,以及 19B 的 WebText2 数据,合计 67B 的书籍数据和 3B Wiki 数据。这些数据被整合为约 300B 大小的 GPT-3 预训练数据集。其中 Wiki 数据质量最高,在训练中平均被重复使用了 3.4 次。

GPT-3.5 标注员学历和国籍构成

GPT-3.5 的数据集包括 SFT 数据集、RM 数据集和 PPO 训练数据集。在最关键的 SFT 训练集中,标注员撰写比例为 89.3%,100% 由标注员标记。RM 模型较小但是训练集数量更多,达到 33K。

可以看出,无论是 GPT-3 还是 GPT-3.5 的训练集中,数据质量的重要性都远超过数据的数量。(互联网大厂或许只剩下资金、应用和渠道优势?)其中训练 GPT-3.5 175B SFT 模型仅需要算力资源 4.9 petaflops/s-days,训练 GPT-3.5175B PPO-ptx 模型需要 60 petaflops/s-days,而预训练 GPT-3 却需要 3640 petaflops/s-days 的算力资源,是 175B PPO-ptx 的 60.7 倍。极少量的高质量标注数据却显著提升了 GPT-3.5 的应答能力。这就好比好的教材胜过大量普通书籍。

GPT-4 的多模态训练数据集由图片和文本共同构成(一般是单幅图片 + 多行文本)。根据 GPT-4 的技术报告,可以分析 GPT-4 的多模态数据集包括图表推理、物理考试、图像理解、论文总结、漫画图文等不同类型。目前 GPT-4 的多模态应用还处于实验中,并未对公众开放。

3.2 GPT-4 训练流程分析

我们根据 GPT-4 的技术报告,初步分析其训练流程如下:

第一阶段:构建交叉注意力架构预训练模型,收集数据并进行有监督策略精调

GPT-4 模型是基于 GPT-3.5 构建的,增加了视觉语言模型组件(在图形 Transformer 阶段完成的视觉预训练模型)。为了预训练模型在多模态领域进行初步调优,首先会在文本数据集和多模态数据集中抽取问题,由人类标注员,给出高质量答案,然后用这些人工标注好的数据来精调 GPT-4 初始模型(获得 SFT 模型,Supervised Fine-Tuning)。

此时的 SFT 模型在遵循指令 / 对话方面已经优于 GPT-3.5,但对多模态的解答不一定符合人类偏好。

GPT-4 训练过程(基于 GPT-4 技术报告绘制)

第二阶段:训练奖励模型(RRM)和基于规则的奖励模型(RBRM)

这一阶段包括基于规则的奖励模型(Rule-Based Reward Model,RBRM)和奖励模型(Reward Mode,RM)

首先基于安全规则设计基于规则的奖励模型并完成验证。这一模型与传统 NLP 领域的规则模型设计方法一致。

然后在数据集中抽取问题,使用第一阶段生成的模型,对于每个问题,生成多个不同的回答。人类标注者对这些结果综合考虑给出排名顺序。(有点像互联网企业的审图师)

接下来,使用这个排序结果数据来训练 GPT-4 的奖励模型。对多个排序结果,两两组合,形成多个训练数据对。RM 模型接受一个输入,给出评价回答质量的分数。这样,对于一对训练数据,调节参数使得高质量回答的打分比低质量的打分要高。这一过程类似于教练或老师辅导。

PPO 算法示意(来源:澳大利亚 Monash 大学)

第三阶段:采用 PPO(Proximal Policy Optimization,近端策略优化)强化学习来优化策略

PPO 的核心思路在于将 Policy Gradient 中 On-policy 的训练过程转化为 Off-policy,即将在线学习转化为离线学习,这个转化过程被称之为 Importance Sampling。这一阶段利用第二阶段训练好的奖励模型和基于规则的奖励模型,靠奖励打分来更新预训练模型参数。

在 GPT-4 数据集中抽取问题,使用 PPO 模型生成回答,并用上一阶段训练好的 RM+RBRM 模型给出质量分数。把回报分数依次传递,由此产生策略梯度,通过强化学习的方式以更新 PPO 模型参数。

如果不断重复第二和第三阶段,通过迭代,会训练出更高质量的 GPT-4 模型。整个训练的核心在于高质量数据集 /Prompt 的构建、思维链的训练技术、大算力工程能力、早期训练空间的预测和优选。数据量反而不那么重要,并不是富裕人家的孩子看的电视剧越多,就越能够考上好大学。

3.3 模型训练参数空间的早期筛选

这一部分讲的是降低训练量的技术,或者说是节约大量购买服务器的经费的技术。

据论文 Scaling Laws for Neural Language Models (2020),可以通过三个要素计算通过交叉熵损失预估 GPT-4/GPT-3.5 预训练模型性能。这三个要素是模型参数数量、训练期间计算量以及训练数据大小。这三个因素与损失之间存在幂律关系。这意味须将计算量、数据和参数量增加 10 倍才能将损失减少一个单位,增加 100 倍才能将损失减少两个单位,依此类推。

为了提升 GPT 模型性能(主要是精度),比较经济的做法是在相对少量的数据上训练较大的模型,并在更多的训练步骤或数据上投入更多的计算,以最大限度地减少精度损失。因此“大型预训练模型 + 少量高质量标注”成为当前语言模型领域的主流。

缩放定律图示(来源:OpenAI)

对于计算量每增加 10 倍,该论文大约建议将参数数量增加 5 倍,将训练令牌的数量增加 2 倍,将串行训练步骤的数量增加 1.2 倍。这也可以说明,GPT-3 等模型越来越大,是从综合训练成本考虑的。

缩放定律不仅影响到模型的设计要素,也影响到基于算力的训练策略。OpenAI 开发了针对性的算力基础设施和优化方法,在多个尺度预测 GPT-4 模型的训练效果,从而能在只使用大概千分之一的算力消耗时提前探索 GPT-4 训练的解空间,而无需完全遍历所有可能的训练参数设置。换句话说,投资人也可以提前预知自己投的创企大概能训练出多高精度的模型。

缩放定律可以量化为公式 L(C) = aCb+ c,从而只要在每个参数模型的早期使用小一些的算力就可以拟合该曲线,提前估算在该训练参数集下能达到的模型精度。这一方法大大加速了 GPT-4 模型训练调优的进程。

较小算力模型准确的预测了 GPT-4 的训练精度(来源:OpenAI)

4 GPT-4 的算力基座

由 GPT-4/ChatGPT 及其下游需求,带动了大量的模型设计与产业应用需求,带动了从服务器集群到大算力芯片的海量计算需求。这一需求业导致了 A100 GPU 的价格在近几个月内暴涨。那么,在多模态大模型逐渐火热之后,GPU 会是唯一的算力选择吗?GPU 会不会导致模型企业同质化竞争的加剧?

根据 IDC 预计,到 2026 年 AI 推理的负载比例将进一步提升至 62.2%,特别是大模型将成为 AI 开发的新范式。对于 GPT-4 等大模型设计或应用企业,算力的需求体现在如下三个细分阶段。

1)GPT-4 预训练与应用微调阶段。这一阶段从无到有建立预训练模型,通过大量通用数据训练和验证预训练模型。(形成模型的“通识”)然后针对具体的商用或应用场景的特定数据,对预训练进行针对性的微调,加强对场景的应答准确度。在这一阶段,一般需要超算级别或数十台服务器来进行一个大模型的训练计算,计算以大量矩阵计算和求解为主。这一阶段的算力可通过上述的缩放定律来进行预测和缩减不必要的训练参数集合所需的算力(非必要参数集分支大概可缩减到千分之一)。

2)GPT-4 推理与部署阶段。根据场景微调后的大模型,就可部署到实际生产环境中应用。相对训练来说,部署要求的算力较低,但是基数很大。对于大量在线交互来说,部署阶段的服务器 / 芯片成本要远远超过训练阶段。在这一阶段,每台 AI 服务器可以部署一个 GPT-4 模型,集群上会有大量服务器进行并行的网络服务,计算以大量矩阵计算和存储调度为主。同时,在这些场景下,特别是端侧应用场景,也会有硬件性价比和反应延迟的特定要求,目前的 GPU 就不一定适合。

3)GPT-4 模型迭代的微调阶段。每使用一段时间,就会根据使用者或者客户反馈,对模型进行调整,以提高客户满意度,特别是提升模型的安全度以确保合规。这个过程就是模型迭代的过程,一般相当于小规模的训练,训练所用的数据规模不大,计算以大量矩阵计算和求解为主。

4.1 GPT-4 计算服务器架构

计算服务器架构对比

针对 GPT-4 这类大模型的计算架构,按照计算芯片的组合方式,一般可以分为:“CPU+GPGPU”,“CPU+DSA”,和"CPU+DSA+GPGPU"三种类型。这三种类型目前都已在云计算场景广泛应用和部署。

DSA 即领域专用加速器,是用于一些特定场景或算法族计算的芯片级加速。最早的 GPU 也属于 DSA,也就是图形加速的 DSA。随着 GPU 逐渐演化,将非常小的 CPU 核心加入 GPU 形成 GPGPU 架构后,才具备了通用化的计算能力。

1)CPU+GPGPU 是较早且部署众多的一种。由于这种架构的计算灵活度高,也可用于模型训练和非 AI 类计算。适合任务种类繁多且差异化大的云计算场景。

2)CPU+DSA 是目前 Google 云计算(GCP)应用较多的方式。例如 Google 去年发布的 Pathways 计算系统(包含 6144 块 TPU)就是这类架构的典型代表。这类架构计算灵活性稍低一点,但是计算性能和成本都非常明显优于 CPU+GPGPU 模式,非常用于 GPT-4 或其他算法部署场景。例如早些年的 AlphaGo 的性能突破很大程度上来自于 Google 自研的 TPU。当时如果用 GPU,估计超过人类棋手的集群成本恐是当年的 Google 也难以承受的。

Google Pathways “CPU+DSA”训练集群基础架构(来源:Google)

3)CPU+DSA+GPGPU 介于前两者之间,充分提高了灵活性又明显降低了计算成本。这类架构需要算法设计 / 部署人员有丰富的异构架构部署经验。

计算卡间的高速互连对 GPT-4 计算的影响排在单卡算力之后。对于多数 GPU 来说,由于一般需要多卡才能放下一个模型,因此整体的计算效率受限于互连带宽和单卡有效算力密度。(算力密度大可以减少互连交互的总数据量)

AI 服务器内部的卡间互连

以英伟达为例,HGX 平台上有六个 NVSwitch。每个 NVSwitch 连接 2 块 GPU,总共有 12 个最短数据通道直连,形成接近立方体式的数据交互网。这里之所以说接近,是因为 0123 和 4567 平面之间的连接还不是两两互连,这一结构会限制 GPU 所能运行的模型的规模效率。

计算服务器之间的高速互连通过 Infiniband 实现。每个 NVIDIA A100/H100 可以访问服务器 Infiniband 结构,通过 Infiniband 提升服务器间的数据交互带宽,而大带宽的 Infiniband 一般通过光纤连接(使用 SerDes 技术)来减少损耗。Infiniband 网络基于“以应用程序为中心”的观点,目标是让应用程序访问其他应用程序以及存储尽可能的简单、高效和直接,避免网络分层带来的延迟。这种结构大大提高了 GPT-4 训练的速度。

4.2 GPT-4 计算相关芯片

对于 GPT-4 这类大模型来说,其部署需要大量的大算力计算、存储和数据交互芯片,包括:

  • AI 计算:算力>100TFLOPS 的 GPGPU 或大算力 AI 芯片
  • CPU:核数>8 的 CPU
  • 存储:内存 /GDDR/HBM/NVMe
  • 数据交互:Infiniband 卡

在 Transformer 技术兴起之后,传统 CUDA 核心的算力支持能力已表现出劣势,英伟达便在其 GPU 中添加 Tensor Core 这类 DSA 单元,以适应算力需求的变化。考虑到 GPU 这类通用架构芯片在计算效率和算力上已经暂时落后于 GPT-4/ChatGPT 这类大模型的发展速度,从芯片 / 半导体的历史发展规律看,预计近几年可能会有新的专用架构大发展来填补这一需求。这类新架构也许是针对大模型的 DSA,或者是更接近于 DSA 的 GPGPU。

CPU、GPU 和存算一体芯片的架构对比

从目前 GPT-4 的部署需求来看,GPT-4 大模型具有数据量大、数据带宽要求高、算力要求高的计算特点,且算法相对单一。如果要提高计算效率和性价比,就应该像超算那样选择更高计算密度的算力芯片。从这个角度上看,具备存算一体结构的 DSA 可以很好的满足这些要求,并且具备比 GPGPU 更高的计算性能,未来很有可能与 CPU 或 GPU 组合,形成 GPT-4 这类算法的主要部署芯片。

在 GPT-4 这类大模型训练中,一般需要使用 Infiniband 进行大算力芯片间的协同工作,整合海量芯片的算力。Infiniband 摒弃了传统网络和应用程序之间消息传递的复杂结构,使应用程序之间直接进行通信,绕过了操作系统,大大提高了效率。

GPT-4 的局限与未来改进方向

5.1 GPT-4 局限

尽管 GPT-4 表现出出色的上下文对话能力甚至编程能力,以及能看懂图梗和分析数据图。我们也要看到,GPT-4 技术仍然有一些局限性,还在不断的进步。

1)GPT-4 在其未经大量语料训练的某些领域缺乏“人类常识”和引申能力”。GPT-4 在很多领域可以“创造答案”,但当用户寻求正确答案时,GPT-4 也有可能给出有误导的回答。大预言模型的安全性问题仍是横亘在其大规模商用上的拉路虎。如果遇到关系重大利益的抉择时,我们是该相信 GPT-4 的结果还是不相信呢?

大语言模型的 SWOT 分析(来源:互联网)

2)GPT-4 需要非常大量的算力(芯片)来支持其训练和部署。抛开需要大量语料数据训练模型不说,在目前,GPT-4 在应用时仍然需要大算力的服务器支持,而这些服务器的成本是普通企业在大流量服务时无法承受。对于私有化部署来说,还需等待更轻量型的模型或更高性价比的算力平台。

3)GPT-4 还没法在线的把新知识纳入其中,而出现一些新知识就去重新预训练 GPT 模型也是不现实的,无论是训练时间或训练成本,都是普通训练者难以接受的。

如果对于新知识采取在线训练的模式,看上去可行且语料成本相对较低,但是很容易由于新数据的引入而导致对原有知识的灾难性遗忘的问题。另一方面,缺乏检查的新的不良知识也可能导致模型本身的安全性问题。特别是 GPT-4 可能会继承从新数据中学到的偏见和不平等性。如果数据集中存在种族、性别、地理位置等方面的偏见,GPT-4 也可能会在生成文本时出现类似的偏见。

4)GPT-4 仍然是黑盒模型。目前还未能对 GPT-4 的内在算法逻辑进行分解,因此并不能保证 GPT-4 不会产生攻击甚至伤害用户的表述。OpenAI 提供的文档报告称,GPT-4-launch 的错误行为率为 0.02%,远低于 GPT-3.5 的 0.07% 和 GPT-3 的 0.11%1。这意味着 GPT-4-launch 生成的文本在 10000 次完成中只有 2 次违反 OpenAI 的内容政策或用户偏好。但即便这 2 次违反依然可能导致 OpenAI 受到严重的法律诉讼。

5)GPT-4 仍存在社会和道德风险。由于 GPT-4 这类大型语言模型仍然存在根本性的黑盒特征。GPT-4 仍然可以生成有偏见的、虚假的和仇恨的文本;仍然可以被黑客攻击(例如 Prompt 越狱)以绕过它的安全防护墙。尽管 OpenAI 提出了多项措施来减轻其模型的风险和挑战,但 GPT-4 仍然可能被滥用于创建假新闻、宣传、垃圾邮件或有害内容,还可能产生可能误导或伤害用户的事实错误或偏见。OpenAI 的研究表明,GPT-4 可以在许多领域与人类宣传员相媲美。

6)GPT-4 仍存在幻觉和推理错误。尽管 OpenAI 声称 GPT-4 相对于以前的模型可以显着减少幻觉(在其内部评估中得分比 GPT-3.5 高 40%)。GPT-4 仍然可能会产生有害的建议(尽管 GPT-4 更有可能拒绝回答)、错误代码或不准确的信息,因此,GPT-4 暂不应该用于错误成本高的区域(比如医学手术?)。

7)GPT-4 存在泄露隐私可能。GPT-4 可从各种内部许可和公开可用的数据源中学习,其中可能包括大量公开有效的个人信息。包括互联网上学习到有重要影响力人物(例如名人和公众人物)的大量隐私信息。GPT-4 还可以聚合不同信息,将大量隐含信息关联挖掘出来形成有效的隐私信息。

5.2 未来改进方向

5.2.1 减少人类反馈的 RLAIF

2020 年底,OpenAI 前研究副总裁 Dario Amodei 带着 10 名员工创办了一个人工智能公司 Anthropic。Anthropic 的创始团队成员,大多为 OpenAI 的早期及核心员工,并在 2022 年 12 月,发表论文《Constitutional AI: Harmlessness from AI Feedback》介绍人工智能模型 Claude。

CAI 模型训练过程(来源:Anthropic)

Claude 和 GPT-4 都依赖于强化学习(RL)来训练偏好(Preference)模型。CAI(Constitutional AI)也是建立在 RLHF 的基础之上,不同之处在于,Claude 的 CAI 的排序过程使用模型(而非人类)对所有生成的输出结果提供一个初始排序结果。这种模式的好处是节约了大量人工标注的时间和资源,可以加速大模型的训练进程,并降低成本。

CAI 用人工智能反馈来代替人类对表达无害性的偏好,即 RLAIF,人工智能根据一套法规(Constitution)原则来评价回复内容。

CAI 与 RLHF 技术对比(来源:Anthropic)

5.2.2 数理能力的增强

GPT-4 虽然已经具备解物理题的能力,但毕竟不是专门的解题算法,一些复杂的数理问题对话中仍会出现一本正经胡说八道的情况。

计算机学家 Stephen Wolfram 为这一问题提出了解决方案。Stephen Wolfram 创造了的 Wolfram 语言和计算知识搜索引擎 Wolfram|Alpha,其后台通过 Mathematica 实现。

目前 Woflframe 已经可以通过 ChatGPT 调用(通过插件),未来也会实现 GPT-4 的集成。在这一结合体系中,GPT-4 可以像人类使用 Wolfram|Alpha 一样,与 Wolfram|Alpha“对话”,Wolfram|Alpha 则会用其符号翻译能力将从 GPT-4 获得的自然语言表达“翻译”为对应的符号化计算语言。在过去,学术界在 GPT-4 使用的这类“统计方法”和 Wolfram|Alpha 的“符号方法”上一直存在路线分歧。但如今 GPT-4 和 Wolfram|Alpha 的互补,给 NLP 领域提供了更上一层楼的可能。

ChatGPT 调用 Wolfram(来源:Wolfram)

GPT-4 不必生成这样的计算代码,只需生成常规自然语言,然后使用 Wolfram|Alpha 翻译成精确的 Wolfram Language,再由底层的 Mathematica 进行计算。

5.2.3 GPT-4 的本地化与小型化

虽然 GPT-4 很强大,但其模型大小和使用成本也让很多人望而却步。有三类模型压缩(model compression)技术可以降低模型的大小和成本。

  • 第一种方法是量化(quantization),即降低单个权重的数值表示的精度。比如 Transformer 从 FP32 降到 INT8 对其精度影响不大,但是会显著提升计算效率。笔者团队已研发出 INT4 量级的 Transformer 高精度量化算法,无需再次训练或更改模型,即可部署到 GPT-4 算力平台上,大大提升计算效率并降低成本。

  • 第二种模型压缩方法是剪枝(pruning),即删除 GPT-4 的网络元素,包括从单个权重(非结构化剪枝)到更高粒度的组件如权重矩阵的通道。这种方法在视觉和较小规模的语言模型中有效,也是很多框架(Framework)上自带的功能。

  • 第三种模型压缩方法是稀疏化。例如奥地利科学技术研究所(ISTA)提出的 SparseGPT 可以将 GPT 系列模型单次剪枝到 50% 的稀疏性,而无需任何重新训练。当然这种稀疏结构目前还仅仅是基于 GPU 架构实现的,在其他硬件平台上并不兼容,而且 GPT-4 的稀疏化是否在综合成本上优于压缩还有待观察。

SparseGPT 压缩流程(来源:ISTA)