启智集群单数据集的训练,启智集群多数据集的训练,智算集群的单数据集训练,这3个的训练使用方式不同,请注意区分:
启智集群中单数据集和多数据集的区别在于使用方式不同:
如本示例中单数据集MNISTDataset_torch.zip的使用方式是:数据集位于/dataset/下
多数据集时MNISTDataset_torch.zip的使用方式是:数据集位于/dataset/MNISTDataset_torch/下
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)
train_for_multidataset.py,用于多数据集训练的脚本文件。具体说明请参考train_for_multidataset.py
train_for_c2net.py,用于智算网络训练的脚本文件。具体说明请参考train_for_c2net.py
model.py,使用的训练网络,在单数据集训练,多数据集训练,智算网络训练中使用到。
准备好数据和执行脚本以后,需要创建训练任务将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