Skip to content

模型训练

一、训练

1. 创建训练

点击“创建训练”进入任务添加页面,各参数解释如下:
任务名:表示该任务的名称且不允许重复;
Python 代码:表示训练所需要的 python 程序的路径地址,支持手动输入、集群文件选取(详见文件搜索章节)、和本地文件上传(详见文件上传章节)等三种输入方式,可以点击“预览”按 钮预览选中的 python 程序(详见文件预览章节);
Python 参数:表示 python 代码所需要的参数;(选填)
工作空间:表示 python 程序执行时所在的工作目录,可以通过右边的文件夹浏览按钮选择工作空间的地址;
框架版本:表示用来进行训练的镜像版本;
TB 日志路径:表示用于 TensorBoard 的日志文件输出目录,可以通过右边的文件夹浏览按钮选择生成日志所在的文件夹;(选填)
环境变量:表示训练过程中所需要的环境变量,可以通过右边的文件浏览按钮、文件上传按钮进行环境变量文件的集群选取和本地上传;(选填)
任务类型:表示训练任务的提交方式,提交分布式任务选中“分布式”;
实现方式:表示分布式的种类,分为 PS-Worker 分布式和 Horovod 分布式两种方式;
资源分组:表示训练任务使用的资源分组(默认以 GPU 型号作为分组);
Parameter Server:表示参数服务器节点的数量;
Worker:表示工作节点的数量。
CPU 数量:表示一个 PS 或 Worker 占用的 CPU 数量;
GPU 数量:表示一个 PS 或 Worker 占用的 GPU 数量;
内存:表示一个 Worker 占用的内存大小;
超时限制:表示该 TensorFlow 训练任务所需要的最长运行时间。输入相关参数,点击“运行”按钮进入训练任务的详情页面。

1.png

2. 管理训练任务

训练任务列表页面显示已经创建过的模型训练任务,分为“任务名称”、“框架版本”、“提交时间”、“持续时间”、“状态”和“操作”六列,其中部分参数含义如下:
提交时间:表示训练任务的创建时间;
持续时间:表示训练任务的运行时长;
状态:表示当前任务的状态,有以下 6 种:“等待”表示训练任务已创建成功,正在等待计算资源,“部署”表示正在部署执行训练的环境,“运行”表示训练任务正在运行,“停止”表示训 练任务终止,“完成”表示训练任务已经完成,“失败”表示训练任务执行失败;
操作:表示的是可进行的操作,可以进行“推理”、“克隆”、“日志”、“原因”、“停止” 和“删除。

2.png

二、调优

1. 创建调优

点击“创建调优”进入任务添加页面,各参数解释如下:
任务名:表示该任务的名称且不允许重复;
Python 代码:表示调优所需要的 python 程序的路径地址,支持手动输入、集群文件选取(详见文件搜索章节)、和本地文件上传(详见文件上传章节)等三种输入方式,可以点击“预览”按 钮预览选中的 python 程序(详见文件预览章节);
Python 参数:表示 python 代码所需要的参数(选填);
工作空间:表示 python 程序执行时所在的工作目录,可以通过右边的文件夹浏览按钮选择工作空间的地址;
超参数名称:表示调优任务需要查找的最优超参数;(最多支持5个超参数同时查找);
超参数范围:表示对应超参数的取值范围; 迭代次数:表示希望迭代的次数,在该次数内寻找最优参数;
加速卡类型:可以选择使用DCU或者GPU,可根据自己所拥有的资源确认; 框架版本:表示用来进行调优的镜像版本;
队列:表示用来进行调优的队列;
Worker:表示工作节点的数量。
Master:表示负责发布、统计迭代次数和数据记录的管理节点数量(默认为1);
超时限制:表示该调优任务所需要的最长运行时间。

输入相关参数,点击“提交”按钮进入训练任务的详情页面。

注意:Master默认节点数量为1,资源使用CPU数量默认为1、内存默认为1G,Worker的资源使用用户可根据实际情况自由分配。调优代码需要遵循以下规则: (1)使用命令行参数定义要优化的超参数; (2)Eg:tf.app.flags.DEFINEamet_float('learning_rate', 0.1,"Name of hyperparameter"); (3)打印tuning_loss的值,用于评估超参数最佳值; (4)Eg: print("tuning_loss:%g" %(loss))。

alt text

2. 管理训练任务

调优任务列表页面显示已经创建过的调优任务,分为“任务名称”、“框架版本”、“提交时间”、“持续时间”、“状态”和“操作”六列,其中部分参数含义如下:
提交时间:表示任务的创建时间;
持续时间:表示任务的运行时长;
状态:表示当前任务的状态,有以下 6 种:“排队”表示训练任务已创建成功,正在等待计算资源,“部署”表示正在部署执行训练的环境,“运行”表示训练任务正在运行,“停止”表示训 练任务终止,“完成”表示训练任务已经完成,“失败”表示训练任务执行失败;
操作:表示的是可进行的操作,可以进行“克隆”、“暂停”、“日志” 和“删除。

alt text克隆任务:点击调优任务对应行的“克隆”按钮,复制此任务参数创建新的调优任务,支持重新调整任务参数。
alt text

3. 调优详情页面

调优详情页面包含了:
(1)任务信息:包括“任务名称”、“任务状态”、“任务持续时间”和“任务详细参数”;
(2)任务资源监控信息:包括“DCU”、“DCU-Mem”、“CPU”和“Memory”的平均利用率;
(3)调优参数信息:包括“超参数名称”、“超参数最优值”、“超参数取值范围”、“loss最优值”;
(4)任务迭代记录:以折线图的形式展示迭代过程loss值的变化曲线,可详细查看每次迭代超参数的取值情况;
(5)实例列表:任务创建的实例列表,分为“实例状态”、“实例名称”、“SSH”、“日志”,功能使用详见容器实例章节;
(6)容器详情:容器详细信息,功能使用详见容器实例详情章节。 alt text

三、验证

1. 创建验证任务

创建推理任务有以下两个入口:
如图对于已完成的训练任务可以点击对应行的“推理”按钮进行推理任务创建页面; alt text 如图点击“验证”标签页按钮进入验证任务创建页面: alt text生成脚本模板
当填写完模型路径、签名、场景、图像尺寸(选填)、类别详情后,可以点击“生成脚本”按钮生成默认的预处理或者后处理脚本模板,有自定义需求亦可在脚本内容中进行编写。
alt text浏览文件
以“预处理脚本”为例:
点击“浏览文件”按钮弹出文件选择器,在文件选择器中选中需要使用预处理脚本文件“process.py”,点击“确认”按钮完成文件选取。
alt text

2. 查看验证结果

点击“任务列表”中对应推理任务行的“查看结果”按钮进行推理结果的查看。 alt text 如图结果页面所示,验证结果页面包含了:
(1) 推理任务名称;
(2) 推理任务状态;
(3) 推理任务的模型文件路径;
(4) 任务验证用时和结果;
alt text