网络
虚拟私有云 VPC
弹性公网IP EIP
弹性负载均衡 ELB
NAT网关 NAT
云专线 DC
虚拟专用网络 VPN
云连接 CC
VPC终端节点 VPCEP
企业路由器 ER
企业交换机 ESW
全球加速 GA
企业连接 EC
云原生应用网络 ANC
安全与合规
安全技术与应用
Web应用防火墙 WAF
企业主机安全 HSS
云防火墙 CFW
安全云脑 SecMaster
DDoS防护 AAD
数据加密服务 DEW
数据库安全服务 DBSS
云堡垒机 CBH
数据安全中心 DSC
云证书管理服务 CCM
威胁检测服务 MTD
态势感知 SA
认证测试中心 CTC
边缘安全 EdgeSec
应用中间件
微服务引擎 CSE
分布式消息服务Kafka版
分布式消息服务RabbitMQ版
分布式消息服务RocketMQ版
API网关 APIG
分布式缓存服务 DCS
多活高可用服务 MAS
事件网格 EG
管理与监管
统一身份认证服务 IAM
消息通知服务 SMN
云监控服务 CES
应用运维管理 AOM
应用性能管理 APM
云日志服务 LTS
云审计服务 CTS
标签管理服务 TMS
配置审计 Config
应用身份管理服务 OneAccess
资源访问管理 RAM
组织 Organizations
资源编排服务 RFS
优化顾问 OA
IAM 身份中心
云运维中心 COC
资源治理中心 RGC
解决方案
高性能计算 HPC
SAP
混合云灾备
开天工业工作台 MIW
Haydn解决方案工厂
数字化诊断治理专家服务
云生态
云商店
合作伙伴中心
华为云开发者学堂
华为云慧通差旅
开发与运维
软件开发生产线 CodeArts
需求管理 CodeArts Req
流水线 CodeArts Pipeline
代码检查 CodeArts Check
编译构建 CodeArts Build
部署 CodeArts Deploy
测试计划 CodeArts TestPlan
制品仓库 CodeArts Artifact
移动应用测试 MobileAPPTest
CodeArts IDE Online
开源镜像站 Mirrors
性能测试 CodeArts PerfTest
应用管理与运维平台 ServiceStage
云应用引擎 CAE
开源治理服务 CodeArts Governance
华为云Astro轻应用
CodeArts IDE
Astro工作流 AstroFlow
代码托管 CodeArts Repo
漏洞管理服务 CodeArts Inspector
联接 CodeArtsLink
软件建模 CodeArts Modeling
Astro企业应用 AstroPro
CodeArts盘古助手
华为云Astro大屏应用
计算
弹性云服务器 ECS
Flexus云服务
裸金属服务器 BMS
云手机服务器 CPH
专属主机 DeH
弹性伸缩 AS
镜像服务 IMS
函数工作流 FunctionGraph
云耀云服务器(旧版)
VR云渲游平台 CVR
Huawei Cloud EulerOS
云化数据中心 CloudDC
网络
虚拟私有云 VPC
弹性公网IP EIP
弹性负载均衡 ELB
NAT网关 NAT
云专线 DC
虚拟专用网络 VPN
云连接 CC
VPC终端节点 VPCEP
企业路由器 ER
企业交换机 ESW
全球加速 GA
企业连接 EC
云原生应用网络 ANC
CDN与智能边缘
内容分发网络 CDN
智能边缘云 IEC
智能边缘平台 IEF
CloudPond云服务
安全与合规
安全技术与应用
Web应用防火墙 WAF
企业主机安全 HSS
云防火墙 CFW
安全云脑 SecMaster
DDoS防护 AAD
数据加密服务 DEW
数据库安全服务 DBSS
云堡垒机 CBH
数据安全中心 DSC
云证书管理服务 CCM
威胁检测服务 MTD
态势感知 SA
认证测试中心 CTC
边缘安全 EdgeSec
大数据
MapReduce服务 MRS
数据湖探索 DLI
表格存储服务 CloudTable
可信智能计算服务 TICS
推荐系统 RES
云搜索服务 CSS
数据可视化 DLV
数据接入服务 DIS
数据仓库服务 GaussDB(DWS)
数据治理中心 DataArts Studio
湖仓构建 LakeFormation
智能数据洞察 DataArts Insight
应用中间件
微服务引擎 CSE
分布式消息服务Kafka版
分布式消息服务RabbitMQ版
分布式消息服务RocketMQ版
API网关 APIG
分布式缓存服务 DCS
多活高可用服务 MAS
事件网格 EG
开天aPaaS
应用平台 AppStage
开天企业工作台 MSSE
开天集成工作台 MSSI
API中心 API Hub
云消息服务 KooMessage
交换数据空间 EDS
云地图服务 KooMap
云手机服务 KooPhone
组织成员账号 OrgID
云空间服务 KooDrive
管理与监管
统一身份认证服务 IAM
消息通知服务 SMN
云监控服务 CES
应用运维管理 AOM
应用性能管理 APM
云日志服务 LTS
云审计服务 CTS
标签管理服务 TMS
配置审计 Config
应用身份管理服务 OneAccess
资源访问管理 RAM
组织 Organizations
资源编排服务 RFS
优化顾问 OA
IAM 身份中心
云运维中心 COC
资源治理中心 RGC
区块链
区块链服务 BCS
数字资产链 DAC
华为云区块链引擎服务 HBS
解决方案
高性能计算 HPC
SAP
混合云灾备
开天工业工作台 MIW
Haydn解决方案工厂
数字化诊断治理专家服务
价格
成本优化最佳实践
专属云商业逻辑
云生态
云商店
合作伙伴中心
华为云开发者学堂
华为云慧通差旅
其他
管理控制台
消息中心
产品价格详情
系统权限
客户关联华为云合作伙伴须知
公共问题
宽限期保留期
奖励推广计划
活动
云服务信任体系能力说明
开发与运维
软件开发生产线 CodeArts
需求管理 CodeArts Req
流水线 CodeArts Pipeline
代码检查 CodeArts Check
编译构建 CodeArts Build
部署 CodeArts Deploy
测试计划 CodeArts TestPlan
制品仓库 CodeArts Artifact
移动应用测试 MobileAPPTest
CodeArts IDE Online
开源镜像站 Mirrors
性能测试 CodeArts PerfTest
应用管理与运维平台 ServiceStage
云应用引擎 CAE
开源治理服务 CodeArts Governance
华为云Astro轻应用
CodeArts IDE
Astro工作流 AstroFlow
代码托管 CodeArts Repo
漏洞管理服务 CodeArts Inspector
联接 CodeArtsLink
软件建模 CodeArts Modeling
Astro企业应用 AstroPro
CodeArts盘古助手
华为云Astro大屏应用
存储
对象存储服务 OBS
云硬盘 EVS
云备份 CBR
高性能弹性文件服务 SFS Turbo
弹性文件服务 SFS
存储容灾服务 SDRS
云硬盘备份 VBS
云服务器备份 CSBS
数据快递服务 DES
云存储网关 CSG
专属分布式存储服务 DSS
数据工坊 DWR
地图数据 MapDS
键值存储服务 KVS
容器
云容器引擎 CCE
云容器实例 CCI
容器镜像服务 SWR
云原生服务中心 OSC
应用服务网格 ASM
华为云UCS
数据库
云数据库 RDS
数据复制服务 DRS
文档数据库服务 DDS
分布式数据库中间件 DDM
云数据库 GaussDB
云数据库 GeminiDB
数据管理服务 DAS
数据库和应用迁移 UGO
云数据库 TaurusDB
人工智能
AI开发平台ModelArts
华为HiLens
图引擎服务 GES
图像识别 Image
文字识别 OCR
自然语言处理 NLP
内容审核 Moderation
图像搜索 ImageSearch
医疗智能体 EIHealth
企业级AI应用开发专业套件 ModelArts Pro
人脸识别服务 FRS
对话机器人服务 CBS
语音交互服务 SIS
人证核身服务 IVS
视频智能分析服务 VIAS
城市智能体
自动驾驶云服务 Octopus
盘古大模型 PanguLargeModels
IoT物联网
设备接入 IoTDA
全球SIM联接 GSL
IoT数据分析 IoTA
路网数字化服务 DRIS
IoT边缘 IoTEdge
设备发放 IoTDP
企业应用
域名注册服务 Domains
云解析服务 DNS
企业门户 EWP
ICP备案
商标注册
华为云WeLink
华为云会议 Meeting
隐私保护通话 PrivateNumber
语音通话 VoiceCall
消息&短信 MSGSMS
云管理网络
SD-WAN 云服务
边缘数据中心管理 EDCM
云桌面 Workspace
应用与数据集成平台 ROMA Connect
ROMA资产中心 ROMA Exchange
API全生命周期管理 ROMA API
政企自服务管理 ESM
视频
实时音视频 SparkRTC
视频直播 Live
视频点播 VOD
媒体处理 MPC
视频接入服务 VIS
数字内容生产线 MetaStudio
迁移
主机迁移服务 SMS
对象存储迁移服务 OMS
云数据迁移 CDM
迁移中心 MGC
专属云
专属计算集群 DCC
开发者工具
SDK开发指南
API签名指南
DevStar
华为云命令行工具服务 KooCLI
Huawei Cloud Toolkit
CodeArts API
云化转型
云架构中心
云采用框架
用户服务
账号中心
费用中心
成本中心
资源中心
企业管理
工单管理
客户运营能力
国际站常见问题
支持计划
专业服务
合作伙伴支持计划
我的凭证
华为云公共事业服务云平台
工业软件
工业数字模型驱动引擎
硬件开发工具链平台云服务
工业数据转换引擎云服务

