先决条件
- 拥有Det平台的账号。
本机已安装Det CLI,已配置DET_MASTER(Windows无法配置,在指令中加
-m
实现)。准备
在此指南中,我们将为 MNIST 数据集构建一个图像分类模型。
首先在这里下载示例代码,解压并进入目录,Linux命令如下:wget http://10.102.32.201:30000/docs/_downloads/61c6df286ba829cb9730a0407275ce50/mnist_pytorch.tgz
tar xzvf mnist_pytorch.tgz
cd mnist_pytorch
目录应包含以下文件:
├── mnist_pytorch
├── adaptive.yaml
├── const.yaml
├── data.py
├── distributed.yaml
├── layers.py
├── model_def.py
目录下
.yaml
文件均为实验配置文件,用于指定数据集位置、超参数等数值。以下是三种训练的示例配置:const.yaml
:在单个GPU或CPU上训练单个模型。distributed.yaml
:使用多个GPU(分布式培训)训练单个模型。adaptive.yaml
:训练多个模型用于自动调参(使用Det的自适应超参数搜索功能)。
运行
首先在固定batch、单模型、恒定超参数、默认数量的GPU(1个)下训练。
# 格式为 det exp create <config> <folder>
det experiment create const.yaml .
# 或指定master机
det -m 10.102.32.200:30000 experiment create const.yaml .
然后在多GPU下训练。yaml文件中resources.slots_per_trial
参数指定了使用的GPU数量,不要超过单台机器的最大数量(10个)。提交程序运行:
det experiment create distributed.yaml .
# 或
det -m 10.102.32.200:30000 experiment create distributed.yaml .
然后运行调参训练。
det experiment create adaptive.yaml .
# 或
det -m 10.102.32.200:30000 experiment create adaptive.yaml .
可以在TensorBoard查看训练情况,已自动集成。