《大语言模型》赵鑫

前言

大模型技术的发展阶段:统计语言模型,神经网络语言模型,预训练语言模型等
谷歌2017 年推出基于注意力机制的Transformer 模型。
OpenAI基于此,开始构建GPT系列模型,
GPT-1能够通过“通用文本训练-特定任务微调”的范式去解决下游任务。
GPT-2 和GPT-3 模型通过扩大预训练数据和模型参数规模,显著提升了模型性能,确立了基于自然语言形式的通用任务解决路径。
GPT-3.5通过代码训练、人类对齐、工具使用等技术对于模型性能不断升级。
GPT-4 将模型能力提升至全新高度,并将其扩展至拥有多模态功能的GPT-4V 模型。

重要的两点:
第一点是可拓展的训练架构与学习范式:Transformer 架构能够拓展到百亿、千亿甚至万亿参数规模,并且将预训练任务统一为预测下一个词这一通用学习范式;
第二点是对于数据质量与数据规模的重视:不同于BERT 时代的预训练语言模型,高质量数据、超大规模数据成为大语言模型的关键基础。

自GPT-3 开始,就很少在公开的材料中提及相关技术细节,主要是介绍评测相关的内容。

第一部分 背景与基础知识

第一章引言

1.1 语言模型的发展历程

语言模型旨在对于人类语言的内在规律进行建模,从而准确预测词序列中未来(或缺失)词或词元(Token)的概率。
语言模型的四个主要发展阶段:
(1)统计语言模型(Statistical Language Model, SLM),基于统计学习方法研发
(2)神经语言模型(Neural Language Model, NLM),使用神经网络来建模文本序列的生成
(3)预训练语言模型(Pre-trained Language Model, PLM),
(4)大语言模型(Large Language Model, LLM),大型预训练语言模型
通过规模扩展(如增加模型参数规模或数据规模)通常会带来下游任务的模型性能提升,这种现象通常被称为“扩展法则”(Scaling Law)
GPT-3 可以通过“上下文学习”(In-Context Learning, ICL)的方式来利用少样本数据解决下游任务,而GPT-2 则不具备这一能力。
这种大模型具有但小模型不具有的能力通常被称为“涌现能力”(Emergent Abilities)。

早期的语言模型主要面向自然语言的建模和生成任务,而最新的语言模型(如GPT-4)则侧重于复杂任务的求解。
从语言建模到任务求解,这是人工智能科学思维的一次重要跃升,是理解语言模型前沿进展的关键所在。

1.2 大语言模型的能力特点

具有较为丰富的世界知识。
具有较强的通用任务解决能力。
具有较好的复杂任务推理能力。
具有较强的人类指令遵循能力。
具有较好的人类对齐能力:安全性,正确行为的加强以及错误行为的规避,阻止典型的模型功能滥用行为。
具有可拓展的工具使用能力:掌握外部工具的使用,GPT-4 等能够支持多种工具的使用,提升了模型的任务解决能力。
其他重要能力:如长程对话的语义一致性、对于新任务的快速适配、对于人类行为的准确模拟等。

1.3 大语言模型关键技术概览

(1)规模扩展
(2)数据工程:数据采集、清洗、配比
(3)高效预训练
(4)能力激发
(5)人类对齐

“3 H 对齐标准”,即Helpfulness(有用性)、Honesty(诚实性)和Harmlessness(无害性)。
(6)工具使用

主要是通过大规模文本数据的语义学习所建立的,因此在非自然语言形式的任务(如数值计算)中能力较为受限。
此外,语言模型的能力也受限于预训练数据所提供的信息,无法有效推断出超过数据时间范围以及覆盖内容的语义信息。
让大语言模型学会使用各种工具的调用方式,进而利用合适的工具去实现特定的功能需求。
例如,大语言模型可以利用计算器进行精确的数值计算,利用搜索引擎检索最新的时效信息。
为了能够有效地使用外部工具,GPT 系列模型通过插件机制来形成系统性的工具调用方式,这些插件可以类比为大语言模型的“眼睛和耳朵”,能够有效扩展大语言模型的能力范围。

1.4 大语言模型对科技发展的影响

1、自然语言处理
2、信息检索

微软也推出了基于大语言模型增强的搜索引擎New Bing,将大语言模型与传统搜索引擎进行融合。
3、计算机视觉