创建生产训练作业

更新时间:2024-12-16 GMT+08:00
分享

模型训练是一个不断迭代和优化模型权重的过程。ModelArts的训练模块支持创建训练作业、查看训练情况以及管理训练版本。通过模型训练试验模型结构、数据和超参的各种组合,便于找到最佳的模型结构和权重。

创建生产环境的训练作业有2种方式:

  • 通过ModelArts Standard控制台的方式创建生产环境的训练作业,详细操作请参考本章节以下内容。
  • 通过ModelArts提供的API接口创建生产环境的训练作业,详细操作请参见使用API创建训练作业

前提条件

  • 已经将用于训练作业的数据上传至OBS目录。
  • 已经在OBS目录下创建了至少1个空的文件夹,用于存储训练输出的内容。
    说明:

    ModelArts不支持加密的OBS桶,创建OBS桶时,请勿开启桶加密。

  • 由于训练作业运行需消耗资源,为了避免训练失败请确保账户未欠费。
  • 确保使用的OBS目录与ModelArts在同一区域。
  • 检查是否配置了访问授权。如果未配置,请参见配置ModelArts Standard访问授权完成操作
  • 已经准备好训练算法,具体操作请参见创建算法

操作流程介绍

创建训练作业的操作步骤如下所示。

  1. 进入创建训练作业页面
  2. 配置训练作业基本信息
  3. 根据不同的算法来源,选择不同的训练作业创建方式。

  4. 配置训练参数:配置训练作业的输入、输出、超参、环境变量等参数。
  5. 根据需要选择不同的资源池用于训练作业,推荐使用专属资源池,两者的差异说明请参见专属资源池和公共资源池的能力差异

  6. (可选)选择训练模式:当训练作业的算法框架选用的是预置框架的MindSpore类引擎、资源池类型选用的是Ascend资源时,则支持选择训练模式。
  7. (可选)设置标签:如果需要对训练作业进行资源分组管理,可以设置标签。
  8. 后续操作

