本文介绍如何使用DLC、DSW和NAS,基于PyTorch进行离线迁移训练。
前提条件
选择合适的地域,创建通用型NAS文件系统,详情请参见通过控制台创建通用型NAS文件系统。
使用限制
本文的操作仅支持通用计算资源公共资源组的工作集群。
步骤一:创建数据集
步骤二:创建DSW实例
创建DSW实例时,您需要在数据集区域单击添加,选择步骤一创建的NAS类型数据集,并将挂载路径配置为/mnt/data/
,工作目录选择数据集-/mnt/data/
。
其他参数配置详情,请参见创建DSW实例。
步骤三:准备数据
本文使用的数据已经存放在公开地址,您可以直接下载(下载数据),解压后即可使用。
进入DSW开发环境。
登录PAI控制台
在左侧导航栏单击工作空间列表,在工作空间列表页面中单击待操作的工作空间名称,进入对应工作空间内。
在页面左上方,选择使用服务的地域。
在左侧导航栏,选择 。
可选:在交互式建模(DSW)页面的搜索框,输入实例名称或关键字,搜索实例。
单击需要打开的实例操作列下的打开。
在DSW开发环境的顶部菜单栏,单击Notebook页签。
下载数据。
单击左上方工具栏中的图标,创建文件夹(例如pytorch_transfer_learning)。
在DSW开发环境的顶部菜单栏,单击Terminal页签,即可打开Terminal。
在Terminal中,使用
cd
命令进入已创建的文件夹,并通过wget
命令下载数据集,如下图所示。cd /mnt/workspace/pytorch_transfer_learning/ wget https://pai-public-data.oss-cn-beijing.aliyuncs.com/hol-pytorch-transfer-cv/data.tar.gz
其中
https://pai-public-data.oss-cn-beijing.aliyuncs.com/hol-pytorch-transfer-cv/data.tar.gz
表示数据集地址,即从该地址下载数据集。使用
tar -xf ./data.tar.gz
命令解压数据集。切换到Notebook页签,在左侧目录树,进入目录pytorch_transfer_learning中,右键单击已解压的数据文件夹(hymenoptera_data),在快捷菜单中,单击Rename将该文件重命名为input,以便后续操作。
步骤四:准备训练代码和模型存储文件夹
在DSW实例的Terminal中,使用
wget
命令将训练代码下载到pytorch_transfer_learning
文件夹下。cd /mnt/workspace/pytorch_transfer_learning/ wget https://pai-public-data.oss-cn-beijing.aliyuncs.com/hol-pytorch-transfer-cv/main.py
其中
https://pai-public-data.oss-cn-beijing.aliyuncs.com/hol-pytorch-transfer-cv/main.py
表示训练代码存储地址。在pytorch_transfer_learning文件夹下,创建名为output的文件夹,用于存储训练完成的模型。
mkdir output
查看pytorch_transfer_learning文件夹的内容。
文件夹下包括如下文件:
input:训练数据文件夹。
main.py:训练代码。
output:模型存储文件夹。
步骤五:创建任务
进入新建任务页面。
登录PAI控制台。
在左侧导航栏单击工作空间列表,在工作空间列表页面中单击待操作的工作空间名称,进入对应工作空间内。
在工作空间页面的左侧导航栏选择
,在分布式训练(DLC)页面中单击新建任务,进入新建任务页面。
在新建任务页面,配置如下参数。
区域
参数
描述
基本信息
任务名称
深度学习训练的任务名称。
节点镜像
选择官方镜像 ,并在下面列表中选择PyTorch镜像。例如:选择
pytorch-training:1.12pai-gpu-py38-cu113-ubuntu20.04
。数据集配置
选择步骤一创建的NAS类型数据集。
代码配置
无需配置。
启动命令
配置为
python /mnt/data/pytorch_transfer_learning/main.py -i /mnt/data/pytorch_transfer_learning/input -o /mnt/data/pytorch_transfer_learning/output
。三方库配置
选择三方库列表,并在下方文本框中输入以下内容。
numpy==1.16.4 absl-py==0.11.0
资源配置
资源配额
选择公共资源。
框架
选择Pytorch。
任务资源
选择一台合适的服务器。例如:资源规格选择CPU下的ecs.g6.xlarge,节点数量配置为1。
单击确定。
步骤六:查看任务详情和日志结果
在分布式训练任务页面,单击任务的名称。
在任务详情页面,即可查看任务的基本信息及基本任务配置等信息。
在任务详情页面底部的实例页签,单击目标实例操作列下的日志,即可查看日志结果。
日志结果如下图所示。