PaddleDetection的安装和使用以及训练和评估
这里是百度的AI 开发平台:https://ai.baidu.com/ai-doc/AISTUDIO/Tk39ty6ho
目前对于个人来说的,学习深度学习的来说的,需要时一定的计算资源。但是考虑到学校实验室资源有限,所以本人采用AI系统平台的提高的服务来实现个人的实验的相关问题。后面本人将持续对相关的AI系统平台详细讲解。(亿元免费算力 | 百度大脑AI Studio重磅推出算力支持计划:亿元免费算力 | 百度大脑AI Studio重磅推出算力支持计划)
百度AI Studio是针对AI学习者的在线一体化学习与实训社区. 本平台集合了AI教程, 深度学习样例工程, 各领域的经典数据集, 云端的超强运算及存储资源, 以及比赛平台和社区.从而解决学习者在AI学习过程中的一系列难题, 例如教程水平不一, 教程和样例代码难以衔接, 高质量的数据集不易获得, 以及本地难以使用大体量数据集进行模型训练.
怎么样安装的安装PaddleDetection
所有的代码都是在百度AI Studio平台实现的这样的一个的过程的,当然你也可以使用的自己的构建的PaddleDetection来实现的。
PaddleDetection在tools
目录提供了一键式训练、评估、预测和模型导出等脚本。
PaddleDetection在deploy/cpp
和deploy/python
文件夹下提供了C++端和python端使用Paddle预测库的预测部署的方案和文档。
PaddleDetection下载
可以通过如下git clone
命令下载PaddleDetection目标检测库,由于在AIStudio上通过git clone
下载比较慢,本项目在work
目录下提供下载好的PaddleDetection压缩包,也可直接解压使用。
PaddleDetection安装环境
//1安装依赖
pip install -r requirements.txt
//2配置环境本地路径到系统中
env PYTHONPATH=.:$PYTHONPATH
//3.添加的GPU的训练的到系统环境变量中
env CUDA_VISIBLE_DEVICES=0
查看是否有启用GPU和CPU
使用的PaddleDetection训练
PaddleDetection提供一键式训练、评估、预测等脚本`tools/train.py` `tools/eval.py` `tools/infer.py`,可通过`-c`参数指定配置文件进行一键式训练,`yolov3_darknet`模型的训练权重默认存储于`output/yolov3_darknet`目录。
- 若需要训练中评估,可以使用`--eval`参数指定
- 若使用CPU运行PaddleDetection,可指定`-o use_gpu=False`,不建议在CPU下训练模型
- 本项目演示使用COCO的`val`数据集训练,对配置文件做如下修改(使用`train`数据集不需要做以下修改,可以直接一键式启动训练),`work`目录下提供了一个修改好的配置文件,也可在`configs`目录(即`data/PaddleDetection/configs`目录)下按照如下方式自行修改`yolov3_darknet.yml`和`yolov3_reader.yml`
1. `yolov3_reader.yml`中修改`TrainReader.dataset`的`anno_path`和`image_dir`为`val`数据集路径, `mixup_epoch`修改为`0`
2. 由于使用单卡训练,`yolov3_darknet.yml`中将`LearningRate.base_lr`减少8倍到`0.000125`
3. `yolov3_darknet.yml`中将训练轮数`max_iters`减小到`50000`, 减少`PiecewiseDecay`的`milestones`到`[40000, 45000]`
**注:** 此处仅展示一键式训练,训练完成比较耗时(4小时左右),此处不完成完整训练,可直接中断训练,不影响后续演示,后续使用PaddleDetection发布的权重进行预测。