进入创建训练作业页面

  1. 登录ModelArts管理控制台。
  2. 在左侧导航栏中,选择模型训练 > 训练作业进入训练作业列表。
  3. 单击“创建训练作业”,进入创建训练作业页面。

配置训练作业基本信息

在创建训练作业页面填写训练作业基本信息。

表1 创建训练作业的基本信息

参数名称

说明

名称

必填,训练作业的名称。

系统会自动生成一个名称,可以根据业务需求重新命名,命名规则如下:

  • 支持1~64位字符。
  • 可以包含大小写字母、数字、中划线(-)或下划线(_)。

描述

训练作业的简介,便于在训练作业列表了解作业信息。

选择创建方式(使用我的算法)

如果选择使用已有算法创建训练作业,则“创建方式”选择“我的算法”,在算法列表中选择算法。如果没有满足条件的算法,也可以新建算法,具体操作请参见创建算法

选择创建方式(使用订阅算法)

如果选择使用订阅算法创建训练作业,则“创建方式”选择“订阅算法”,在算法列表中选择算法。如果没有满足条件的算法,也可以前往AI Gallery中订阅算法。

  1. 登录AI Gallery
  2. 选择“模型”,进入模型列表页面,该页面展示了所有共享的模型,包括ModelArts算法。
  3. 单击目标算法进入详情页面。
  4. 在详情页面选择“训练 > ModelArts”,在弹出的“选择ModelArts的云服务区域”页面选择需要使用算法的区域,单击“确认”跳转至ModelArts控制台的“算法管理 > 订阅算法”页面。

    订阅后的算法,将自动展现在“算法管理 > 订阅算法”页面中。

