ZiyiZhang27/Dite-HRNet

the result of this paper

sayoko17 opened this issue · 9 comments

这篇论文里显示的结果,都是在8张3090跑出来的吗?
Are the results shown in this paper all in 8 3090?

并不是所有的模型都是使用8张卡跑的,比如我们的Dite-HRNet-18-256是使用2张卡跑的。您的疑虑是否主要在batchsize设置上呢?如果是的话,我可以明确告诉您,我们所有的模型结果都是使用等效的 batchsize * 显卡数量 = 256 训练得到的,进一步细节可以参考Training部分对Linear Scaling Rule的解释~

若您还不能理解的话,可以默认为我们所有模型都是使用8张显卡,每张显卡的batchsize都设置为32

你好,谢谢你的回复!!!我用2片p100,bs在32,跑出了比论文数据稍高一点的效果,想问一下是不是因为动态卷积有随机性?是否有固定的方法呢,谢谢你_(:з」∠)_

你好,谢谢你的回复!!!我用2片p100,bs在32,跑出了比论文数据稍高一点的效果,想问一下是不是因为动态卷积有随机性?是否有固定的方法呢,谢谢你_(:з」∠)_

结果的随机性主要是由随机种子造成的,如果想做对比实验的话,可以在训练命令的最后加上 --seed xxxxxx,xxxxxx可以采用上次训练产生的随机值,可以从日志文件中找到

SRY,之前没有想到,数据稍高的原因可能还有两点:一是valid阶段我们使用的是GT box而不是yolov3生成的box,而在test阶段我们使用的是yolov3生成的box来进行测试的,所以请您注意这一点;二是因为之前使用384×288的输入进行训练时我们数据预处理有一处错误,在现在的repo里已经改正了,所以现在结果可能比论文中数据稍高。

如果您是因为第二点造成的数据稍高,可否为我们提供一下模型文件或者在coco val set 和test-dev set上的测试结果呢,万分感谢~

1,论文里val2017的结果,也是使用的是GT box吗?有约定说论文一定要用yolov3生成的还是GTbox生成的这种吗
2,mmpose框架topdown的,是不是都用的gtbox?(litehrnet这类的),没研究过backbone以外的代码。。
应该不是因为第二点的原因,我是Dite18(256x192)val跑到66多,就来问一下原因><,test还没跑,排队用卡中

1,论文里val2017的结果,也是使用的是GT box吗?有约定说论文一定要用yolov3生成的还是GTbox生成的这种吗 2,mmpose框架topdown的,是不是都用的gtbox?(litehrnet这类的),没研究过backbone以外的代码。。 应该不是因为第二点的原因,我是Dite18(256x192)val跑到66多,就来问一下原因><,test还没跑,排队用卡中

  1. 不是的,我们论文里的结果都是采用yolov3生成的bbox来测试得到的结果,具体操作其实就是训练完以后使用dist_test.sh进行测试,因为我们训练验证过程设置的是GT,测试过程使用的是yolov3
  2. coco keypoint上的模型一般都是使用yolov3生成的box来测试并且po出结果的,在训练验证阶段使用GT是为了方便调参,免受检测器性能的干扰

好的,测试完了,18-256的那个测的比论文低0.5个点,18-384的和论文一样69,谢谢您的回复,感恩感恩>v<

你好,不好意思再打扰一下,如果说我没有对seed进行设置,只执行
./tools/dist_train.sh configs/top_down/dite_hrnet/coco/ditehrnet_18_coco_256x192.py 2
的训练命令,我的训练日志里的SEED那里会显示None,没有保存随机数,是不是就没办法复现这次的结果了呢?
"seed": null
然后如果在训练命令后面加一个 --seed 0,日志里保存的就会是0
2022-06-09 10:38:36,632 - mmpose - INFO - Set random seed to 0, deterministic: False
我下次要还是设置 --seed 0,会和这次的结果一致嘛?
谢谢!