-
Notifications
You must be signed in to change notification settings - Fork 16
llmBookNote



OpenAI 前首席科学家 Ilya Sutskever 在公开采访中指出大规模预训练本质上是在做一个世界知识的压缩,从而能够学习到一个编码世界知识的参数模型,这个模型能够通过解压缩所需要的知识来解决真实世界的任务。
在 BERT 等传统预训练模型中,所采用的模型架构以及训练任务还比较多样。由于 GPT 系列模型的爆火,“解码器架构 + 预测下一个词”的有效性得到了充分验证,已经成为现有大语言模型主要采纳的技术路径
4.3 词元化(分词)
4.3.1 BPE 分词
在 1994 年,BPE 算法被提出,最早用于通用的数据压缩 [137]。随后,自然语言处理领域的研究人员将其进行适配,并应用于文本分词 [138]。BPE 算法从一组基本符号(例如字母和边界字符)开始,迭代地寻找语料库中的两个相邻词元,并将它们替换为新的词元,这一过程被称为合并。合并的选择标准是计算两个连续词元的共现频率,也就是每次迭代中,最频繁出现的一对词元会被选择与合并。
合并过程将一直持续达到预定义的词表大小。为了帮助读者更好的理解 BPE 分词的流程,我们参考了 Hugging Face 在线课程,并在例 4.2展示了一个 BPE 算法的具体流程示例。



7.1.5 指令微调的作用
- 整体任务性能改进
指令微调旨在使用人工构建的指令数据对于大语言模型进一步训练,从而增强或解锁大语言模型的能力 [41]。相关研究表明,不同规模的语言模型(参数量 规模从 77M 到 540B)都可以从指令微调中受益 41, 103],
- 任务求解能力增强
指令微调旨在指导模型学会理解自然语言指令,并据此完成相应的任务。通过指令微调,大模型能够获得较好的指令遵循与任务求解能力,无需下游任务的训练样本或者示例就可以解决训练中未见过的任务。
- 领域专业化适配
通用的大语言模型能够在传统自然语言处理任务(如生成和推理)以及日常生活任务(如头脑风暴)上取得较好的效果,然而它们在特定领域中(如医学、法律和金融等)的表现与领域专用模型的效果仍有一定差距。在实际应用中,可以针对大语言模型进行面向特定领域的指令微调,从而使之能够适配下游的任务。
7.4.1 指令微调的代码实践
以下代码展示了 LLMBox 和 YuLan-Chat 中指令微 调的整体训练流程。
7.4.3 LoRA 代码实践与分析
在大语言模型的学习过程中,如何确保大语言模型的行为与人类价值观、人类真实意图和社会伦理相一致成为了一个关键研究问题,通常称这一研究问题为人类对齐(Human Alignment)