选择创建方式(自定义算法)

如果在算法管理中已经创建算法,此处建议选择““我的算法””页签中已经准备好的算法。如果没有已经准备好的算法,此处可以选择“自定义算法”创建方式。如果选择使用自定义算法创建训练作业,则参考表2选择训练作业的创建方式。
表2 创建训练作业的创建方式(使用自定义算法)

参数名称

说明

创建方式

必选,选择“自定义算法”

启动方式

必选,选择“预置框架”,并选择训练作业要使用的预置框架引擎和引擎版本。

如果引擎版本选择“自定义”,则需要配置“镜像”参数,选择自定义镜像用于训练作业。

镜像

仅当预置框架的引擎版本选择“自定义”时才显示该参数,且是必填参数。

容器镜像地址的填写支持如下方式。
  • 选择自有镜像或他人共享的镜像:单击右边的“选择”,从容器镜像中选择用于训练的容器镜像。所需镜像需要提前上传到SWR服务中。
  • 选择公开镜像:直接输入SWR服务中公开镜像的地址。地址直接填写“组织名称/镜像名称:版本名称”,不需要带域名信息,系统会自动拼接域名地址。

代码来源

选择训练代码来源。

  • 对象OBS存储:如果训练代码存放在OBS中,则选择“对象OBS存储”
  • 文件存储:如果训练代码存放在文件存储中,则选择“文件存储”

代码目录

仅当“代码来源”选择“对象OBS存储”时才显示该参数。

必填,选择训练代码文件所在的OBS目录。

  • 需要提前将代码上传至OBS桶中,目录内文件总大小要小于或等于5GB,文件数要小于或等于1000个,文件深度要小于或等于32。
  • 训练代码文件会在训练作业启动的时候被系统自动下载到训练容器的“${MA_JOB_DIR}/demo-code”目录中,“demo-code”为存放代码目录的最后一级OBS目录。例如,“代码目录”选择的是“/test/code”,则训练代码文件会被下载到训练容器的“${MA_JOB_DIR}/code”目录中。

启动文件

必填,选择代码目录中训练作业的Python启动脚本。

ModelArts只支持使用Python语言编写的启动文件,因此启动文件必须以“.py”结尾。

本地代码目录

仅当“代码来源”选择“对象OBS存储”时才显示该参数。

指定训练容器的本地目录,启动训练时系统会将代码目录下载至此目录。

此参数可选,默认本地代码目录为“/home/ma-user/modelarts/user-job-dir”

工作目录

训练时,系统会自动cd到此目录下执行启动文件。

