启智集群单数据集的训练,启智集群多数据集的训练,智算集群的单数据集训练,这3个的训练使用方式不同,请注意区分:
启智集群中单数据集和多数据集的区别在于使用方式不同:
如本示例中单数据集MNISTDataset_torch.zip的使用方式是:数据集位于/dataset/下
多数据集时MNISTDataset_torch.zip的使用方式是:数据集位于/dataset/MNISTDataset_torch/下
智算网络中,若需要在每个epoch后都返回训练结果,可以使用回传工具将/tmp/output文件夹的内容及时传到启智以供下载,具体写法为:
os.system("cd /tmp/script_for_grampus/ &&./uploader_for_gpu " + "/tmp/output/")
MNISTData数据集是由10类28∗28的灰度图片组成,训练数据集包含60000张图片,测试数据集包含10000张图片。
数据集压缩包的目录结构如下:
MNISTDataset_torch.zip
├── test
│ └── MNIST
│ │── raw
│ │ ├── t10k-images-idx3-ubyte
│ │ └── t10k-labels-idx1-ubyte
│ │ ├── train-images-idx3-ubyte
│ │ └── train-labels-idx1-ubyte
│ └── processed
│ ├── test.pt
│ └── training.pt
└── train
└── MNIST
│── raw
│ ├── t10k-images-idx3-ubyte
│ └── t10k-labels-idx1-ubyte
│ ├── train-images-idx3-ubyte
│ └── train-labels-idx1-ubyte
└── processed
├── test.pt
└── training.pt
mnist_epoch1_0.73.pkl.zip
├── mnist_epoch1_0.73.pkl
使用GPU进行训练,需要在GPU芯片上运行,所以上传的数据集需要传到GPU界面。(此步骤在本示例中不需要,可直接选择公开数据集MNISTDataset_torch.zip)
准备好数据和执行脚本以后,需要创建训练任务将Pytorch脚本运行。首次使用的用户可参考本示例代码。
由于A100的适配性问题,A100需要使用cuda11以上的cuda版本,目前平台已提供基于A100的cuda基础镜像,只需要选择对应的公共镜像:
训练界面参数参考如下:
表1 创建训练作业界面参数说明
参数名称 | 说明 |
---|---|
计算资源 | 选择CPU/GPU |
代码分支 | 选择仓库代码中要使用的代码分支,默认可选择master分支 |
镜像 | 镜像选择已在调试环境中调试好的镜像,目前版本请选择基础镜像:平台提供基于A100的cuda基础镜像,如dockerhub.pcl.ac.cn:5000/user-images/openi:cuda111_python37_pytorch191 |
启动文件 | 启动文件选择代码目录下的启动脚本train.py |
数据集 | 数据集选择已上传到启智平台的公共数据集MnistDataset_torch.zip |
运行参数 | 增加运行参数可以向脚本中其他参数传值,如epoch_size |
资源规格 | 规格选择含有GPU个数的规格 |
目前训练任务的日志只能在代码中print输出,参考示例train.py代码相关print