GPT-4 已经能够支持图文多模态信息的输入。OpenAI 最新推出的Sora 模型就是基于图像块序列建模的思路进行构建的。
4、人工智能赋能的科学研究

第二章基础介绍

2.1 大语言模型的构建过程

大语言模型则是一种基于Transformer 结构的神经网络模型。
可以将大语言模型看作一种拥有大规模参数的函数,它的构建过程就是使用训练数据对于模型参数的拟合过程。
训练过程可以分为大规模预训练和指令微调与人类对齐两个阶段。

2.1.1 大规模预训练

        OpenAI 前首席科学家Ilya Sutskever 在公开采访中指出大规模预训练本质上是在做一个世界知识的压缩,从而能够学习到一个编码世界知识的参数模型,这个模型能够通过解压缩所需要的知识来解决真实世界的任务。
        一般来说训练百亿模型至少需要百卡规模的算力集群(如A10080G)联合训练数月时间(与具体的算力资源相关);而训练千亿模型则需要千卡甚至万卡规模的算力集群。

2.1.2 指令微调与人类对齐

广泛使用的微调技术是“指令微调”(也叫做有监督微调,Supervised Fine-tuning, SFT),
使用任务输入与输出的配对数据进行模型训练,本质属于机器学习中的模仿学习(Imitation Learning)
将大语言模型与人类的期望、需求以及价值观对齐(Alignment)

2.2 扩展法则

大语言模型采用了与小型预训练语言模型相似的神经网络结构(基于注意力机制的Transformer 架构)和预训练方法(如语言建模)

2.2.1 KM 扩展法则

神经语言模型性能与三个主要因素——模型规模(????)、数据规模(????)和计算算力(????)之间的幂律关系

2.2.2 Chinchilla 扩展法则

指导大语言模型充分利用给定的算力资源进行优化训练
目前为止,还没有实验能够有效验证特定参数规模语言模型的饱和数据规模(即随着数据规模的扩展,模型性能不再提升)。

2.2.3 关于扩展法则的讨论

(1)可预测的扩展(Predictable Scaling)
通过较小算力资源可靠地估计较大算力资源投入后的模型性能
体现在两个方面:使用小模型的性能去预估大模型的性能,或者使用大模型的早期训练性能去估计训练完成后的性能。
(2)任务层面的可预测性

2.3 涌现能力

“在小型模型中不存在但在大模型中出现的能力”,
具体是指当模型扩展到一定规模时,模型的特定任务性能突然出现显著跃升的趋势,远超过随机水平。
但是仍然缺乏相应的理论解释以及理论证实,甚至有些研究工作对于涌现能力是否存在提出质疑

2.3.1 代表性的涌现能力

(1)上下文学习(In-context Learning, ICL)
在提示中为语言模型提供自然语言指令和多个任务示例(Demonstration),无需显式的训练或梯度更新,仅输入文本的单词序列就能为测试样本生成预期的输出。
175B 参数的GPT-3 模型展现出强大的上下文学习能力,而GPT-1 和GPT-2 模型则不具备这种能力
(2)指令遵循(Instruction Following)
指大语言模型能够按照自然语言指令来执行对应的任务
(3)逐步推理(Step-by-step Reasoning)
对于小型语言模型而言,通常很难解决涉及多个推理步骤的复杂任务(如数学应用题),
而大语言模型则可以利用思维链(Chain-of-Thought, CoT)提示策略来加强推理性能。
具体来说,大语言模型可以在提示中引入任务相关的中间推理步骤来加强复杂任务的求解,从而获得更为可靠的答案。

2.3.2 涌现能力与扩展法则的关系

提供了两种不同观点来理解大模型相对于小模型的优势,但是刻画了较为不同的扩展效应趋势。
“顿悟”(Grokking),是指训练过程中的一种数据学习模式:模型性能从随机水平提升为高度泛化

2.4 GPT 系列模型的技术演变

        GPT 系列模型的基本原理是训练模型学习恢复预训练文本数据,将广泛的世界知识压缩到仅包含解码器(Decoder-Only)的Transformer 模型中,从而使模型能够学习获得较为全面的能力。
两个关键要素是:
(I)训练能够准确预测下一个词的Transformer (只包含解码器)语言模型;
(II)扩展语言模型的规模以及扩展预训练数据的规模。