选择预置框架+自定义时,该功能的后台行为与直接基于预置框架运行训练作业相同,例如:
  • 系统将会自动注入一系列环境变量
    PATH=${MA_HOME}/anaconda/bin:${PATH}
    LD_LIBRARY_PATH=${MA_HOME}/anaconda/lib:${LD_LIBRARY_PATH}
    PYTHONPATH=${MA_JOB_DIR}:${PYTHONPATH}
  • 您选择的启动文件将会被系统自动以python命令直接启动,因此请确保镜像中的Python命令为您预期的Python环境。注意到系统自动注入的PATH环境变量,您可以参考下述命令确认训练作业最终使用的Python版本:
    export MA_HOME=/home/ma-user; docker run --rm {image} ${MA_HOME}/anaconda/bin/python -V
    docker run --rm {image} $(which python) -V
  • 系统将会自动添加预置框架关联的超参

选择创建方式(使用自定义镜像)

如果选择使用自定义镜像创建训练作业,则参考表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目录,以实际情况为准。

说明:

为保证数据安全,请勿输入敏感信息,例如明文密码。

本地代码目录

仅当“代码来源”选择“对象OBS存储”时才显示该参数。

指定训练容器的本地目录,启动训练时系统会将代码目录下载至此目录。

此参数可选,默认本地代码目录为“/home/ma-user/modelarts/user-job-dir”

工作目录

训练时,系统会自动cd到此目录下执行启动文件。

训练支持的自定义镜像使用说明请参考自定义镜像的启动命令规范

配置训练参数

训练过程中可以从OBS桶或者数据集中获取输入数据进行模型训练,训练输出的结果也支持存储至OBS桶中。创建训练作业时可以参考表4配置输入、输出、超参、环境变量等参数。

说明:

创建训练作业时选择的创建方式不同,训练作业的输入、输出和超参显示不同。如果参数值置灰,即表示该参数已经在算法代码中配置了且不支持修改。

表4 配置训练参数

参数名称

子参数

说明

输入

参数名称

算法代码需要通过“输入”“参数名称”去读取训练的输入数据。

建议设置为“data_url”。训练输入参数要与所选算法的“输入”参数匹配,请参见创建算法时的表4

数据集

单击“数据集”,在ModelArts数据集列表中勾选目标数据集并选择对应的版本。

训练启动时,系统将自动下载输入路径中的数据到训练运行容器。

说明:

ModelArts数据管理模块在重构升级中,对未使用过数据管理的用户不可见。建议新用户将训练数据存放至OBS桶中使用。

数据存储位置

单击“数据存储位置”,从OBS桶中选择训练输入数据的存储位置。文件总大小要小于或等于10GB,文件数要小于或等于1000个,单个文件大小要小于或等于1GB。

训练启动时,系统将自动下载输入路径中的数据到训练运行容器。

获取方式

以参数名称为“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”。训练输出参数要与所选算法的“输出”参数匹配,请参见创建算法时的表5

数据存储位置

单击“数据存储位置”,从OBS桶中选择训练输出数据的存储位置。文件总大小要小于或等于1GB,文件数要小于或等于128个,单个文件大小要小于或等于128MB。

训练过程中,系统将自动从训练容器的本地代码目录下同步文件到数据存储位置。

说明:

数据存储位置仅支持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", "")

预下载至本地目录

选择是否将输出目录下的文件预下载至本地目录。

  • 不下载:表示启动训练作业时不会将输出数据的存储位置中的文件下载到训练容器的本地代码目录中。
  • 下载:表示系统会在启动训练作业时自动将输出数据的存储位置中的所有文件下载到训练容器的本地代码目录中。下载时间会随着文件变大而变长,为了防止训练时间过长,请及时清理训练容器的本地代码目录中的无用文件。如果要使用设置断点续训练,则必须选择“下载”

超参

-

超参用于训练调优。此参数由选择的算法决定,如果在算法中已经定义了超参,则此处会显示算法中所有的超参。

超参支持修改和删除,状态取决于算法中的超参“约束”设置,详情请参见表6

单击“本地上传”可以本地批量导入超参,需要按模板填写超参且总数不能超过100条,否则会导入失败。

说明:

为保证数据安全,请勿输入敏感信息,例如明文密码。

环境变量

-

根据业务需求增加环境变量。训练容器中预置的环境变量请参见管理训练容器环境变量

