1.3.2 数据准备
大模型常用的数据类型包括监督数据、指令数据、对话数据、人类反馈数据等。
● 监督数据是指通过人工标注、众包(通过将数据分配给大量人员来完成标注的外包模式)标注等方式获得的数据。这类数据包含输入和对应的标签或监督信号,用于指导模型学习正确的输出。
● 指令数据包含指令与对应的回答。这类数据可指导模型学习相关知识,主要用于训练模型并调整其参数。
● 对话数据一般用于训练模型与人类交流沟通的能力,可分为单轮对话数据与多轮对话数据。
● 人类反馈数据是指在模型开发和训练过程中加入的人类标注、审查、验证或修正的数据。例如,Anthropic提供的RLHF数据集在每个数据项中包含人类接受和人类拒绝两种形式[55],而北京大学开源的PKU-SafeRLHF数据集(如图1-9所示,对同一个问题给出两种回复,两种回复有可能都是正向的、负向的,抑或一正一负两种倾向的)则调整了数据项的搭配,增加了数据集的多样性。开发者可以使用RLHF在RLHF数据集上训练出与人类价值观对齐的模型。
图1-9 北京大学开源的PKU-SafeRLHF数据集
数据处理涵盖数据收集和数据预处理过程。按照训练所需,开发者可以从网络、公开数据集、用户生成数据、公司内部数据等途径获取数据。数据类型涵盖图片、文字、音频等。本书所用到的数据集均已在对应位置标注下载方式指引,读者可以自行下载。
数据预处理是提高模型性能和减少可能错误的重要步骤。第2章将重点介绍文本数据、图像数据和图文对数据的预处理方法。如图 1-10 所示,以文本数据为例,开发者需要对原始数据包含的缺失值、重复值、异常值等进行处理,并使用分词器将文本数据转化为模型可以接收的数据类型。针对图像数据,一般采用图像去噪、图像重采样和图像增强等技术,以提升图像数据质量。
图1-10 文本数据预处理流程