趋近智
在上一章中,我们确定了小语言模型和有监督微调 (fine-tuning)的技术机制。现在,我们将重点转向数据。机器学习 (machine learning)模型的效果与其在训练过程中处理的信息息息相关。对于微调而言,这意味着要将原始文本转换为模型架构要求的结构化格式。
原始文本无法直接输入神经网络 (neural network),必须将其分解为数值表示。以标准训练数据集为例,模型需要通过分词(tokenization)将文本转换为整数数组。在进行批处理时,长度不一的序列必须进行标准化处理。我们对较短的序列进行填充(padding),使其与批次中最长的序列对齐 (alignment),从而保持矩阵维度一致。如果最大序列长度为 ,给定输入长度为 ,则在数组中添加 个填充标记 (token)。
本章将讲解如何为有监督微调准备自定义数据。我们将说明指令数据集的格式规则,将文本整理成结构化的指令与回答对。你将使用分词器 (tokenizer)、实施填充策略并生成注意力掩码(attention masks),以便模型在计算损失时能够自动忽略填充标记。最后,你将构建一个完整的数据流水线,用于读取自定义数据集并输出特定模型架构所需的精确张量形状。
2.1 构建指令数据集
2.2 分词与填充策略
2.3 处理注意力掩码
2.4 针对特定架构格式化提示词
2.5 实践:构建自定义数据流水线