meituan / YOLOv6

YOLOv6: a single-stage object detection framework dedicated to industrial applications.
GNU General Public License v3.0
5.72k stars 1.03k forks source link

yolov6 nano在训练的最后100个epoch有特殊操作吗? #367

Closed LitPrice closed 2 years ago

LitPrice commented 2 years ago

您好,我在复现yolov6 nano时,发现精度在前期还是比较稳定的,但是在250 epoch后精度差距就逐渐和您源码的精度拉开了,最终差距在1.5点,请问在最后100个epoch时有什么特殊操作吗?

Zephyr69 commented 2 years ago

How are you trying to reproduce their results? AFAIK they did not reveal their env, seeds, and exact hardware setup for training. Missing only the seed is enough to prevent your repeated training sessions from generating reproducible results.

Without these, the process is not remotely deterministic and you cannot reproduce anything. Even with these, reproduction is not guaranteed because they could have just missed a random process somewhere, or there are some hardware-related problems that were not known etc.

LitPrice commented 2 years ago

随机数种子的影响其实相对比较小,我做过的很多复现都没有确保过随机过程完全一致,但最终的精度差距不会超过1个点

Chilicyy commented 2 years ago

您好,在最后100个epoch没有其他特殊操作的。麻烦提供下这边训练的环境以及相关的参数,包括epoch数、训练卡数以及batchsize等。

LitPrice commented 2 years ago

您好,在最后100个epoch没有其他特殊操作的。麻烦提供下这边训练的环境以及相关的参数,包括epoch数、训练卡数以及batchsize等。

您好,我們是在自己的框架下復現的代碼,環境是torch.1.8.1, v100,其他的配置與您的源碼一致

LitPrice commented 2 years ago

您好,在最后100个epoch没有其他特殊操作的。麻烦提供下这边训练的环境以及相关的参数,包括epoch数、训练卡数以及batchsize等。

請問所有的結果都是在混合精度訓練開啓的情況下得到的嗎?另外還有一個問題,爲什麼dataset讀取coco數據時不使用pycocotools,而是手動讀取了全部數據,相比於pycocotools多了1000多張圖像,這樣對精度有影響嗎?期待您的解答

Chilicyy commented 2 years ago

您好,在最后100个epoch没有其他特殊操作的。麻烦提供下这边训练的环境以及相关的参数,包括epoch数、训练卡数以及batchsize等。

請問所有的結果都是在混合精度訓練開啓的情況下得到的嗎?另外還有一個問題,爲什麼dataset讀取coco數據時不使用pycocotools,而是手動讀取了全部數據,相比於pycocotools多了1000多張圖像,這樣對精度有影響嗎?期待您的解答

您好,感谢您的关注。我们的训练过程默认是开启混合精度训练的。关于数据读取的问题,我们手动读取是为了兼容用户自定义的数据输入格式,方便代码维护,还没尝试过使用pycocotools读取数据,不确定对精度是否有影响。如果您这边有相关的实验结果,也可以告知我们,谢谢!

LitPrice commented 2 years ago

您好,在最后100个epoch没有其他特殊操作的。麻烦提供下这边训练的环境以及相关的参数,包括epoch数、训练卡数以及batchsize等。

請問所有的結果都是在混合精度訓練開啓的情況下得到的嗎?另外還有一個問題,爲什麼dataset讀取coco數據時不使用pycocotools,而是手動讀取了全部數據,相比於pycocotools多了1000多張圖像,這樣對精度有影響嗎?期待您的解答

您好,感谢您的关注。我们的训练过程默认是开启混合精度训练的。关于数据读取的问题,我们手动读取是为了兼容用户自定义的数据输入格式,方便代码维护,还没尝试过使用pycocotools读取数据,不确定对精度是否有影响。如果您这边有相关的实验结果,也可以告知我们,谢谢!

您好,我們目前基本可以復現nano和tiny的精度,但是small與您的精度差距有2個點,我看代碼與配置,small與tiny的差別出去depth和width系數,就只有siou了,前後處理好像沒有任何的差別,是我們有漏掉什麼區別嗎?希望得到您的解答

Chilicyy commented 2 years ago

您好,small与tiny的区别除了您说的这些之外没有其他了,一般建议使用8卡batchsize为256的训练配置,谢谢!

hhaAndroid commented 2 years ago

我在对齐训练精度时候发现 small 跑到最后 30 epoch mAP 就会下降,最终和你们发布的模型差距 0.3? 请问你们那边能发布下训练log吗