YuHengsss / YOLOV

This repo is an implementation of PyTorch version YOLOV Series
Apache License 2.0
309 stars 43 forks source link

无法复现结果,急需帮助 #37

Closed kangkang189 closed 1 year ago

kangkang189 commented 1 year ago

请问下可以告诉我们完整的训练命令吗,如何可以训练出87.5的结果呢,我torch版本和cuda已经保持了一致,但是无法复现结果,如果不是多节点训练的命令应该怎么实现呢?

YuHengsss commented 1 year ago

Hello, you should add strong augmentation while training to get 85+Ap50. To get 87.5AP50, you should also take post-processing into account!

kangkang189 commented 1 year ago

but i just run the shell "python tools/vid_train.py -f exps/yolov/yolov_x.py -c weights/yolov_x.pth -b 16 -d 2",does something wrong with it ? i close the multi node training ,my environment is "1card8gpus",what the shell do i use ? thanks!

YuHengsss commented 1 year ago

but i just run the shell "python tools/vid_train.py -f exps/yolov/yolov_x.py -c weights/yolov_x.pth -b 16 -d 2",does something wrong with it ? i close the multi node training ,my environment is "1card8gpus",what the shell do i use ? thanks!

You could train it with single card. The epoch we set for yolov_x is 20 and you should get 85+AP@50 when you apply a formal testing. The eval process in training is only use part of validation set, please follow our instruction to do formal evaluation.

kangkang189 commented 1 year ago

i just got 40+ap50 i think something wrong with it

YuHengsss commented 1 year ago

i just got 40+ap50 i think something wrong with it

Do you use yolox pretrain weights?

kangkang189 commented 1 year ago

-c weights/yolov_x.pth is it not the pretrain weights? i download from the readme

YuHengsss commented 1 year ago

-c weights/yolov_x.pth is it not the pretrain weights? i download from the readme

Bro, you should read it carefully. What you use is the well-trained yolov weights not yolox pre-trained weights.

kangkang189 commented 1 year ago

can you share the command you run with your work? i get use gpus=2 from your paper and 8imgs per

YuHengsss commented 1 year ago

-c weights/yolov_x.pth is it not the pretrain weights? i download from the readme

And we suggest you try small model first to verify your operation is correct

kangkang189 commented 1 year ago

OH! thanks! but how can i get the yolox pre-trained weights

kangkang189 commented 1 year ago

bro can we + wechat ,i just want to know how to get the 85+map and use it into my job!

YuHengsss commented 1 year ago

OH! thanks! but how can i get the yolox pre-trained weights

We have already listed it in the readme file.

YuHengsss commented 1 year ago

bro can we + wechat ,i just want to know how to get the 85+map and use it into my job!

You can try to contact the author of https://github.com/YuHengsss/YOLOV/issues/22#issue-1437400165. It seems he has finished the training process successfully.

kangkang189 commented 1 year ago

OH! thanks! but how can i get the yolox pre-trained weights

We have already listed it in the readme file.

i just see the well-trained weights in readme,where is the pretrained weights?

YuHengsss commented 1 year ago

OH! thanks! but how can i get the yolox pre-trained weights

We have already listed it in the readme file.

i just see the well-trained weights in readme,where is the pretrained weights?

In the weights col of the main result table!!!!

kangkang189 commented 1 year ago

but i

well-trained yolov weights

i just see the well-trained weights under main result table? i cant see the pretrained weights under main result table

YuHengsss commented 1 year ago

but i

well-trained yolov weights

i just see the well-trained weights under main result table? i cant see the pretrained weights under main result table

The yolox weights is the pretrained weights for yolov e.g: https://drive.google.com/file/d/1n8wkByqpHdrGy6z9fsoZpBtTa0I3JOcG/view?usp=sharing which is the yolox-s weights on vid

kangkang189 commented 1 year ago

!!! thanks! you are my hero!!!

kangkang189 commented 1 year ago

hello,the results in paper mationed is AP50 85.5,AP50 means IOU0.50-0.95 or IOU0.50? I just run the yolov_s model under your code found IOU0.50-0.95 AP is 0.49 and the IOU0.50 AP is 0.74,which one means the "AP50" in your paper?

YuHengsss commented 1 year ago

hello,the results in paper mationed is AP50 85.5,AP50 means IOU0.50-0.95 or IOU0.50? I just run the yolov_s model under your code found IOU0.50-0.95 AP is 0.49 and the IOU0.50 AP is 0.74,which one means the "AP50" in your paper?

AP50 means AP@50. You can use the best_ckpt weights and set the gframe to 32 when testing which could boost the AP.

kangkang189 commented 1 year ago

Thanks ! I will try it again!

kangkang189 commented 1 year ago

i got the 76.9 AP50 with yolovs,how about the yolovx training hyper? training with 2Gpus or 1GpuS and 16batch/Gpus?

YuHengsss commented 1 year ago

i got the 76.9 AP50 with yolovs,how about the yolovx training hyper? training with 2Gpus or 1GpuS and 16batch/Gpus?

You can try to modify the code and train it with 2 GPU. We train YOLOV-x just by one GPU.

kangkang189 commented 1 year ago

hello,i want to know how to train yolo with 2 GPUs,i use "CUDA_VISIBLE_DEVICES=4,5 python tools/vid_train.py -f exps/yolov/yolov_x.py -c weights_pretrain/yoloxx_vid.pth --fp16 -b 16 -d 2"but i found the memory used in every gpu is equal,it means it dosent distribute the code?Which shell should i run?

YuHengsss commented 1 year ago

Please refer to https://github.com/YuHengsss/YOLOV/issues/35#issuecomment-1363664251