云服务器内容精选

  • NLP大模型训练类型选择建议 平台针对NLP大模型提供了三种训练类型,包括预训练、微调、强化学习(DPO),三者区别详见表3。 表3 预训练、微调训练类型区别 训练方式 训练目的 训练数据 模型效果 应用场景举例 预训练 关注通用性:预训练旨在让模型学习广泛的通用知识,建立词汇、句法和语义的基础理解。通过大规模的通用数据训练,模型可以掌握丰富的语言模式,如语言结构、词义关系和常见的句型。 使用大规模通用数据:通常使用海量的无监督数据(如文本语料库、百科文章),这些数据覆盖广泛的领域和语言表达方式,帮助模型掌握广泛的知识。 适合广泛应用:经过预训练后,模型可以理解自然语言并具备通用任务的基础能力,但还没有针对特定的业务场景进行优化。预训练后的模型主要用于多个任务的底层支持。 通过使用海量的互联网文本语料对模型进行预训练,使模型理解人类语言的基本结构。 微调 关注专业性:微调是对预训练模型的参数进行调整,使其在特定任务中达到更高的精度和效果。微调的核心在于利用少量的特定任务数据,使模型的表现从通用性向具体任务需求过渡。 使用小规模的特定任务数据:微调通常需要小规模但高质量的标注数据,直接与目标任务相关。通过这些数据,模型可以学习到任务特定的特征和模式。 在特定任务上具有更高的准确性:微调后的模型在具体任务中表现更优。相较于预训练阶段的通用能力,微调能使模型更好地解决细分任务的需求。 在一个客户服务问答系统中,可以用特定领域(如电商、保险)的对话数据对预训练模型进行微调,使其更好地理解和回答与该领域相关的问题。 强化学习(DPO) 关注偏好性:DPO(Direct Preference Optimization,直接偏好优化)通过利用偏好数据来提升模型的对话质量,增强其安全性、可控性,并且优化其输出的风格和语气。 使用模型生成的多个回答的排序数据:这些偏好数据通常来自于已有的高质量对话数据集。关键在于数据的质量,需要保证生成的偏好数据能够有效反映人类的实际偏好和期望。 对话质量:通过优化生成的回复,使其更自然、更符合语境,并减少不当或低质量的内容。 语气和风格调整:可以根据需要调整模型的语气(如正式或亲和)和输出风格(如简洁或详细)。 安全性和可控性:减少有害或偏见内容的生成,增强模型的可控性,能够避免生成不符合伦理或社会规范的回答。 在内容创作和写作辅助中,DPO能够帮助创作类工具生成更加符合用户风格和偏好的文本内容,支持个性化写作。 强化学习(RFT) 关注正确性:RFT(Reinforcement Fine-Tuning,强化微调)是一种结合规则化奖励信号的强化学习方法。其训练目的是引导模型在具有明确“正确答案”的复杂任务中不断优化输出结果,使其逐步逼近最优解。RFT 通过少量高质量反馈数据,使模型在特定领域实现高精度推理与决策能力。 使用规则化奖励函数对模型生成的回答打分:RFT 的训练数据通常包括输入问题与标答。由模型自动生成的多个候选回答,每个候选回答会通过一个预定义的规则化奖励函数进行评分。这些得分作为强化学习中的奖励信号,用于指导策略更新,使模型更倾向于生成“正确”或“有效”的输出。 高精度推理能力:RFT 能显著提升模型在数学推理、代码生成、逻辑推导等任务上的准确率,使其接近甚至达到专家水平。 稳定性和一致性增强:通过规则化反馈机制,模型在重复任务中表现更加稳定,减少随机性导致的错误。 可解释性提升:由于依赖明确的规则奖励机制,RFT 训练出的模型在输出路径上更具可追踪性和可解释性,便于调试和优化。 泛化能力有限但可控:虽然 RFT 更聚焦于特定领域的性能优化,泛化能力相对较弱,但其输出更加可控,适合封闭式任务场景。 在数学问题求解中,RFT应用于解题系统,通过对答案是否正确进行反馈,让模型学会一步步推导出正确的解法。 此外,针对微调训练任务,平台提供了两种微调方式: 全量微调:适合有充足数据并关注特定任务性能的场景。在全量微调中,模型的所有参数都会调整,以适应特定任务的需求。这种方式适合样本量较大、对推理效果要求较高的任务。例如,在特定领域(如金融、医疗)中,若拥有大量标注数据,且需要更高的特定任务推理精度,则全量微调是优先选择。 LoRA微调:适用于数据量较小、侧重通用任务的情境。LoRA(Low-Rank Adaptation)微调方法通过调整模型的少量参数,以低资源实现较优结果,适合聚焦于领域通用任务或小样本数据情境。例如,在针对通用客服问答的场景中,样本量少且任务场景广泛,选择LoRA微调既能节省资源,又能获得较好的效果。 微调方式选择建议: 若项目中数据量有限或任务场景较为广泛,可以选择LoRA微调以快速部署并保持较高适用性。 若拥有充足数据且关注特定任务效果,选择全量微调有助于大幅提升在特定任务上的模型精度。 创建训练任务如何配置资源: 创建训练任务页面默认资源配置为该模型支持的最小资规格源配置; 在训练任务创建页面,如果单实例训练单元数可以配置为8,且实例数可以配置为大于1,则说明当前模型支持多机多卡训练;
  • NLP大模型训练流程介绍 NLP大模型的训练分为两个关键阶段:预训练和微调。 预训练阶段:在这一阶段,模型通过学习大规模通用数据集来掌握语言的基本模式和语义。这一过程为模型提供了处理各种语言任务的基础,如阅读理解、文本生成和情感分析,但它还未能针对特定任务进行优化。 针对预训练阶段,还可以继续进行训练,这一过程称为增量预训练。增量预训练是在已经完成的预训练的基础上继续训练模型。增量预训练旨在使模型能够适应新的领域或数据需求,保持其长期的有效性和准确性。 微调阶段:基于预训练的成果,微调阶段通过在特定领域的数据集上进一步训练,使模型能够更有效地应对具体的任务需求。这一阶段使模型能够精确执行如文案生成、代码生成和专业问答等特定场景中的任务。在微调过程中,通过设定训练指标来监控模型的表现,确保其达到预期的效果。完成微调后,将对用户模型进行评估并进行最终优化,以确保满足业务需求,然后将其部署和调用,用于实际应用。 针对微调阶段,微调后的模型可以直接部署,也可以继续进行强化学习(DPO)训练,以进一步对齐任务场景下的用户偏好,例如模型回答的风格、模型的价值观等。注意,目前盘古NLP大模型仅支持对N4系列进行DPO微调训练。
  • NLP大模型训练常见报错与解决方案 NLP大模型训练常见报错及解决方案请详见表1和表2。 表1 NLP大模型训练常见报错与解决方案 常见报错 问题现象 原因分析 解决方案 创建训练任务时,数据集列表为空。 创建训练任务时,数据集选择框中显示为空,无可用的训练数据集。 数据集未发布。 请提前创建与大模型对应的训练数据集,并完成数据集发布操作。 训练日志提示“root: XXX valid number is 0” 日志提示“root: XXX valid number is 0”,表示训练集/验证集的有效样本量为0,例如: INFO: root: Train valid number is 0. 该日志表示数据集中的有效样本量为0,可能有如下原因: 数据未标注。 标注的数据不符合规格。 请检查数据是否已标注或标注是否符合算法要求。 训练日志提示“ValueError: label_map not match” 训练日志中提示“ValueError: label_map not match”,并打印出标签数据,例如: ValueError: label_map not match. {1:'apple', 2:'orange', 3:'banana', 4:'pear'} & {1:'apple', 2:'orange', 3:'banana'} 训练集中的标签个数与验证集中的个数不一致,导致该错误发生。 例如,训练集中的标签共有4个,验证集中的标签只有3个。 请保持数据中训练集和验证集的标签数量一致。 表2 NLP大模型训练常见错误码和建议解决方法 错误码 错误信息 说明 建议解决方法 model.50010001 当前驱动 {0} 不满足指定的驱动版本 {1}。 当前驱动 {0} 不满足指定的驱动版本 {1}。 联系oncall检查宿主机上的驱动,若不符合要求,则需要oncall重新升级驱动到错误信息中指定的版本。 model.50010002 当前固件 {0} 不满足指定的驱动版本 {1}。 当前固件 {0} 不满足指定的驱动版本 {1}。 联系oncall检查宿主机上的固件,若不符合要求,则需要oncall重新升级驱动到错误信息中指定的版本。 model.50010003 当前磁盘空间大小不满足要求。 当前磁盘空间大小不满足要求。 联系oncall扩容宿主机上的磁盘,要求挂载到/cache目录上的空间大于等于19T。 model.50010101 Obs文件下载错误。 Obs文件下载错误。 请检查OBS服务是否正常,如果正常请联系技术支持。 model.50010104 Obs文件上传错误。 Obs文件上传错误。 请检查OBS服务是否正常,如果正常请联系技术支持。 model.50010106 文件删除错误,OBS服务不可用。 文件删除错误,OBS服务不可用。 请检查OBS服务是否正常,如果正常请联系技术支持。 model.50010107 文件上传错误,HDFS服务不可用。 文件上传错误,HDFS服务不可用。 请检查HDFS服务是否正常,如果正常请联系技术支持。 model.50010108 文件下载错误,HDFS服务不可用。 文件下载错误,HDFS服务不可用。 请检查HDFS服务是否正常,如果正常请联系技术支持。 model.50010109 文件删除错误,HDFS服务不可用。 文件删除错误,HDFS服务不可用。 请检查HDFS服务是否正常,如果正常请联系技术支持。 model.50010110 列举文件夹下文件错误,HDFS服务不可用。 列举文件夹下文件错误,HDFS服务不可用。 请检查HDFS服务是否正常,如果正常请联系技术支持。 父主题: 训练NLP大模型
  • NLP大模型训练流程介绍 NLP大模型的训练分为两个关键阶段:预训练和微调。 预训练阶段:在这一阶段,模型通过学习大规模通用数据集来掌握语言的基本模式和语义。这一过程为模型提供了处理各种语言任务的基础,如阅读理解、文本生成和情感分析,但它还未能针对特定任务进行优化。 针对预训练阶段,还可以继续进行训练,这一过程称为增量预训练。增量预训练是在已经完成的预训练的基础上继续训练模型。增量预训练旨在使模型能够适应新的领域或数据需求,保持其长期的有效性和准确性。 微调阶段:基于预训练的成果,微调阶段通过在特定领域的数据集上进一步训练,使模型能够更有效地应对具体的任务需求。这一阶段使模型能够精确执行如文案生成、代码生成和专业问答等特定场景中的任务。在微调过程中,通过设定训练指标来监控模型的表现,确保其达到预期的效果。完成微调后,将对用户模型进行评估并进行最终优化,以确保满足业务需求,然后将其部署和调用,用于实际应用。 针对微调阶段,微调后的模型可以直接部署,也可以继续进行强化学习(DPO)训练,以进一步对齐任务场景下的用户偏好,例如模型回答的风格、模型的价值观等。注意,目前盘古NLP大模型仅支持对N4系列进行DPO微调训练。
  • NLP大模型训练类型选择建议 平台针对NLP大模型提供了三种训练类型,包括预训练、微调、强化学习(DPO),三者区别详见表3。 表3 预训练、微调训练类型区别 训练方式 训练目的 训练数据 模型效果 应用场景举例 预训练 关注通用性:预训练旨在让模型学习广泛的通用知识,建立词汇、句法和语义的基础理解。通过大规模的通用数据训练,模型可以掌握丰富的语言模式,如语言结构、词义关系和常见的句型。 使用大规模通用数据:通常使用海量的无监督数据(如文本语料库、百科文章),这些数据覆盖广泛的领域和语言表达方式,帮助模型掌握广泛的知识。 适合广泛应用:经过预训练后,模型可以理解自然语言并具备通用任务的基础能力,但还没有针对特定的业务场景进行优化。预训练后的模型主要用于多个任务的底层支持。 通过使用海量的互联网文本语料对模型进行预训练,使模型理解人类语言的基本结构。 微调 关注专业性:微调是对预训练模型的参数进行调整,使其在特定任务中达到更高的精度和效果。微调的核心在于利用少量的特定任务数据,使模型的表现从通用性向具体任务需求过渡。 使用小规模的特定任务数据:微调通常需要小规模但高质量的标注数据,直接与目标任务相关。通过这些数据,模型可以学习到任务特定的特征和模式。 在特定任务上具有更高的准确性:微调后的模型在具体任务中表现更优。相较于预训练阶段的通用能力,微调能使模型更好地解决细分任务的需求。 在一个客户服务问答系统中,可以用特定领域(如电商、保险)的对话数据对预训练模型进行微调,使其更好地理解和回答与该领域相关的问题。 强化学习(DPO) 关注偏好性:DPO(Direct Preference Optimization,直接偏好优化)通过利用偏好数据来提升模型的对话质量,增强其安全性、可控性,并且优化其输出的风格和语气。 使用模型生成的多个回答的排序数据:这些偏好数据通常来自于已有的高质量对话数据集。关键在于数据的质量,需要保证生成的偏好数据能够有效反映人类的实际偏好和期望。 对话质量:通过优化生成的回复,使其更自然、更符合语境,并减少不当或低质量的内容。 语气和风格调整:可以根据需要调整模型的语气(如正式或亲和)和输出风格(如简洁或详细)。 安全性和可控性:减少有害或偏见内容的生成,增强模型的可控性,能够避免生成不符合伦理或社会规范的回答。 在内容创作和写作辅助中,DPO能够帮助创作类工具生成更加符合用户风格和偏好的文本内容,支持个性化写作。 此外,针对微调训练任务,平台提供了两种微调方式: 全量微调:适合有充足数据并关注特定任务性能的场景。在全量微调中,模型的所有参数都会调整,以适应特定任务的需求。这种方式适合样本量较大、对推理效果要求较高的任务。例如,在特定领域(如金融、医疗)中,若拥有大量标注数据,且需要更高的特定任务推理精度,则全量微调是优先选择。 LoRA微调:适用于数据量较小、侧重通用任务的情境。LoRA(Low-Rank Adaptation)微调方法通过调整模型的少量参数,以低资源实现较优结果,适合聚焦于领域通用任务或小样本数据情境。例如,在针对通用客服问答的场景中,样本量少且任务场景广泛,选择LoRA微调既能节省资源,又能获得较好的效果。 微调方式选择建议: 若项目中数据量有限或任务场景较为广泛,可以选择LoRA微调以快速部署并保持较高适用性。 若拥有充足数据且关注特定任务效果,选择全量微调有助于大幅提升在特定任务上的模型精度。 创建训练任务如何配置资源: 1.创建训练任务页面默认资源配置为该模型支持的最小资规格源配置; 2.在训练任务创建页面,如果单实例训练单元数可以配置为8,且实例数可以配置为大于1,则说明当前模型支持多机多卡训练;
  • NLP大模型训练常见报错与解决方案 NLP大模型训练常见报错及解决方案请详见表1。 表1 NLP大模型训练常见报错与解决方案 常见报错 问题现象 原因分析 解决方案 创建训练任务时,数据集列表为空。 创建训练任务时,数据集选择框中显示为空,无可用的训练数据集。 数据集未发布。 请提前创建与大模型对应的训练数据集,并完成数据集发布操作。 训练日志提示“root: XXX valid number is 0” 日志提示“root: XXX valid number is 0”,表示训练集/验证集的有效样本量为0,例如: INFO: root: Train valid number is 0. 该日志表示数据集中的有效样本量为0,可能有如下原因: 数据未标注。 标注的数据不符合规格。 请检查数据是否已标注或标注是否符合算法要求。 训练日志提示“ValueError: label_map not match” 训练日志中提示“ValueError: label_map not match”,并打印出标签数据,例如: ValueError: label_map not match. {1:'apple', 2:'orange', 3:'banana', 4:'pear'} & {1:'apple', 2:'orange', 3:'banana'} 训练集中的标签个数与验证集中的个数不一致,导致该错误发生。 例如,训练集中的标签共有4个,验证集中的标签只有3个。 请保持数据中训练集和验证集的标签数量一致。 父主题: 训练NLP大模型