目标检测实战教程06-AIstudio后台任务

notebook后台任务

公开项目地址,可以自己fork直接运行代码
先在notebook中写好运行命令,然后将当前版本进行保存后,提交到后台任务中运行,运行的环境为至尊版。

脚本任务

直接写shell脚本或者python脚本文件,将脚本提交到服务器集群,运行的环境可以选择P40运行环境和四卡V100环境。

如果需要使用迁移学习,由于上传的文件大小受限,可以将预训练模型作为数据集存入到项目中,然后再解压使用。

pwd
nvidia-smi
mkdir data
unzip -oq /root/paddlejob/workspace/train_data/datasets/data121670/Big.zip -d /root/paddlejob/workspace/code/data

git clone https://gitee.com/paddlepaddle/PaddleDetection.git -b release/2.1
cd PaddleDetection && git checkout release/2.1
# 安装依赖
pip install paddledet==2.1 -i https://mirror.baidu.com/pypi/simple

cd ..


cp   runtime.yml ./PaddleDetection/configs/runtime.yml
cp   cascade_rcnn_r50_fpn_1x_coco.yml ./PaddleDetection/configs/cascade_rcnn/cascade_rcnn_r50_fpn_1x_coco.yml
cp   coco_detection.yml ./PaddleDetection/configs/datasets/coco_detection.yml
cp   optimizer_1x.yml ./PaddleDetection/configs/cascade_rcnn/_base_/optimizer_1x.yml
cp   cascade_rcnn_r50_fpn.yml ./PaddleDetection/configs/cascade_rcnn/_base_/cascade_rcnn_r50_fpn.yml
cp   cascade_fpn_reader.yml ./PaddleDetection/configs/cascade_rcnn/_base_/cascade_fpn_reader.yml

python -m paddle.distributed.launch --gpus 0,1,2,3 ./PaddleDetection/tools/train.py -o num_classes=1 -c ./PaddleDetection/configs/cascade_rcnn/cascade_rcnn_r50_fpn_1x_coco.yml --eval --use_vdl=Ture

python -u ./PaddleDetection/tools/export_model.py -c ./PaddleDetection/configs/cascade_rcnn/cascade_rcnn_r50_fpn_1x_coco.yml --output_dir=./inference_model -o weights=./output/cascade_rcnn_r50_fpn_1x_coco/best_model


mv ./inference_model/* /root/paddlejob/workspace/output
mv vdl_log_dir/* /root/paddlejob/workspace/output

注:关于多卡训练时的参数设置,首先需要修改的是学习率,之前讲到配置文件中默认的学习率为八卡学习率,如果使用单卡训练需要除以8或者更大的数字,如果是多卡训练,则需要乘对应的倍数。由于数据读取配置文件中的参数是以每张GPU的数据读取量进行配置的,所以当增加训练卡的数量时,不需要相应增加batchsize等配置参数。同时还需要设置运行卡的数量。

你可能感兴趣的:(目标检测,目标检测,深度学习,python,aistudio)