单击“本地上传”可以本地批量导入环境变量,需要按模板填写环境变量且总数不能超过100条,否则会导入失败。

说明:

为保证数据安全,请勿输入敏感信息,例如明文密码。

自动重启

-

打开开关后,可以设置重启次数和是否启用无条件自动重启。

打开自动重启开关后,当由于环境问题导致训练作业异常时,系统将自动修复异常或隔离节点,并重启训练作业,提高训练成功率。为了避免丢失训练进度、浪费算力,开启此功能前请确认代码已适配断点续训,操作指导请参见设置断点续训练

“重启次数”的取值范围是1~128,缺省值为3。创建训练后不支持修改重启次数,请合理设置次数。

勾选“无条件自动重启”后,只要系统检测到训练异常,就无条件重启训练作业。为了避免无效重启浪费算力资源,系统最多只支持连续无条件重启3次。

系统支持自动监控作业进程的状态和资源利用率来判定作业是否卡死,开启“作业卡死重启”开关后,支持将标记为卡死的作业进行进程级自动重启,以提高资源使用率。因系统无法核实代码逻辑且检测存在周期性,卡死检测存在一定的误报概率,开启开关即表示接受误报率。为了避免无效重启浪费算力资源,系统最多只支持连续作业卡死重启3次。

当训练过程中触发了自动重启,则系统会记录重启信息,在训练作业详情页可以查看故障恢复详情,具体请参见训练作业重调度

配置资源池(公共资源池)

如果使用公共资源池创建训练作业,则参考表5配置公共资源池。
表5 创建训练作业的公共资源池

参数名称

说明

资源池

必选,选择“公共资源池”

资源类型

必选,选择训练需要的资源类型。当训练代码中已定义资源类型时,则根据算法的约束条件选择合适的资源类型。例如,训练代码中定义的资源类型为CPU,这里选择其他类型时会导致训练失败。如果部分资源类型不可见或不可选,表示不支持。

Ascend资源仅在“华北-北京四”可用。

实例规格

必选,根据不同的资源类型,选择所需的资源规格。

“输入”参数选择“数据存储位置”时,在选择资源池规格时可以单击右侧的“获取输入数据大小”,检查输入数据的大小是否超出数据盘的容量限制,避免训练过程中出现内存不足的情况。

须知:

资源规格为“GPU:n*tnt004”(n表示具体数字)的资源不支持多进程的训练作业。

实例数

必填,根据需要选择实例数的个数。默认值为“1”

  • “实例数 = 1”时,创建的是单机训练作业,ModelArts只会在一个节点上启动一个训练容器,该训练容器独享所选规格的计算资源。
  • “实例数 > 1”时,创建的是分布式训练作业,更多分布式训练配置请参见分布式训练功能介绍

永久保存日志

选择CPU或者GPU资源时,支持选择是否关闭“永久保存日志”开关。

  • 开关打开(默认打开):表示永久保存日志,此时必须配置“作业日志路径”,系统会将训练日志永久保存至指定的OBS路径。
  • 开关关闭:表示不永久保存日志,则训练日志会在30天后会被清理。可以在作业详情页下载全部日志至本地。

作业日志路径

选择Ascend资源时或者打开“永久保存日志”开关时,必须配置“作业日志路径”,用于存放训练作业产生的日志文件。

建议选择一个空的OBS文件目录存放运行中产生的日志文件,同时需要OBS文件目录的读写权限。

事件通知

选择是否打开“事件通知”开关。

  • 开关关闭(默认关闭):表示不启用消息通知服务。
  • 开关打开:表示订阅消息通知服务,当训练作业发生特定事件(如作业状态变化或疑似卡死)时会发送通知。此时必须配置“主题名”“事件”
    • “主题名”:事件通知的主题名称。单击“创建主题”,前往消息通知服务中创建主题。
    • “事件”:选择要订阅的事件类型。例如“作业开始”“作业结束”“作业失败”“作业终止”“作业疑似卡死”等。
