苞米面 Paddle 助手 介绍
2022/6/23 23:19:51
本文主要是介绍苞米面 Paddle 助手 介绍,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
苞米面 Paddle 助手
- 自己用的百度飞桨 Paddle,PaddleX 项目模板和小工具。My Paddle PaddleX project templates.
适用系统
- 一些脚本使用 shell 编写,所以目前适用 Linux 和 百度 AI Studio
如何安装
- 从 gitee 获取源码
git clone git@gitee.com:cnhemiya/bmm-paddle-helper.git
- 从 github 获取源码
git clone git@github.com:cnhemiya/bmm-paddle-helper.git
程序参数
- 项目生成器 mkbmmph.py
cd bmm-paddle-helper python3 tools/mkbmmph.py -h usage: mkbmmph.py [-h] [--project] [--to_dir] 苞米面 Paddle 项目生成器 optional arguments: -h, --help show this help message and exit --project 项目类型,可选:paddlex_cls, paddlex_det, paddlex_seg --to_dir 生成的项目模板保存目录,默认 './run'
- 生成不同的模板
cd bmm-paddle-helper # PaddleX 图像分类 python3 tools/mkbmmph.py --project paddlex_cls --to_dir ./run # PaddleX 目标检测 python3 tools/mkbmmph.py --project paddlex_det --to_dir ./run # PaddleX 图像分割 python3 tools/mkbmmph.py --project paddlex_seg --to_dir ./run
- Linux 小技巧
可以使用软连接把 mkbmmph.py 连接到 $HOME/.local/bin 目录,方便使用。
使用示例
生成模板
- 生成 PaddleX 目标检测项目模板
cd bmm-paddle-helper python3 tools/mkbmmph.py --project paddlex_det --to_dir ./run
模板目录结构
run ├── aismain.ipynb ├── check_data.sh ├── get_data.sh ├── infer.py ├── mod │ ├── args.py │ ├── config.py │ ├── __init__.py │ ├── pdxconfig.py │ ├── report.py │ └── utils.py ├── onekey.sh ├── onetasks.sh ├── paddlex_det_doc.md ├── prune.py ├── quant.py └── train.py
文件说明
文件 | 说明 |
---|---|
aismain.ipynb | Jupyter notebook 适用百度 AI Studio,放到项目根目录,或者根据目录修改 |
check_data.sh | 检查数据 |
get_data.sh | 获取数据 |
infer.py | 预测程序 |
mod | python 模块 |
onekey.sh | 一键获取数据脚本模板,需要按照自己需求,修改路径 |
onetasks.sh | 一键训练,量化脚本模板,需要按照自己需求,修改参数 |
paddlex_det_doc.md | 参数说明 |
prune.py | 裁剪程序 |
quant.py | 量化程序 |
train.py | 训练程序 |
aismain.ipynb 目录结构示例
├── aismain.ipynb ├── data └── work └── run
训练示例
- train.py 加 -h 查看参数
python3 run/train.py \ --dataset ./dataset/road_fighter_car \ --epochs 32 \ --batch_size 1 \ --learning_rate 0.01 \ --model PicoDet \ --backbone ESNet_m \ --pretrain_weights ""
裁剪示例
- prune.py 加 -h 查看参数
python3 run/prune.py \ --dataset ./dataset/road_fighter_car \ --epochs 16 \ --batch_size 1 \ --learning_rate 0.001 \ --model_dir ./output/best_model \ --save_dir ./output/prune \ --pruned_flops 0.2
在线量化示例
- quant.py 加 -h 查看参数
python3 run/quant.py \ --dataset ./dataset/road_fighter_car \ --epochs 16 \ --batch_size 1 \ --learning_rate 0.001 \ --model_dir ./output/best_model \ --save_dir ./output/quant
需要修改什么
aismain.ipynb
- 放到百度 AI Studio 项目根目录,或者根据目录修改
check_data.sh
- dataset_dir:需要检查的文件所在的目录
- data_files:需要检查的文件
onekey.sh
- app_dir:程序目录,如果不是 run,根据自己的设定修改
- zip_file:数据压缩包
- ais_dir:aistudio 数据目录
- sub_data_dir:解压后的数据目录
- data_dir:数据目录
onetasks.sh
- MODEL:模型名称
- BACKBONE:主干模型
- DATASET:数据集目录
- BASE_SAVE_DIR:保存的目录
- FIXED_INPUT_SHAPE:导出模型的输入大小
- APP_DIR:程序目录
- PYTHON_APP:python 程序
transforms
- 可以自己修改 train.py prune.py quant.py 的 transforms 非必须。
dataset
- 可以自己修改 train.py prune.py quant.py 的 dataset 非必须。
开源协议
MulanPSL-2.0
项目地址
GITEE https://gitee.com/cnhemiya/bmm-paddle-helper
GITHUB https://github.com/cnhemiya/bmm-paddle-helper
AISTUDIO https://aistudio.baidu.com/aistudio/projectdetail/4260357
这篇关于苞米面 Paddle 助手 介绍的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南