yolor
1.0.0
تنفيذ الورق - تتعلم فقط تمثيل واحد: شبكة موحدة لمهام متعددة


للحصول على النتائج على الجدول ، يرجى استخدام هذا الفرع.
| نموذج | حجم الاختبار | اختبار AP | اختبار AP 50 | AP 75 اختبار | PATCH1 إنتاجية | BATCH32 الاستدلال |
|---|---|---|---|---|---|---|
| Yolor-CSP | 640 | 52.8 ٪ | 71.2 ٪ | 57.6 ٪ | 106 إطارًا في الثانية | 3.2 MS |
| Yolor-CSP-X | 640 | 54.8 ٪ | 73.1 ٪ | 59.7 ٪ | 87 إطارًا في الثانية | 5.5 مللي ثانية |
| Yolor-P6 | 1280 | 55.7 ٪ | 73.3 ٪ | 61.0 ٪ | 76 إطارًا في الثانية | 8.3 MS |
| Yolor-W6 | 1280 | 56.9 ٪ | 74.4 ٪ | 62.2 ٪ | 66 إطارًا في الثانية | 10.7 MS |
| يولور E6 | 1280 | 57.6 ٪ | 75.2 ٪ | 63.0 ٪ | 45 إطارًا في الثانية | 17.1 مللي ثانية |
| Yolor-D6 | 1280 | 58.2 ٪ | 75.8 ٪ | 63.8 ٪ | 34 إطارًا في الثانية | 21.8 مللي ثانية |
| YOLOV4-P5 | 896 | 51.8 ٪ | 70.3 ٪ | 56.6 ٪ | 41 إطارًا في الثانية (قديم) | - |
| YOLOV4-P6 | 1280 | 54.5 ٪ | 72.6 ٪ | 59.8 ٪ | 30 إطارًا في الثانية (قديم) | - |
| Yolov4-P7 | 1536 | 55.5 ٪ | 73.4 ٪ | 60.8 ٪ | 16 إطارًا في الثانية (قديم) | - |
| نموذج | حجم الاختبار | AP Val | AP 50 فال | AP 75 فال | AP S Val | AP M Val | AP L Val | الأوزان |
|---|---|---|---|---|---|---|---|---|
| YOLOV4-CSP | 640 | 49.1 ٪ | 67.7 ٪ | 53.8 ٪ | 32.1 ٪ | 54.4 ٪ | 63.2 ٪ | - |
| Yolor-CSP | 640 | 49.2 ٪ | 67.6 ٪ | 53.7 ٪ | 32.9 ٪ | 54.4 ٪ | 63.0 ٪ | الأوزان |
| Yolor-CSP * | 640 | 50.0 ٪ | 68.7 ٪ | 54.3 ٪ | 34.2 ٪ | 55.1 ٪ | 64.3 ٪ | الأوزان |
| YOLOV4-CSP-X | 640 | 50.9 ٪ | 69.3 ٪ | 55.4 ٪ | 35.3 ٪ | 55.8 ٪ | 64.8 ٪ | - |
| Yolor-CSP-X | 640 | 51.1 ٪ | 69.6 ٪ | 55.7 ٪ | 35.7 ٪ | 56.0 ٪ | 65.2 ٪ | الأوزان |
| Yolor-CSP-X * | 640 | 51.5 ٪ | 69.9 ٪ | 56.1 ٪ | 35.8 ٪ | 56.8 ٪ | 66.1 ٪ | الأوزان |
النمو ...
| نموذج | حجم الاختبار | اختبار AP | اختبار AP 50 | AP 75 اختبار | اختبار AP S. | اختبار AP M. | اختبار AP L. |
|---|---|---|---|---|---|---|---|
| Yolor-CSP | 640 | 51.1 ٪ | 69.6 ٪ | 55.7 ٪ | 31.7 ٪ | 55.3 ٪ | 64.7 ٪ |
| Yolor-CSP-X | 640 | 53.0 ٪ | 71.4 ٪ | 57.9 ٪ | 33.7 ٪ | 57.1 ٪ | 66.8 ٪ |
تدريب من الصفر لمدة 300 عصر ...
| نموذج | معلومات | حجم الاختبار | AP |
|---|---|---|---|
| Yolor-CSP | تطور | 640 | 48.0 ٪ |
| Yolor-CSP | الاستراتيجية | 640 | 50.0 ٪ |
| Yolor-CSP | الاستراتيجية + سيموتا | 640 | 51.1 ٪ |
| Yolor-CSP-X | الاستراتيجية | 640 | 51.5 ٪ |
| Yolor-CSP-X | الاستراتيجية + سيموتا | 640 | 53.0 ٪ |
بيئة Docker (موصى بها)
# create the docker container, you can change the share memory size if you have more.
nvidia-docker run --name yolor -it -v your_coco_path/:/coco/ -v your_code_path/:/yolor --shm-size=64g nvcr.io/nvidia/pytorch:20.11-py3
# apt install required packages
apt update
apt install -y zip htop screen libgl1-mesa-glx
# pip install required packages
pip install seaborn thop
# install mish-cuda if you want to use mish activation
# https://github.com/thomasbrandon/mish-cuda
# https://github.com/JunnYu/mish-cuda
cd /
git clone https://github.com/JunnYu/mish-cuda
cd mish-cuda
python setup.py build install
# install pytorch_wavelets if you want to use dwt down-sampling module
# https://github.com/fbcotter/pytorch_wavelets
cd /
git clone https://github.com/fbcotter/pytorch_wavelets
cd pytorch_wavelets
pip install .
# go to code folder
cd /yolor
بيئة كولاب
git clone https://github.com/WongKinYiu/yolor
cd yolor
# pip install required packages
pip install -qr requirements.txt
# install mish-cuda if you want to use mish activation
# https://github.com/thomasbrandon/mish-cuda
# https://github.com/JunnYu/mish-cuda
git clone https://github.com/JunnYu/mish-cuda
cd mish-cuda
python setup.py build install
cd ..
# install pytorch_wavelets if you want to use dwt down-sampling module
# https://github.com/fbcotter/pytorch_wavelets
git clone https://github.com/fbcotter/pytorch_wavelets
cd pytorch_wavelets
pip install .
cd ..
إعداد مجموعة بيانات Coco
cd /yolor
bash scripts/get_coco.sh
تحضير وزن ما قبل
cd /yolor
bash scripts/get_pretrain.sh
yolor_p6.pt
python test.py --data data/coco.yaml --img 1280 --batch 32 --conf 0.001 --iou 0.65 --device 0 --cfg cfg/yolor_p6.cfg --weights yolor_p6.pt --name yolor_p6_val
سوف تحصل على النتائج:
Average Precision (AP) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.52510
Average Precision (AP) @[ IoU=0.50 | area= all | maxDets=100 ] = 0.70718
Average Precision (AP) @[ IoU=0.75 | area= all | maxDets=100 ] = 0.57520
Average Precision (AP) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.37058
Average Precision (AP) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.56878
Average Precision (AP) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.66102
Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 1 ] = 0.39181
Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets= 10 ] = 0.65229
Average Recall (AR) @[ IoU=0.50:0.95 | area= all | maxDets=100 ] = 0.71441
Average Recall (AR) @[ IoU=0.50:0.95 | area= small | maxDets=100 ] = 0.57755
Average Recall (AR) @[ IoU=0.50:0.95 | area=medium | maxDets=100 ] = 0.75337
Average Recall (AR) @[ IoU=0.50:0.95 | area= large | maxDets=100 ] = 0.84013
تدريب وحدات معالجة الرسومات الواحدة:
python train.py --batch-size 8 --img 1280 1280 --data coco.yaml --cfg cfg/yolor_p6.cfg --weights '' --device 0 --name yolor_p6 --hyp hyp.scratch.1280.yaml --epochs 300
التدريب المتعدد GPU:
python -m torch.distributed.launch --nproc_per_node 2 --master_port 9527 train.py --batch-size 16 --img 1280 1280 --data coco.yaml --cfg cfg/yolor_p6.cfg --weights '' --device 0,1 --sync-bn --name yolor_p6 --hyp hyp.scratch.1280.yaml --epochs 300
جدول التدريب في الورقة:
python -m torch.distributed.launch --nproc_per_node 8 --master_port 9527 train.py --batch-size 64 --img 1280 1280 --data data/coco.yaml --cfg cfg/yolor_p6.cfg --weights '' --device 0,1,2,3,4,5,6,7 --sync-bn --name yolor_p6 --hyp hyp.scratch.1280.yaml --epochs 300
python -m torch.distributed.launch --nproc_per_node 8 --master_port 9527 tune.py --batch-size 64 --img 1280 1280 --data data/coco.yaml --cfg cfg/yolor_p6.cfg --weights 'runs/train/yolor_p6/weights/last_298.pt' --device 0,1,2,3,4,5,6,7 --sync-bn --name yolor_p6-tune --hyp hyp.finetune.1280.yaml --epochs 450
python -m torch.distributed.launch --nproc_per_node 8 --master_port 9527 train.py --batch-size 64 --img 1280 1280 --data data/coco.yaml --cfg cfg/yolor_p6.cfg --weights 'runs/train/yolor_p6-tune/weights/epoch_424.pt' --device 0,1,2,3,4,5,6,7 --sync-bn --name yolor_p6-fine --hyp hyp.finetune.1280.yaml --epochs 450
yolor_p6.pt
python detect.py --source inference/images/horses.jpg --cfg cfg/yolor_p6.cfg --weights yolor_p6.pt --conf 0.25 --img-size 1280 --device 0
سوف تحصل على النتائج:

@article{wang2023you,
title={You Only Learn One Representation: Unified Network for Multiple Tasks},
author={Wang, Chien-Yao and Yeh, I-Hau and Liao, Hong-Yuan Mark},
journal={Journal of Information Science and Engineering},
year={2023}
}