分享
数据
输入“/”快速插入内容
数据
用户8575
用户8575
2024年6月30日修改
阿里研究院:
大模型训练数据白皮书.pdf
BC互联网星球,《
数据是关键:大模型训练的数据采集与处理方法
》
大模型训练需要哪些数据?
大模型所需要的数据根据训练的阶段有所不同。以 ChatGPT 为代表的大语言模型(LLM)为例,其训练过程分为预训练(Pre-training)、监督微调(SFT)、基于人类反馈的强化学习(RLHF)三个阶段,后两部分又统称为“对齐”(Alignment)阶段。
第一阶段预训练所需的语料是各种类型的世界知识,包括网页、书籍、新闻、论文期刊、对话文本、代码等形式,通过大量学习世界知识,构建模型的基础能力,理解客观世界的规律,该阶段的语料特征可以概括为 “广”。
第二阶段 SFT,通过标注人员设计问答,编写正确答案,将例题投喂给模型,并希望模型在没有见过的任务中“举一反三”,提升泛化能力。第三阶段 RLHF,训练目标是让模型的价值观与人类对齐,需要人类对模型的回答进行打分、排序,让模型知道 " 怎么说更好 "。第二和第三阶段的数据质量要求较高,需要来自人类的高质量反馈,语料特征可以概括为 “齐”。
如果将模型微调后部署应用于特定的场景形成行业大模型(如工业、金融、医疗等),则需要满足该场景专业需求的特定领域知识做预训练和对齐,需要具备一定专业深度,如行业数据库、专业文档、专业网站等,这部分的语料特征是 “专”。
不同类型的数据集(
LLM Datasets
)
(《
一文读懂 LLM Datesets (大语言模型数据集)【大模型行业应用入门系列】
》)
调整语言模型是训练过程中至关重要的环节,其目标是使模型能够更好地满足特定任务的需求。在调整过程中,Datasets的选择和划分起着关键的作用。
LLM Datesets是指用于训练和评估语言模型的文本集合。为了监督机器学习过程,我们需要定义一组目标结果,期望模型在推理时能够近似这些目标结果。因此, Datasets 通常被划分为三个互不重叠的组别:Training sets、Validation sets和 Test sets。
50%
50%
1、Training sets - 训练集
训练集作为训练语言模型的主要Datasets,起着至关重要的作用。它包含了大量的文本样本,通过对训练集进行学习和参数优化,模型可以不断提高性能和表现。因此,在选择训练集时,我们应该注重以下几个方面,以确保模型具备全面的语言理解和生成能力。
首先,训练集的广泛性和多样性是至关重要的。广泛性意味着训练集应该涵盖各种文本来源、领域和主题。而多样性则有助于模型更好地理解和处理各种语言现象,包括不同的语法结构、词汇用法和语义关系。通过暴露模型于多样的数据样本中,可以提高其适应不同领域和应用场景的能力。
其次,训练集应该覆盖各种任务要求。语言模型不仅需要具备理解自然语言的能力,还需要能够生成准确、流畅的文本。因此,训练集应该包含各种任务,如问答、文本摘要、机器翻译等,以使模型能够学习和优化针对不同任务的表现。这样的多任务学习可以提高模型的通用性和适应性。
此外,训练集的质量也是至关重要的一项考虑因素。高质量的训练集应该经过严格的筛选和清洗,确保其中的文本内容准确、可靠,并符合预期的语言规范。从而可以帮助模型建立准确的语言模式和规则,并避免学习到错误或误导性的信息。
2、 Validation sets - 验证集
验证集在训练语言模型中同样处于核心的一环,是用于调整模型超参数和监控训练过程的关键Datasets。在训练过程中,模型需要进行评估和比较,以确定最佳的超参数设置和优化策略。验证集的主要目的是提供一个独立的样本集,用于评估模型的性能和泛化能力。
验证集的特点之一是独立性,即它与训练集和测试集是相互独立的。这意味着验证集的样本不参与模型的训练过程,它们是为了对模型进行中立的评估而保留的。这种独立性有助于提供对模型在真实场景中的泛化能力的准确评估。
通过定期在验证集上进行评估,可以监控模型的性能和进展。通过评估指标(如准确率、损失函数等),可以了解模型在验证集上的表现,并根据评估结果进行调整和优化。例如,可以尝试不同的超参数设置、调整模型结构或使用正则化技术来提高模型的效果。
验证集还可以帮助检测模型的过拟合
()
或欠拟合问题。如果模型在训练集上表现良好,但在验证集上表现较差,可能意味着模型过拟合了训练数据,没有很好地泛化到新样本。这种情况下,可以采取一些正则化方法,如加入正则化项、减少模型复杂度等,以改善模型的泛化能力。
3、 Test sets - 测试集
与上述的Datasets一致,测试集在训练语言模型中也扮演着关键的角色。其主要用于最终评估和报告模型性能的Datasets。测试集应该是模型在训练和调整过程中从未接触过的样本集,以确保评估结果的客观性和可靠性。
测试集的选择要遵循两个重要原则:独立性和代表性。首先,测试集应该与训练集和验证集是相互独立的,这意味着测试集的样本不参与模型的训练和验证过程。这种独立性可以提供对模型在真实场景中的泛化能力的准确评估。
其次,测试集应该具有代表性,能够涵盖模型可能在实际应用中遇到的各种情况和数据分布。它应该包含来自不同领域、不同风格和不同文化背景的样本,以确保模型在各种语言现象和任务要求下的性能评估。这样的代表性有助于提供对模型整体性能的全面评估。
在测试集上进行评估可以提供对模型在真实场景下的性能和泛化能力的评估。通过在测试集上进行评估,可以获得模型在未见过的数据上的准确性、流畅性和语义理解的能力。这种最终的评估结果对于模型的性能报告和比较非常重要。
需要注意的是,测试集应该在模型训练和调整的最后阶段才被使用,以确保评估结果的客观性。在训练过程中多次使用测试集可能导致模型对测试集的过拟合,使评估结果失去可靠性。因此,测试集应该在模型开发的最终阶段使用,以提供对模型性能的最终评估。
在评估模型性能和进行超参数调整时,合理划分Datasets至关重要。Datasets的选择应该充分考虑任务的特点、目标以及模型的需求和约束。同时,Datasets的质量和多样性也是提高模型训练效果和泛化能力的重要因素,而合理的Datasets划分可以发挥关键作用。