2.4.1 早期探索

模型名称GPT 是生成式预训练(Generative Pre-Training)的缩写。
与GPT-1同期发布的预训练语言模型是大名鼎鼎的BERT 模型。
BERT与GPT-1虽然都采用了基于Transformer 架构的预训练学习方式,但是它主要面向自然语言理解任务(Natural Language Understanding, NLU),为此只保留了Transformer 中的编码器。
GPT-2 沿用了GPT-1 的类似架构,将参数规模扩大到1.5B,并使用大规模网页数据集WebText 进行预训练。
2.4.2 规模扩展
OpenAI 在2020 年发布了GPT-3 模型,将模型参数扩展到了175B 的规模。
正式提出了“上下文学习”这一概念,使得大语言模型可以通过少样本学习的方式来解决各种任务。
GPT-3 可以被看作从预训练语言模型到大语言模型演进过程中的一个重要里程碑,
它证明了将神经网络扩展到超大规模可以带来大幅的模型性能提升,并且建立了以提示学习方法为基础技术路线的任务求解范式。

2.4.3 能力增强

OpenAI 探索了两种主要途径来改进GPT-3 模型,即代码数据训练和人类偏好对齐。
(1)代码数据训练
OpenAI于2021年7月推出了Codex,这是一个在大量GitHub 代码数据集合上微调的GPT 模型。
实验结果表明,Codex 可以解决非常困难的编程问题,还能显著提升大模型解决数学问题的能力。
GPT-3.5模型是在基于代码训练的GPT 模型(即code-davinci-002)基础上开发的,这表明在代码数据上进行训练有助于提高GPT 模型的综合性能,尤其是代码能力。
另一个可能的启发是对于可用于预训练的数据范围的扩展,可能并不局限于自然语言形式表达的文本数据。
(2)人类对齐

2.4.4 性能跃升

OpenAI 自2022 年底开始发布了一系列重要的技术升级,其中具有代表性的模型是ChatGPT、GPT-4 以及GPT-4V/GPT-4 Turbo
GPT-4它首次将GPT 系列模型的输入由单一文本模态扩展到了图文双模态。

局限性,例如,GPT 模型可能在某些特定上下文中生成带有事实错误的内容(即幻觉)或存在潜在风险的回应。

第十四章 总结

1、基本原理

大语言模型采用了看起来非常简单的训练任务(即预测下一个词元),
通过在大规模文本数据上进行无监督预训练,就能获得解决各种下游任务的通用潜力。

形式化解释其原因仍然具有很大的研究挑战

2、模型架构

由于具有良好的可扩展性,由堆叠的多头自注意层组成的Transformer已经成为构建大语言模型的基础网络架构。
Transformer 模型仍然受到训练成本高、推理速度慢等问题的困扰。

3、模型训练

不同大语言模型之间的区别主要体现在如何准备与使用训练数据。
大语言模型的训练需要巨大的算力开销,训练过程容易受到数据质量、训练技巧等方面的影响,将会面临着诸多的技术挑战。
由于大模型的训练数据在训练过程开始前就需要采集完毕,因此会出现信息过时、知识错误等问题,
还需要研发有效的微调策略以注入或者修正某些特定知识,这一方向被称为“大模型编辑”或者“知识编辑”

4、模型使用

由于大语言模型的微调成本很高,提示已经成为大语言模型的主要使用途径,即通过自然语言来表述待解决任务的任务需求。

5、安全性与对齐

大语言模型安全问题(如隐私问题、过度依赖、虚假信息和社会影响等)
大语言模型存在生成幻觉内容的倾向,可能会输出存在事实性错误的文本。
更严重的是,大语言模型可能会因为某些恶意指令生成有害或有偏见的内容,从而导致潜在的滥用风险。

为了解决大模型的安全问题,基于人类反馈的强化学习(RLHF)方法已经成为了主要的技术途径之一,
该方法将人工标注纳入训练过程来加强大模型对于人类价值观的对齐。

6、应用生态

大语言模型对于以搜索引擎与推荐系统为代表的信息获取技术产生了重要影响。
以大语言模型为中枢核心的应用软件系统将得到广泛发展。

上一篇:华为HCIP Datacom H12-821 卷28


下一篇:机器学习 - 实现KNN对图像有监督学习的 分类算法 (一)【原理】