本文介绍如何使用PAI-DLC和NAS,基于PyTorch进行离线迁移训练。

前提条件

使用限制

本文的操作仅支持PAI-DLC公共资源组的工作集群。

步骤一:准备数据

本文使用的数据已经存放在公开地址,您可以直接下载(下载数据),解压后即可使用。

  1. 进入PAI-DSW开发环境。
    1. 登录PAI控制台
    2. 在左侧导航栏,选择模型开发和训练 > 交互式建模(DSW)
    3. 在页面左上方,选择使用服务的地域。
    4. 可选:Notebook建模服务页面的搜索框,输入实例名称或关键字,搜索实例。
    5. 单击需要打开的实例操作列下的打开
  2. 在PAI-DSW开发环境,单击Other区域下的Terminal,即可打开Terminal。打开Terminal
  3. 下载数据。
    1. 单击左上方工具栏中的创建文件夹图标,创建文件夹(例如pytorch_transfer_learning)。
    2. 在Terminal中,使用cd命令进入已创建的文件夹,并通过wget命令下载数据集,如下图所示。
      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表示数据集地址,即从该地址下载数据集。下载数据集
    3. 使用tar -xf ./data.tar.gz命令解压数据集。
    4. 在左侧目录树,右键单击已解压的数据文件(hymenoptera_data),在快捷菜单中,单击Rename将该文件重命名为input,以便后续操作。重命名数据文件

步骤二:准备训练代码和模型存储文件夹

  1. 在同一个PAI-DSW实例内,可以将训练代码下载到NAS文件系统。参考下载数据的方法,使用wget命令下载训练代码。
    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表示训练代码存储地址。
  2. pytorch_transfer_learning文件夹下,创建名为output的文件夹,用于存储训练完成的模型。
  3. 查看pytorch_transfer_learning文件夹的内容。
    文件夹下包括如下文件:
    • input:训练数据文件夹。
    • main.py:训练代码。
    • output:模型存储文件夹。
    最终的文件夹内容

步骤三:新增数据配置

  1. 进入PAI-DLC Dashboard。
    1. 登录PAI控制台
    2. 在左侧导航栏,选择模型开发和训练 > 云原生深度学习训练(DLC)
    3. 在PAI-DLC管理控制台页面,找到类型公共资源组的工作集群,单击操作列下的集群控制台
  2. 在左侧导航栏,单击数据配置
  3. 数据配置页面,单击新增数据配置
  4. 新增数据配置页面,配置如下参数。数据配置
    参数 描述
    名称 数据名称。
    描述 数据的描述信息,便于区分不同的数据。
    存储系统类型 仅支持NAS。
    地域 该地域必须与NAS所在地域相同,本文为cn-beijing
    说明 地域必须与PAI-DSW实例的地域、数据和代码的存储地域一致。
    存储配置 配置为已创建的NAS文件系统的ID。您可以登录NAS控制台,在对应的地域,查看NAS文件系统ID。
    本地存储目录 无需配置。
  5. 单击提交

步骤四:创建任务

  1. 进入PAI-DLC Dashboard。
    1. 登录PAI控制台
    2. 在左侧导航栏,选择模型开发和训练 > 云原生深度学习训练(DLC)
    3. 在PAI-DLC管理控制台页面,找到类型公共资源组的工作集群,单击操作列下的集群控制台
  2. 在左侧导航栏,选择新建 > 新建任务
  3. 新建任务页面,配置如下参数。
    配置任务参数
    区域 参数 描述
    基本信息 任务名称 深度学习训练的任务名称。长度为2~30个字符,以小写字母开头。
    任务类型 选择Pytorch单机
    数据配置 配置为上一个步骤中新建的数据配置。
    代码配置 无需配置。
    工作目录 默认为/root路径,且不支持修改。
    执行命令 配置为python /root/data/pytorch_transfer_learning/main.py -i /root/data/pytorch_transfer_learning/input -o /root/data/pytorch_transfer_learning/output
    三方库配置 选择三方库列表,并在下方文本框中输入以下内容。
    numpy==1.16.4
    absl-py==0.11.0
    任务资源配置 Worker节点配置 节点镜像 选择PAI平台镜像,并在下面列表中选择PyTorch镜像。
    节点配置 选择一台合适的服务器。
    节点数量 单机任务,该参数取值为1,不支持修改。
  4. 单击提交

步骤五:查看任务详情和日志结果

  1. 在PAI-DLC Dashboard的左侧导航栏,单击任务列表
  2. 任务列表页面,单击任务的名称任务名称
  3. 任务详情页面,即可查看任务的基本信息任务配置等信息。
  4. 任务详情页面底部的实例区域,单击目标实例操作列下的日志,即可查看日志结果。查看日志
    日志结果如下图所示。日志结果