说明:
  • 需要为消息通知服务中创建的主题添加订阅,当订阅状态为“已确认”后,方可收到事件通知。订阅主题的详细操作请参见添加订阅
  • 使用消息通知服务会产生相关服务费用,详细信息请参见计费说明
  • 只有资源类型为GPU或NPU的训练作业才支持通知“作业疑似卡死”的事件。

自动停止

当使用付费资源时,可以选择是否打开“自动停止”开关。

  • 开关关闭(默认关闭):表示训练作业将一直运行直至训练完成。
  • 开关打开:表示启用自动停止功能,此时必须配置自动停止时间,支持设置为“1小时”“2小时”“4小时”、6小时或“自定义”,自定义时间取值范围为1~720小时。启用该参数并设置时间后,运行时长到期后将会自动终止训练,准备排队等状态不扣除运行时长。

配置节点间SSH免密互信

选择是否打开“配置节点间SSH免密互信”开关。

  • 开关关闭(默认关闭):表示不配置训练作业节点间SSH免密互信。
  • 开关打开:表示配置训练作业节点间SSH免密互信,此时必须配置“SSH密钥目录”,即自动生成的SSH密钥文件在训练容器中所在的目录,默认值为“/home/ma-user/.ssh”

配置资源池(专属资源池)

如果使用专属资源池创建训练作业,则参考表6配置专属资源池。
表6 创建训练作业的专属资源池

参数名称

说明

资源池

必选,选择“专属资源池”并选择要使用的资源池。

选择专属资源池时,支持查看当前资源池的状态、节点规格、空闲/碎片节点数、可用节点/总节点数以及卡数信息。单击“空闲/碎片节点数”列的“查看”可以查看碎片详情,确认资源池是否满足训练需求。

实例规格

必选,根据不同的资源类型,选择所需的资源规格。

“输入”参数选择“数据存储位置”时,在选择资源池规格时可以单击右侧的“获取输入数据大小”,检查输入数据的大小是否超出数据盘的容量限制,避免训练过程中出现内存不足的情况。

须知:

资源规格为“GPU:n*tnt004”(n表示具体数字)的资源不支持多进程的训练作业。

实例数

必填,根据需要选择实例的个数。默认值为“1”

  • “实例数 = 1”时,创建的是单机训练作业,ModelArts只会在一个节点上启动一个训练容器,该训练容器独享所选规格的计算资源。
  • “实例数> 1”时,创建的是分布式训练作业,更多分布式训练配置请参见分布式训练功能介绍

作业优先级

使用专属资源池创建训练作业时,支持设置训练作业的优先级。取值为1~3,默认优先级为1,最高优先级为3。

SFS Turbo

当ModelArts和SFS Turbo间网络直通时,训练作业支持挂载多个SFS Turbo存放训练数据。单击“增加挂载配置”,填写如下参数。

  • “文件系统”:选择一个SFS Turbo。
  • “云上挂载路径”:输入SFS Turbo对应在训练容器内的云上挂载路径。
  • “存储位置”:选择SFS Turbo的存储位置。如果用户配置了文件夹控制权限,请选择存储位置;如果用户未配置文件夹控制权限,可以保持默认值“/”或者自定义位置。
  • “挂载方式”:显示挂载SFS Turbo的权限。根据SFS Turbo存储位置的权限显示“读写”“只读”,如果用户未配置文件夹控制权限,则该参数不可见。
  • “挂载参数”:支持配置SFS挂载参数实现训练加速优化,具体参数说明请参见设置极速文件存储挂载参数。不设置时,默认配置如下参数:
    mountOptions:
    - vers=3 
    - timeo=600 
    - nolock 
    - hard
说明:
  • 文件系统支持重复挂载,但是挂载路径不可重复。最多可以挂载5个盘。
  • 如果要使用训练作业挂载SFS Turbo功能,需要配置ModelArts和SFS Turbo间网络直通,具体操作请参见配置ModelArts和SFS Turbo间网络直通
  • 云上挂载路径有如下限制:不能为 / 目录,不能为 /cache、 /home/ma-user/modelarts等系统已经默认挂载的路径。
  • 如果需要设置SFS Turbo的文件夹权限,请参考权限管理文档配置。

永久保存日志

