MXNet使用指南
MXNet是一个深度学习框架,支持命令和符号编程,可以运行在CPU和GPU集群上。本文为您介绍如何在机器学习中使用MXNet组件。
组件配置
您可以使用以下任意一种方式,配置MXNet组件参数。
方式一:可视化方式
在Designer(原PAI-Studio)工作流页面配置组件参数。
页签 | 参数 | 描述 |
参数设置 | Python代码文件 | 程序执行文件,多个文件可通过tar.gz打包上传。 |
Python主文件 | 指定代码文件压缩包中的主文件。 | |
数据源目录 | 选择OSS上的数据源。 | |
配置文件超参及用户自定义参数 | PAI MXNet支持用户通过命令传入相应的超参配置,这样用户在做模型试验的时候可以尝试不同的learning rate, batch size等。 | |
输出目录 | 输出的模型路径。 | |
限制作业运行时长 | 勾选后,可以输入作业计划运行的最大时长。取值1~168。单位小时。 | |
请输入计划作业运行最大时长 | 单位:小时。默认值为24小时。 | |
执行调优 | 指定GPU卡数 | GPU卡的个数。默认值为1。 |
方式二:PAI命令方式
使用PAI命令方式,配置该组件参数。您可以使用SQL脚本组件进行PAI命令调用,详情请参见SQL脚本。
PAI -name mxnet_ext
-Dscript="oss://imagenet.oss-cn-shanghai-internal.aliyuncs.com/mxnet-ext-code/mxnet_cifar10_demo.tar.gz"
-project algo_public_dev
-DentryFile="train_cifar10.py"
-Dbuckets="oss://imagenet.oss-cn-shanghai-internal.aliyuncs.com"
-DcheckpointDir="oss://imagenet.oss-cn-shanghai-internal.aliyuncs.com/mxnet-ext-model/"
-DhyperParameters="oss://imagenet.oss-cn-shanghai-internal.aliyuncs.com/mxnet-ext-code/hyperparam.txt.single"
-Darn="acs:ram::1664081855183****:role/role-for-pai";
实际使用中,并不需要指定所有参数(不要直接复制上面的命令),各个参数的含义可以参考下面的表格。
参数名称 | 是否必选 | 描述 | 默认值 |
script | 是 | MXNet算法文件,可以是单个文件或者tar.gz压缩包。 | oss://imagenet.oss-cn-shanghai-internal.aliyuncs.com/smoke_mxnet/mnist_ext.py |
entryFile | 否 | 算法入口文件名,当script为tar.gz压缩包时,该参数必选。 | 无 |
buckets | 否 | 输入bucket,输入多个时以逗号(,)分隔,每个bucket须以正斜杠(/)结尾。 | 无 |
hyperParameters | 否 | 命令行超参数路径。 | 无 |
gpuRequired | 否 | 标识使用GPU资源量。 | 100 |
checkpointDir | 否 | checkpoint的目录。 | 无 |
arn | 否 | 指定授权资源,您可以登录PAI控制台,在 页面的Designer区域,单击操作列下的查看授权信息,获取arn。 | 无 |
示例
CIFAR-10是MXNet官方提供的基于图片的10分类场景的案例,通过对于6万张32*32的图片进行训练生成模型,可以对飞机、汽车、鸟、猫、鹿、狗、青蛙、马、船、卡车进行自动分类。详细内容请参见CIFAR-10数据集。
在OSS中上传Python执行文件以及训练数据集。本示例在华东2地域创建名为tfmnist的bucket。
拖拽读OSS数据和MXNet组件,拼接成如下示例。需要设置好OSS Bucket的地区,并完成RAM授权。
配置MXNet组件参数。参考下图配置python执行文件以及数据源文件路径。
Python代码文件选择.tar.gz文件。
Python主文件选择tar包中的执行入口文件。
超参自定义参数文件选择.txt.single文件。
checkpoint为模型输出目录。
单击运行,直到两个组件运行完成。
右键单击MXNet组件,查看运行日志。
在checkpoint地址下生成如下图所示的模型。