创建CV大模型训练任务
创建CV大模型预训练任务
创建CV大模型预训练任务步骤如下:
- 登录ModelArts Studio大模型开发平台首页,在“我的空间”模块,单击进入所需空间。
图1 我的空间
- 在左侧导航栏中选择“模型开发 > 模型训练”,单击右上角“创建训练任务”。
- 在“创建训练任务”页面,参考表1完成训练参数设置。
表1 CV大模型预训练参数说明 参数分类
训练参数
说明
训练配置
选择模型
可以修改如下信息:
- 来源:选择“模型广场”或“我的资产”。
- 类型:选择“CV大模型”,并选择训练所用的基础模型和版本。
训练类型
选择“预训练”。
资源配置
计费模式
选择训练当前任务的计费模式。
训练单元
选择训练模型所需的训练单元。
当前展示的完成本次训练所需要的最低训练单元要求。
单实例训练单元数
选择单实例训练单元数。
实例数
选择实例数。
优先级
优先级相同的任务,先创建先执行。
训练参数
训练参数
模型训练参数,参考表2。
高级设置
checkpoints
checkpoints:在模型训练过程中,用于保存模型权重和状态的机制。
订阅提醒
订阅提醒
该功能开启后,平台支持两种订阅类型,预置通知和SMN通知。
预置通知:系统将在任务状态完成或失败时,通过短信或邮件将提醒发送给用户。
SMN通知:用户可在SMN云服务创建主题并维护订阅信息,在创建训练时选择对应主题以及需要通知的状态。训练状态范围:停止,失败,完成。用户手工触发的停止操作不通知用户,如果是资源到期的停止需通知用户。
发布模型
开启自动发布
开启自动发布后,模型训练完成的最终产物会自动发布为空间资产,以便对模型进行压缩、部署、评测等操作或共享给其他空间。
模型可见性
选择发布模型的可见范围。
本空间可见:发布的模型仅当前工作空间可见。
全空间可见:发布的模型在所有空间均可见。
模型名称
要发布的模型资产的名称。
描述(可选)
要发布的模型资产的相关描述,选填。
基本信息
名称
训练任务名称。
描述(可选)
训练任务描述。
表2 CV大模型预训练参数说明 模型类型
训练参数
说明
Pangu-CV-物体检测-S-3.1.0
数据集
训练数据集。
训练轮次
表示完成全部训练数据集训练的次数。每个轮次都会遍历整个数据集一次。
单卡训练批处理大小
单卡批量处理大小,建议取值大于等于1。
单卡验证批处理大小
单卡验证批量处理大小,建议取值大于等于1。
图像分辨率
训练和推理的统一图像分辨率尺寸,要求为32的倍数,不符合要求会自动转换为最近的32倍数尺寸。
学习率
学习率决定了每次训练时模型参数更新的幅度。取值为大于0,小于等于1, 取列表中的第一个值。
模型规格
不同模型规格,X参数量最大,L参数量适中,S参数量最小。
混合精度训练
是否使用混合精度训练开关,开启时可降低训练显存占用但存在溢出风险,关闭时可提高训练稳定性但显存和训练速度有所增加
标签映射
是否增加标签映射功能,增加预训练模型的迁移效果。
Pangu-CV-物体检测-S-2.1.0
数据集
训练数据集。
训练轮次
表示完成全部训练数据集训练的次数。每个轮次都会遍历整个数据集一次。
批次大小
表示每个训练步骤中使用的样本数量。较大的批量可以提供更稳定的梯度,但可能会增加计算资源的使用和训练时间。
验证集图片保存最大数量
用于限制验证过程中模型预测错误(与标注不符)的图片保存数量,便于后续分析错误类型,同时避免存储空间浪费。
学习率
学习率决定了每次训练时模型参数更新的幅度。
权重衰减
通过在每次参数更新时对模型权重进行小幅度缩减,避免模型过度依赖特定数据。
Pangu-CV-物体检测-N-2.1.0
数据集
训练数据集。
训练轮数
表示完成全部训练数据集训练的次数。每个轮次都会遍历整个数据集一次。
热身轮次
表示在模型训练初期,逐步增加学习率到预设值的训练轮次,用于帮助模型在训练初期稳定收敛,避免大幅度的参数更新导致不稳定的学习过程。
热身阶段学习率
热身轮次中使用的初始学习率。
权重衰减
用于防止模型过拟合。在更新模型权重时,它会对模型参数施加惩罚,使得权重值趋于较小,从而提高模型的泛化性能。
优化器
选择用于训练模型的优化算法。这里选择的“sgd”是随机梯度下降法,它是深度学习中常用的优化算法之一,适合大规模数据集训练。
锚框的长边和短边的比例
定义检测物体锚框的长宽比。通过设置不同的长短比例,模型可以更好地适应多种尺寸和形状的物体。
锚框大小
指锚框的初始尺寸。锚框是物体检测中的一个关键概念,通过合理设置,可以帮助模型检测出多种尺寸的目标。
框重叠比例阈值
用于计算损失时区分正负样本的IoU阈值。当候选框与某个真实框的IoU大于等于该阈值时,该候选框被视为正样本;否则视为负样本。
滑动平滑训练
一种训练策略,通过在模型预测的标签上添加少量噪声来避免过拟合,常用于提升模型在测试数据集上的泛化能力。
极大值抑制阈值
在预测多个边界框时,用于去除高度重叠的边界框。此阈值控制相似的边界框保留的条件。
类别无关极大值抑制开关
决定是否在不同类别中应用极大值抑制阈值。
模型大小调整因子
用于模型抽取过程中,选择不同的模型因子来调节模型参数的多少。
输入模型图像宽度
用于控制模型输入图像分辨率的宽度,以此调节适应不用场景的模型识别能力。
输入模型图像高度
用于控制模型输入图像分辨率的高度,以此调节适应不用场景的模型识别能力。
模型保存轮数
模型训练时保存断点的间隔轮数。
Pangu-CV-图像分类-2.1.0
数据集
训练数据集。
训练轮数
表示完成全部训练数据集训练的次数。每个轮次都会遍历整个数据集一次。
每卡批次大小
表示每个训练步骤中使用的样本数量。较大的批量可以提供更稳定的梯度,但可能会增加计算资源的使用和训练时间。
分类模式
图像分类模式,支持单标签分类和多标签分类。
超参搜索
是否启用超参搜索获取最优的超参用于训练。
初始学习率
学习率决定了每次训练时模型参数更新的幅度。初始学习率是模型训练最开始阶段所设定的学习率,它是学习率的初始值。
超参搜索训练轮数
在超参搜索阶段,设置模型会经过几轮训练以找到最优的超参数组合。
- 参数填写完成后,单击“立即创建”。
- 创建好训练任务后,页面将返回“模型训练”页面,可随时查看当前任务的状态。
创建CV大模型微调任务
创建CV大模型微调任务步骤如下:
- 登录ModelArts Studio大模型开发平台首页,在“我的空间”模块,单击进入所需空间。
图2 我的空间
- 在左侧导航栏中选择“模型开发 > 模型训练”,单击右上角“创建训练任务”。
- 在“创建训练任务”页面,参考表3完成训练参数设置。
表3 CV大模型微调参数说明 参数分类
训练参数
说明
训练配置
选择模型
可以修改如下信息:
- 来源:选择“模型广场”或“我的资产”。
- 类型:选择“CV大模型”,并选择训练所用的基础模型和版本。
训练类型
选择“微调”。
训练目标
选择“全量微调”。
- 全量微调:在模型进行有监督微调时,对大模型的所有参数进行更新。这种方法通常能够实现最佳的模型性能,但需要消耗大量计算资源和时间,计算开销较大。
资源配置
计费模式
选择训练当前任务的计费模式。
训练单元
选择训练模型所需的训练单元。
当前展示的完成本次训练所需要的最低训练单元要求。
单实例训练单元数
选择单实例训练单元数。
实例数
选择实例数。
优先级
优先级相同的任务,先创建先执行。
训练参数
训练参数
模型训练参数,参考表4。
高级设置
checkpoints
checkpoints:在模型训练过程中,用于保存模型权重和状态的机制。
订阅提醒
订阅提醒
该功能开启后,平台支持两种订阅类型,预置通知和SMN通知。
预置通知:系统将在任务状态完成或失败时,通过短信或邮件将提醒发送给用户。
SMN通知:用户可在SMN云服务创建主题并维护订阅信息,在创建训练时选择对应主题以及需要通知的状态。训练状态范围:停止,失败,完成。用户手工触发的停止操作不通知用户,如果是资源到期的停止需通知用户。
发布模型
开启自动发布
开启自动发布后,模型训练完成的最终产物会自动发布为空间资产,以便对模型进行压缩、部署、评测等操作或共享给其他空间。
模型可见性
选择发布模型的可见范围。
本空间可见:发布的模型仅当前工作空间可见。
全空间可见:发布的模型在所有空间均可见。
模型名称
要发布的模型资产的名称。
描述(可选)
要发布的模型资产的相关描述,选填。
基本信息
名称
训练任务名称。
描述
训练任务描述。
表4 CV大模型微调参数说明 模型类型
训练参数
说明
Pangu-CV-物体检测-S-3.1.0
数据集
训练数据集。
训练轮次
表示完成全部训练数据集训练的次数。每个轮次都会遍历整个数据集一次。
单卡训练批处理大小
单卡批量处理大小,建议取值大于等于1。
单卡验证批处理大小
单卡验证批量处理大小,建议取值大于等于1。
图像分辨率
训练和推理的统一图像分辨率尺寸, 要求为32的倍数,不符合要求会自动转换为最近的32倍数尺寸。
学习率
学习率决定了每次训练时模型参数更新的幅度。取值为大于0,小于等于1, 取列表中的第一个值。
模型规格
不同模型规格,X参数量最大,L参数量适中,S参数量最小。
混合精度训练
是否使用混合精度训练开关,开启时可降低训练显存占用但存在溢出风险,关闭时可提高训练稳定性但显存和训练速度有所增加。
标签映射
是否增加标签映射功能,增加预训练模型的迁移效果。
Pangu-CV-物体检测-S-2.1.0
数据集
训练数据集。
训练轮次
表示完成全部训练数据集训练的次数。每个轮次都会遍历整个数据集一次。
批次大小
表示每个训练步骤中使用的样本数量。较大的批量可以提供更稳定的梯度,但可能会增加计算资源的使用和训练时间。
验证集图片保存最大数量
用于限制验证过程中模型预测错误(与标注不符)的图片保存数量,便于后续分析错误类型,同时避免存储空间浪费。
学习率
学习率决定了每次训练时模型参数更新的幅度。
权重衰减
通过在每次参数更新时对模型权重进行小幅度缩减,避免模型过度依赖特定数据。
图像分辨率
训练和推理时,指定统一图像分辨率尺寸
模型保存轮数
模型训练时保存断点的间隔轮数。
Pangu-CV-物体检测-N-2.1.0
数据集
训练数据集。
训练轮数
表示完成全部训练数据集训练的次数。每个轮次都会遍历整个数据集一次。
热身轮次
表示在模型训练初期,逐步增加学习率到预设值的训练轮次,用于帮助模型在训练初期稳定收敛,避免大幅度的参数更新导致不稳定的学习过程。
热身阶段学习率
热身轮次中使用的初始学习率。
权重衰减
用于防止模型过拟合。在更新模型权重时,它会对模型参数施加惩罚,使得权重值趋于较小,从而提高模型的泛化性能。
优化器
选择用于训练模型的优化算法。这里选择的“sgd”是随机梯度下降法,它是深度学习中常用的优化算法之一,适合大规模数据集训练。
锚框的长边和短边的比例
定义检测物体锚框的长宽比。通过设置不同的长短比例,模型可以更好地适应多种尺寸和形状的物体。
锚框大小
指锚框的初始尺寸。锚框是物体检测中的一个关键概念,通过合理设置,可以帮助模型检测出多种尺寸的目标。
框重叠比例阈值
用于计算损失时区分正负样本的IoU阈值。当候选框与某个真实框的IoU大于等于该阈值时,该候选框被视为正样本;否则视为负样本。
滑动平滑训练
一种训练策略,通过在模型预测的标签上添加少量噪声来避免过拟合,常用于提升模型在测试数据集上的泛化能力。
极大值抑制阈值
在预测多个边界框时,用于去除高度重叠的边界框。此阈值控制相似的边界框保留的条件。
类别无关极大值抑制开关
决定是否在不同类别中应用极大值抑制阈值。
模型大小调整因子
用于模型抽取过程中,选择不用的模型因子来调节模型参数的多少。
输入模型图像宽度
用于控制模型输入图像分辨率的宽度,以此调节适应不用场景的模型识别能力。
输入模型图像高度
用于控制模型输入图像分辨率的高度,以此调节适应不用场景的模型识别能力。
模型保存轮数
模型训练时保存断点的间隔轮数。
Pangu-CV-图像分类-2.1.0
数据集
训练数据集。
训练轮数
表示完成全部训练数据集训练的次数。每个轮次都会遍历整个数据集一次。
每卡批次大小
表示每个训练步骤中使用的样本数量。较大的批量可以提供更稳定的梯度,但可能会增加计算资源的使用和训练时间。
分类模式
图像分类模式,支持单标签分类和多标签分类。
超参搜索
是否启用超参搜索获取最优的超参用于训练。
初始学习率
学习率决定了每次训练时模型参数更新的幅度。初始学习率是模型训练最开始阶段所设定的学习率,它是学习率的初始值。
超参搜索训练轮数
在超参搜索阶段,设置模型会经过几轮训练以找到最优的超参数组合。
Pangu-CV-实例分割-1.1.0
数据集
训练数据集。
每卡批大小
单张卡上每次前向传播使用的样本数量,每卡批大小*节点数*每节点卡数需要小于训练数据量。
基础学习率
用于控制参数更新的步长,学习率过大可能会导致训练过程震荡不稳,无法收敛到最优解,学习率过小,可能会导致训练过程非常缓慢。
是否使用自定义L1预训练模型
是否使用自定义预训练模型进行训练。
自定义L1预训练模型目录
自定义预训练模型所在的OBS路径。
训练轮次
表示完成全部训练数据集训练的次数。每个轮次都会遍历整个数据集一次。
Pangu-CV-语义分割-2.1.0
数据集
训练数据集。
是否使用自定义L1预训练模型
是否使用自定义预训练模型进行训练,模型为用户与服务共建可联系CV算法技术支持获取。
自定义L1预训练模型的文件
自定义预训练模型所在的OBS路径。
训练轮次
表示完成全部训练数据集训练的次数。每个轮次都会遍历整个数据集一次。
批量处理大小
表示每个训练步骤中使用的样本数量。较大的批量可以提供更稳定的梯度,但可能会增加计算资源的使用和训练时间。
是否忽略类别0
该参数功能是为了忽略数据集类别0,具体做法是将类别0改为255,其余类别相应编号减1,同时decode head里将255设为ignore index,即不参与loss计算。
学习率
用于控制参数更新的步长,学习率过大可能会导致训练过程震荡不稳无法收敛到最优解,学习率过小可能会导致训练过程非常缓慢。
Pangu-CV-万物检测-V2
参数量
模型参数量规模分3亿和44亿两种参数规模。
通用数据集
通用数据集所在的obs路径。
通用专用数据比
通用数据集比专用数据集的比例。
训练轮次
表示完成全部训练数据集训练的次数。每个轮次都会遍历整个数据集一次。
批次大小
表示每个训练步骤中使用的样本数量。较大的批量可以提供更稳定的梯度,但可能会增加计算资源的使用和训练时间。
验证间隔
使用验证集验证模型效果的轮次间隔,越频繁,训练时间越长。
学习率
学习率决定了每次训练时模型参数更新的幅度。
权重衰减
通过在每次参数更新时对模型权重进行小幅度缩减,避免模型过度依赖特定数据。
学习率调度器
学习率调度器,支持常见调度器:cosine、reduceOnPlateau、multiStep,建议使用default即默认学习率调度器,300m参数量模型的默认调度器为reduceOnPlateau,4.4B参数量模型的默认调度器为multiStep。
优化器
优化器,支持两种常见优化器:AdamW、Adam,建议使用默认优化器AdamW。
图像大小
图像大小需要是32的倍数,图像越大训练推理越慢,占用显存越多。
Pangu-CV-视觉交互检测-V3
训练模式
训练模式:开集训练或者闭集训练。开集训练得到的模型支持任务文本或者视觉提示检测,可检测没有在训练集中出现过的类目。闭集检测同传统目标检测模型,仅可检测训练过的类目。闭集检测在固定类目上表现可能更优,用户可根据实际情况选择。
训练总epoch数
用于调节整个训练集被完整遍历的次数,与训练时间成正比,取值范围1~1000,默认值10(小数据集一般需要更多轮次的训练)。
每卡批大小
单卡batch size,训练设置的图像Resize尺寸越大所需要的显存越大,batch size则需要设置偏小。
昇腾910B典型设置:设置训练图像Resize尺寸640*640时,batch_size 可以设置为6,1024*768时 batch_size可以设置为4,2048*2048时仅能设置为1。
如果遇到报显存不足,请减小batch_size或者调小图像训练宽和高后再试。
学习率
用于控制参数更新的步长,学习率过大可能会导致训练过程震荡不稳,无法收敛到最优解,学习率过小,可能会导致训练过程非常缓慢。取值为大于0,小于等于1,建议使用默认学习率,0.0001。
微调参数规模
模型微调参数量规模,full代表全量参数更新,medium代表中等规模参数更新,small代表少量参数更新。当与预训练模型训练的数据分布接近,训练数据较少时可以减少更新参数量, 一般建议使用full效果更好。
图像宽度
训练时图片Resize后的宽度,Resize尺寸越大对小目标效果越好但是所需要显存更大,训练推理时延更慢。
图像高度
训练时图片Resize后的高度,Resize尺寸越大对小目标效果越好但是所需要显存更大,训练推理时延更慢。
梯度累加次数
训练过程经过多少次batch 进行梯度累加回传更新模型参数,通过增加训练epoch,可以实现在不增加显存的情况下 达到更大的batch size效果。等价
每卡批大小= 设置的每卡批大小 * 梯度累加次数。 相应的epoch 数也应该扩大。
学习率调度器
学习率调度器决定了学习率动态调整的规则,支持以下常见学习率调度器:cosine和multistep,建议使用默认multistep。
优化器
优化器用于根据损失函数对模型参数进行更新,控制收敛方向和速度,支持三种常见优化器:AdamW、SGD、Adam,建议使用默认优化器AdamW。
权重衰减
用于控制参数稀疏性,防止过拟合,不建议修改。
- 参数填写完成后,单击“立即创建”。
- 创建好训练任务后,页面将返回“模型训练”页面,可随时查看当前任务的状态。