本文为您介绍如何使用PyTorch组件。

使用流程

在深度学习组件列表中找到PyTorch组件,PyTorch组件只支持读取OSS数据,该组件上游可以连接输出是OSS数据的组件,例如读OSS数据组件。pytorch

配置组件

您可以使用以下任意一种方式,配置Pytorch组件参数。

方式一:可视化方式

在PAI-Designer(原PAI-Studio)工作流页面配置组件参数。
页签参数描述
参数设置Python版本可以在2.7和3.6版本之间切换。
Python代码文件选择代码路径,如果上传的是tar.gz工程,需要在下一个框指定主文件。如果直接上传单个py文件,则不需要再指定主文件。
Python主文件指定执行的主代码文件,可选。单个文件不需要指定,压缩包需要指定文件目录结构,例如train/train.py
OSS数据源目录OSS路径。
配置文件超参及用户自定义参数超参文件,Key,Value格式。
checkpoint输出目录/模型输入目录模型输出路径。
是否限制作业运行时长设置是否启用限制作业运行的时长。
请输入计划作业运行时长单位:小时。默认值为24小时。
执行调优指定worker GPU卡数每个Worker中的GPU卡。
指定worker个数分布式机器数。

方式二:PAI命令方式

使用PAI命令方式,配置该组件参数。您可以使用SQL脚本组件进行PAI命令调用,详情请参见SQL脚本
PAI -name pytorch_ext  -DossHost="oss-cn-beijing-internal.aliyuncs.com"
      -Dcluster="{\"worker\":{\"gpu\":100}}" -DworkerCount="2"
      -Dpython="3.6"
      -Dinputs="oss://${OSS bucket名字}.oss-cn-beijing-internal.aliyuncs.com/mnist/"
      -Darn="acs:ram::168069136******:role/aliyunodpspaidefaultrole"
      -Dscript="oss://${OSS bucket名字}.oss-cn-beijing-internal.aliyuncs.com/pytorch/pytorch_dist_mnist.py"
      -DcheckpointDir="oss://${OSS bucket名字}.oss-cn-beijing-internal.aliyuncs.com/pytorch/"
      -DhyperParameters="oss://${OSS bucket名字}.oss-cn-beijing-internal.aliyuncs.com/pytorch/hyper_para.txt";
参数名称描述
DossHostOSS Bucket的内网Endpoint,请根据OSS Bucket实际所在的地域进行修改,详情请参见访问域名和数据中心
Dcluster每个Worker的GPU卡个数,100等于1张卡,200等于2张卡。
DworkerCount指定Worker的个数。
DpythonPython版本,2.7或3.6。
Dinputs输入的数据源路径。
DarnOSS的roleArn。

您可以登录PAI控制台,在开通和授权 > 全部产品依赖页面的Designer区域,单击操作列下的查看授权信息,获取role_Arn,具体操作请参见PAI访问云产品授权:OSS

Dscript执行的代码文件。
DcheckpointDir模型存储路径。
DhyperParameters超参文件。
您可以配置TXT类型的超参文件,并上传到OSS Bucket目录。文件内容配置示例如下。
batch_size=10
learning_rate=0.01
该参数需要配置为超参文件在OSS Bucket的存储路径,详情请参见PAI-TF超参支持
1PAI命令方式代码中需要通过指定parser对像获取Web端配置的参数内容,例如在组件参数中配置了OSS数据源路径,在代码中可以通过inputs对象获取路径,详细用法请参见示例

示例

  1. 下载pytorch分布式处理mnist文件代码并上传至OSS,需要填写您的AccessKey信息。4
  2. 下载mnist训练文件和mnist测试文件上传至OSS文件夹下。
  3. 根据业务需求配置参数。
    示例如下。示例
  4. 配置资源。
    样例代码是分布式代码,所以Worker个数需要大于1。示例如下。6