选择CPU或者GPU资源时,支持选择是否关闭“永久保存日志”开关。

  • 开关打开(默认打开):表示永久保存日志,此时必须配置“作业日志路径”,系统会将训练日志永久保存至指定的OBS路径。
  • 开关关闭:表示不永久保存日志,则训练日志会在30天后会被清理。可以在作业详情页下载全部日志至本地。

作业日志路径

选择Ascend资源时或者打开“永久保存日志”开关时,必须配置“作业日志路径”,用于存放训练作业产生的日志文件。

建议选择一个空的OBS文件目录存放运行中产生的日志文件,同时需要OBS文件目录的读写权限。

事件通知

选择是否打开“事件通知”开关。

  • 开关关闭(默认关闭):表示不启用消息通知服务。
  • 开关打开:表示订阅消息通知服务,当训练作业发生特定事件(如作业状态变化或疑似卡死)时会发送通知。此时必须配置“主题名”“事件”
    • “主题名”:事件通知的主题名称。单击“创建主题”,前往消息通知服务中创建主题。
    • “事件”:选择要订阅的事件类型。例如“作业开始”“作业结束”“作业失败”“作业终止”“作业疑似卡死”等。
说明:
  • 需要为消息通知服务中创建的主题添加订阅,当订阅状态为“已确认”后,方可收到事件通知。订阅主题的详细操作请参见添加订阅
  • 使用消息通知服务会产生相关服务费用,详细信息请参见计费说明
  • 只有资源类型为GPU或NPU的训练作业才支持通知“作业疑似卡死”的事件。

自动停止

当使用付费资源时,可以选择是否打开“自动停止”开关。

  • 开关关闭(默认关闭):表示训练作业将一直运行直至训练完成。
  • 开关打开:表示启用自动停止功能,此时必须配置自动停止时间,支持设置为“1小时”“2小时”“4小时”、6小时或“自定义”,自定义时间取值范围为1~720小时。启用该参数并设置时间后,运行时长到期后将会自动终止训练,准备排队等状态不扣除运行时长。

配置节点间SSH免密互信

选择是否打开“配置节点间SSH免密互信”开关。

  • 开关关闭(默认关闭):表示不配置训练作业节点间SSH免密互信。
  • 开关打开:表示配置训练作业节点间SSH免密互信,此时必须配置“SSH密钥目录”,即自动生成的SSH密钥文件在训练容器中所在的目录,默认值为“/home/ma-user/.ssh”

(可选)选择训练模式

当训练作业的算法框架选用的是预置框架的MindSpore类引擎、资源池类型选用的是Ascend资源时,则支持选择训练模式。ModelArts提供了3种训练模式供用户选择,支持根据实际场景获取不同的诊断信息。

  • 普通模式:默认训练场景。
  • 高性能模式:最小化调测信息,可以提升运行速度,适合于网络稳定并追求高性能的场景。
  • 故障诊断模式:收集更多的信息用于定位,适合于执行出现问题需要收集故障信息进行定位的场景。此模式提供故障诊断,用户可以根据实际需求选择诊断类别。

(可选)设置标签

如果需要通过标签实现资源分组管理,可以在“高级选项”处勾选“现在配置”,可以设置训练作业的“标签”。标签详细用法请参见使用TMS标签实现资源分组管理

后续操作

当创建训练作业的参数配置完成后,单击“提交”,在信息确认页面单击“确定”,提交创建训练作业任务。

训练作业一般需要运行一段时间,前往训练作业列表,可以查看训练作业的基本情况。

  • 在训练作业列表中,刚创建的训练作业状态为“等待中”
  • 当训练作业的状态变为“已完成”时,表示训练作业运行结束,其生成的模型将存储至对应的“输出”目录中。
  • 当训练作业的状态变为“运行失败”“异常”时,可以单击训练作业的名称进入详情页面,通过查看日志等手段处理问题。
说明:

训练作业运行过程中将按照选择的资源进行计费。

提示

您即将访问非华为云网站,请注意账号财产安全

文档反馈

文档反馈

意见反馈

0/500

标记内容

同时提交标记内容