简介
本博客内容是《大语言模型》一书的读书笔记,该书是中国人民大学高瓴人工智能学院赵鑫教授团队出品,覆盖大语言模型训练与使用的全流程,从预训练到微调与对齐,从使用技术到评测应用,帮助学员全面掌握大语言模型的核心技术。并且,课程内容基于大量的代码实战与讲解,通过实际项目与案例,学员能将理论知识应用于真实场景,提升解决实际问题的能力。
本文主要记录datawhale的活动学习笔记,可点击活动连接
1.2 大模型技术基础
大语言模型
预训练阶段会得到base model,本质上就是一个互联网文本模拟器,这个阶段需要上万台服务器训练几个月的时间,这个生成的模型可以认为是互联网的有损压缩。这个互联网文本模拟器很有意思,但我们想要的不是整个互联网,而是我们提问,模型回答。
我们实际需要的是一个助手模型,在后训练阶段就可以训练一个助手模型。在后训练过程中,是一个监督微调SFT(supervised finetuning),整体的训练过程,与预训练过程一致。差别就在于数据集。这些对话数据集是人工标注问题和答案,当然现在很多也都是模型生成的。
这个助手模型中,如果不采用某些手段,模型会产生幻觉。
RL是强化学习,这个过程包括两个阶段,第一个阶段是训练一个奖励模型,用于代替人类对可以验证和不可以验证的领域问题进行排序,然后基于奖励模型实现RL。
构建一个大语言模型
大语言模型预训练(Pre-training)
使用与下游任务无关的大规模数据进行模型参数的初始训练
➢ 基于Transformer解码器架构,进行下一个词预测
➢ 数据数量、数据质量都非常关键
大语言模型后训练(Post-Training)
指令微调(Instruction Tuning)
➢ 使用输入与输出配对的指令数据对于模型进行微调
➢ 提升模型通过问答形式进行任务求解的能力
人类对齐(Human Alignment)
➢ 将大语言模型与人类的期望、需求以及价值观对齐
➢ 基于人类反馈的强化学习对齐方法(RLHF)
大模型的研发已经成为一项系统工程
扩展定律(Scaling Law)
➢ 通过扩展参数规模、数据规模和计算算力,大语言模型的能力会出现显著提升
➢ 扩展定律在本次大模型浪潮中起到了重要作用
大语言模型采用了与小型预训练语言模型相似的神经网络结构(基于注意力机制的 Transformer 架构)和预训练方法(如语言建模)。但是通过扩展参数规模、数据规模和计算算力,大语言模型的能力显著超越了小型语言模型的能力。
有趣的是,这种通过扩展所带来的性能提升通常显著高于通过改进架构、算法等方面所带来的改进。因此,建立定量的建模方法,即扩展法则(Scaling Law),
KM扩展定律
➢ OpenAI 团队建立了神经语言模型性能与参数规模(𝑁)、数据规模(𝐷)和计算算力(𝐶)之间的幂律关系
Chinchilla扩展定律
➢ DeepMind 团队于 2022 年提出了另一种形式的扩展定律,旨在指导大语言模型充分利用给定的算力资源优化训练
Hoffmann 等人 [22](DeepMind 团队)于 2022 年提出了一种可选的扩展法则,旨在指导大语言模型充分利用给定的算力资源进行优化训练。通过针对更大范围的模型规模(70M 到 16B 参数)和数据规模(5B 到 500B 词元)进行实验,研究
其中 𝐸 = 1.69, 𝐴 = 406.4, 𝐵 = 410.7,𝛼 = 0.34 和 𝛽 = 0.28。进一步,利用约束条件
𝐶 ≈ 6𝑁𝐷 对于损失函数 𝐿(𝑁, 𝐷) 进行推导,能够获得算力资源固定情况下模型规
模与数据规模的最优分配方案(如下所示):
深入讨论扩展定理
➢ 模型的语言建模损失可以进行下述分解
➢ 扩展定律可能存在边际效益递减
➢ 随着模型参数、数据数量的扩展,模型性能增益将逐渐减小
➢ 目前开放数据已经接近枯竭,难以支持扩展定律的持续推进
涌现能力
什么是涌现能力
➢ 原始论文定义:“在小型模型中不存在、但在大模型中出现的能力”
➢ 模型扩展到一定规模时,特定任务性能突然出现显著跃升趋势,远超随机水平
上下文学习(In-context Learning, ICL).
指令遵循(Instruction Following).
逐步推理(Step-by-step Reasoning)
上下文学习(In-context Learning)
➢ 在提示中为语言模型提供自然语言指令和任务示例,无需显式梯度更新就能为测试样本生成
预期输出
指令遵循(Instruction Following)
➢ 大语言模型能够按照自然语言指令来执行对应的任务
逐步推理(Step-by-step Reasoning)
➢ 在提示中引入任务相关的中间推理步骤来加强复杂任务的求解,从而获得更可靠的答案
涌现能力与扩展定律的关系
➢ 涌现能力和扩展定律是两种描述规模效应的度量方法
大模型核心技术
➢ 规模扩展:扩展定律奠定了早期大模型的技术路线,产生了巨大的性能提升
➢ 数据工程:数据数量、数据质量以及配制方法极其关键
➢ 高效预训练:需要建立可预测、可扩展的大规模训练架构
➢ 能力激发:预训练后可以通过微调、对齐、提示工程等技术进行能力激活
➢ 人类对齐:需要设计对齐技术减少模型使用风险,并进一步提升模型性能
➢ 工具使用:使用外部工具加强模型的弱点,拓展其能力范围