云服务器内容精选

  • (可选)选择训练模式 当训练作业的算法框架选用的是预置框架的MindSpore类引擎、资源池类型选用的是Ascend资源时,则支持选择训练模式。ModelArts提供了3种训练模式供用户选择,支持根据实际场景获取不同的诊断信息,详细使用请参见训练模式选择。 普通模式:默认训练场景。 高性能模式:最小化调测信息,可以提升运行速度,适合于网络稳定并追求高性能的场景。 故障诊断模式:收集更多的信息用于定位,适合于执行出现问题需要收集故障信息进行定位的场景。此模式提供故障诊断,用户可以根据实际需求选择诊断类别。
  • 配置训练参数 训练过程中可以从OBS桶或者数据集中获取输入数据进行模型训练,训练输出的结果也支持存储至OBS桶中。创建训练作业时可以参考表4配置输入、输出、超参、环境变量等参数。 创建训练作业时选择的创建方式不同,训练作业的输入、输出和超参显示不同。如果参数值置灰,即表示该参数已经在算法代码中配置了且不支持修改。 表4 配置训练参数 参数名称 子参数 说明 输入 参数名称 算法代码需要通过“输入”的“参数名称”去读取训练的输入数据。 建议设置为“data_url”。训练输入参数要与所选算法的“输入”参数匹配,请参见创建算法时的表2。 数据集 单击“数据集”,在ModelArts数据集列表中勾选目标数据集并选择对应的版本。 训练启动时,系统将自动下载输入路径中的数据到训练运行容器。 说明: ModelArts数据管理模块在重构升级中,对未使用过数据管理的用户不可见。建议新用户将训练数据存放至OBS桶中使用。 数据存储位置 单击“数据存储位置”,从OBS桶中选择训练输入数据的存储位置。 训练启动时,系统将自动下载输入路径中的数据到训练运行容器。 获取方式 以参数名称为“data_path”的训练输入为例,说明获取方式的作用。 当参数的“获取方式”为“超参”时,可以参考如下代码来读取数据。 import argparse parser = argparse.ArgumentParser() parser.add_argument('--data_path') args, unknown = parser.parse_known_args() data_path = args.data_path 当参数的“获取方式”为“环境变量”时,可以参考如下代码来读取数据。 import os data_path = os.getenv("data_path", "") 输出 参数名称 算法代码需要通过“输出”的“参数名称”去读取训练的输出目录。 建议设置为“train_url”。训练输出参数要与所选算法的“输出”参数匹配,请参见创建算法时的表3。 数据存储位置 单击“数据存储位置”,从OBS桶中选择训练输出数据的存储位置。训练过程中,系统将自动从训练容器的本地代码目录下同步文件到数据存储位置。 说明: 数据存储位置仅支持OBS路径。为避免数据存储冲突,建议选择一个空目录用作“数据存储位置”。 获取方式 以参数名称为“train_url”的训练输出为例,说明获取方式的作用。 当参数的“获取方式”为“超参”时,可以参考如下代码来读取数据。 import argparse parser = argparse.ArgumentParser() parser.add_argument('--train_url') args, unknown = parser.parse_known_args() train_url = args.train_url 当参数的“获取方式”为“环境变量”时,可以参考如下代码来读取数据。 import os train_url = os.getenv("train_url", "") 预下载至本地目录 选择是否将输出目录下的文件预下载至本地目录。 不下载:表示启动训练作业时不会将输出数据的存储位置中的文件下载到训练容器的本地代码目录中。 下载:表示系统会在启动训练作业时自动将输出数据的存储位置中的所有文件下载到训练容器的本地代码目录中。下载时间会随着文件变大而变长,为了防止训练时间过长,请及时清理训练容器的本地代码目录中的无用文件。如果要使用断点续训练和增量训练,则必须选择“下载”。 超参 - 超参用于训练调优。此参数由选择的算法决定,如果在算法中已经定义了超参,则此处会显示算法中所有的超参。 超参支持修改和删除,状态取决于算法中的超参“约束”设置,详情请参见定义超参。 说明: 为保证数据安全,请勿输入敏感信息,例如明文密码。 环境变量 - 根据业务需求增加环境变量。训练容器中预置的环境变量请参见查看训练容器环境变量。 说明: 为保证数据安全,请勿输入敏感信息,例如明文密码。 自动重启 - 打开开关后,可以设置重启次数和是否启用无条件自动重启。 打开自动重启开关后,当由于环境问题导致训练作业异常时,系统将自动修复异常或隔离节点,并重启训练作业,提高训练成功率。为了避免丢失训练进度、浪费算力,开启此功能前请确认代码已适配断点续训,操作指导请参见断点续训练和增量训练。 重启次数的取值范围是1~128,缺省值为3。创建训练后不支持修改重启次数,请合理设置次数。 勾选无条件自动重启后,只要系统检测到训练异常,就无条件重启训练作业。为了避免无效重启浪费算力资源,系统最多只支持连续无条件重启3次。 当训练过程中触发了自动重启,则系统会记录重启信息,在训练作业详情页可以查看故障恢复详情,具体请参见查看故障恢复详情。
  • 后续操作 当创建训练作业的参数配置完成后,单击“提交”,在信息确认页面单击“确定”,提交创建训练作业任务。 训练作业一般需要运行一段时间,前往训练作业列表,可以查看训练作业的基本情况。 在训练作业列表中,刚创建的训练作业状态为“等待中”。 当训练作业的状态变为“已完成”时,表示训练作业运行结束,其生成的模型将存储至对应的“输出”目录中。 当训练作业的状态变为“运行失败”或“异常”时,可以单击训练作业的名称进入详情页面,通过查看日志等手段处理问题。 训练作业运行过程中将按照选择的资源进行计费。
  • 选择创建方式(使用预置镜像) 如果选择使用预置镜像创建训练作业,则参考表2选择训练作业的创建方式。 表2 创建训练作业的创建方式(使用预置镜像) 参数名称 说明 创建方式 必选,选择“自定义算法”。 启动方式 必选,选择“预置框架”,并选择训练作业要使用的预置框架引擎和引擎版本。 如果引擎版本选择“自定义”,则需要配置“镜像”参数,选择 自定义镜像 用于训练作业。 镜像 仅当预置框架的引擎版本选择“自定义”时才显示该参数,且是必填参数。 容器镜像地址的填写支持如下方式。 选择自有镜像或他人共享的镜像:单击右边的“选择”,从容器镜像中选择用于训练的容器镜像。所需镜像需要提前上传到SWR服务中。 选择公开镜像:直接输入SWR服务中公开镜像的地址。地址直接填写“组织名称/镜像名称:版本名称”,不需要带 域名 信息,系统会自动拼接域名地址。 代码目录 必填,选择训练代码文件所在的OBS目录。 需要提前将代码上传至OBS桶中,目录内文件总大小要小于或等于5GB,文件数要小于或等于1000个,文件深度要小于或等于32。 训练代码文件会在训练作业启动的时候被系统自动下载到训练容器的“${MA_JOB_DIR}/demo-code”目录中,“demo-code”为存放代码目录的最后一级OBS目录。例如,“代码目录”选择的是“/test/code”,则训练代码文件会被下载到训练容器的“${MA_JOB_DIR}/code”目录中。 启动文件 必填,选择代码目录中训练作业的Python启动脚本。 ModelArts只支持使用Python语言编写的启动文件,因此启动文件必须以“.py”结尾。 本地代码目录 指定训练容器的本地目录,启动训练时系统会将代码目录下载至此目录。 此参数可选,默认本地代码目录为“/home/ma-user/modelarts/user-job-dir”。 工作目录 训练时,系统会自动cd到此目录下执行启动文件。
  • 前提条件 已经将用于训练作业的数据上传至OBS目录。 已经在OBS目录下创建了至少1个空的文件夹,用于存储训练输出的内容。 ModelArts不支持加密的OBS桶,创建OBS桶时,请勿开启桶加密。 由于训练作业运行需消耗资源,为了避免训练失败请确保账户未欠费。 确保使用的OBS目录与ModelArts在同一区域。 检查是否配置了访问授权。如果未配置,请参见使用委托授权完成操作。 (可选)如果使用已有算法创建训练作业,需要确认“算法管理”中已准备好算法,具体操作请参见准备算法简介。 (可选)如果使用自定义镜像创建训练作业,需要上传镜像到SWR服务中。
  • 操作流程介绍 创建训练作业的操作步骤如下所示。 进入创建训练作业页面。 配置训练作业基本信息。 根据不同的算法来源,选择不同的训练作业创建方式。 使用预置镜像创建训练作业:选择创建方式(使用预置镜像) 使用自定义镜像创建训练作:选择创建方式(使用自定义镜像) 使用已有算法创建训练作业:选择创建方式(使用我的算法) 使用订阅算法创建训练作业:选择创建方式(使用订阅算法) 配置训练参数:配置训练作业的输入、输出、超参、环境变量等参数。 根据需要选择不同的资源池用于训练作业,推荐使用专属资源池,两者的差异说明请参见专属资源池和公共资源池的能力差异。 配置资源池(公共资源池) 配置资源池(专属资源池) (可选)选择训练模式:当训练作业的算法框架选用的是预置框架的MindSpore类引擎、资源池类型选用的是Ascend资源时,则支持选择训练模式。 (可选)设置标签:如果需要对训练作业进行资源分组管理,可以设置标签。 后续操作。
  • 选择创建方式(使用自定义镜像) 如果选择使用自定义镜像创建训练作业,则参考表3选择训练作业的创建方式。 表3 创建训练作业的创建方式(使用自定义镜像) 参数名称 说明 创建方式 必选,选择“自定义算法”。 启动方式 必选,选择“自定义”。 镜像 必填,填写容器镜像的地址。 容器镜像地址的填写支持如下方式。 选择自有镜像或他人共享的镜像:单击右边的“选择”,从容器镜像中选择用于训练的容器镜像。所需镜像需要提前上传到SWR服务中。 选择公开镜像:直接输入SWR服务中公开镜像的地址。地址直接填写“组织名称/镜像名称:版本名称”,不需要带域名信息,系统会自动拼接域名地址。 代码目录 选择训练代码文件所在的OBS目录。如果自定义镜像中不含训练代码则需要配置该参数,如果自定义镜像中已包含训练代码则不需要配置。 需要提前将代码上传至OBS桶中,目录内文件总大小要小于或等于5GB,文件数要小于或等于1000个,文件深度要小于或等于32。 训练代码文件会在训练作业启动的时候被系统自动下载到训练容器的“${MA_JOB_DIR}/demo-code”目录中,“demo-code”为存放代码目录的最后一级OBS目录。例如,“代码目录”选择的是“/test/code”,则训练代码文件会被下载到训练容器的“${MA_JOB_DIR}/code”目录中。 运行用户ID 容器运行时的用户ID,该参数为选填参数,建议使用默认值1000。 如果需要指定uid,则uid数值需要在规定范围内,不同资源池的uid范围如下: 公共资源池:1000-65535 专属资源池:0-65535 启动命令 必填,镜像的启动命令。 运行训练作业时,当“代码目录”下载完成后,“启动命令”会被自动执行。 如果训练启动脚本用的是py文件,例如“train.py”,则启动命令如下所示。 python ${MA_JOB_DIR}/demo-code/train.py 如果训练启动脚本用的是sh文件,例如“main.sh”,则启动命令如下所示。 bash ${MA_JOB_DIR}/demo-code/main.sh 启动命令支持使用“;”和“&&”拼接多条命令,命令中的“demo-code”为存放代码目录的最后一级OBS目录,以实际情况为准。 说明: 为保证数据安全,请勿输入敏感信息,例如明文密码。 本地代码目录 指定训练容器的本地目录,启动训练时系统会将代码目录下载至此目录。 此参数可选,默认本地代码目录为“/home/ma-user/modelarts/user-job-dir”。 工作目录 训练时,系统会自动cd到此目录下执行启动文件。