云服务器内容精选

  • ModelArts中如何实现断点续训练和增量训练 在ModelArts训练中实现断点续训练或增量训练,建议使用“训练输出”功能。 在创建训练作业时,设置训练“输出”参数为“train_url”,在指定的训练输出的数据存储位置中保存checkpoint,且“预下载至本地目录”选择“下载”。选择预下载至本地目录时,系统在训练作业启动前,自动将数据存储位置中的checkpoint文件下载到训练容器的本地目录。 图1 训练输出设置 断点续训练建议和训练容错检查(即自动重启)功能同时使用。在创建训练作业页面,开启“自动重启”开关。训练环境预检测失败、或者训练容器硬件检测故障、或者训练作业失败时会自动重新下发并运行训练作业。
  • 什么是断点续训练和增量训练 断点续训练是指因为某些原因(例如容错重启、资源抢占、作业卡死等)导致训练作业还未完成就被中断,下一次训练可以在上一次的训练基础上继续进行。这种方式对于需要长时间训练的模型而言比较友好。 增量训练是指增加新的训练数据到当前训练流程中,扩展当前模型的知识和能力。 断点续训练和增量训练均是通过checkpoint机制实现。 checkpoint的机制是:在模型训练的过程中,不断地保存训练结果(包括但不限于EPOCH、模型权重、优化器状态、调度器状态)。即便模型训练中断,也可以基于checkpoint接续训练。 当需要从训练中断的位置接续训练,只需要加载checkpoint,并用checkpoint信息初始化训练状态即可。用户需要在代码里加上reload ckpt的代码,使能读取前一次训练保存的预训练模型。
  • 检测规则 卡死检测主要是通过监控作业进程的状态和资源利用率来判定作业是否卡死。会启动一个进程来周期性地监控上述两个指标的变化情况。 进程状态:只要训练作业中存在进程IO有变化,进入下一个检测周期。如果在多个检测周期内,作业所有进程IO都没有变化,则进入资源利用率检测阶段。 资源利用率:在作业进程IO没有变化的情况下,采集一定时间段内的GPU利用率,并根据这段时间内的GPU利用率的方差和中位数来判断资源使用率是否有变化。如果没有变化,则判定作业卡死。