MCG-NJU / MOTIP

Multiple Object Tracking as ID Prediction
https://arxiv.org/abs/2403.16848
Apache License 2.0
90 stars 8 forks source link

关于阈值超参数和batch_size #9

Closed shirosy closed 5 months ago

shirosy commented 5 months ago

在dance和sports数据集上,τdet设置为低于τnew,也就是把置信度不高的更多候选框放进了匹配环节,相比于直接把τdet等于τnew的设置,具体提升了多少呢?这部分原文里没有消融实验,想知道您做实验时关于这里更多的经验。^_^ 另外想请问一下,MOTIP对batch_size敏感吗,我没有8张卡跑T^T

HELLORPG commented 5 months ago

关于第一个问题,我手头暂时没有准确的实验数据,但是根据我的记忆,大概会带来 1~2 HOTA 的提升。这个想法是来自于 ByteTrack,将更多的检测结果纳入跟踪目标的考量范围可以带来一定的增益。你可以在 inference 的时候采用参数--det-thresh--newborn-thresh来进行传参修改,从而得到你想要的实验结果。

关于第二个问题,应该会带来一些影响,但是具体的实验我并没有进行。有时间的话也可以探究一下。因为 Deformable DETR 对于 batch_size 是比较敏感的,否则可能会带来一些训练不稳定的问题。在其他类型的模型中也会有类似的讨论,例如:

更相近一点,在 MOTRv2 中也有相关讨论。但是或许可以通过一些调参来降低这种影响,例如使用更大的accumulation_step或是降低学习率等。

shirosy commented 5 months ago

感谢!我明白了。因为我想MOTIP一次迭代是40张图片,相比于MOTR应该会稳健一些,batch_size敏感的问题可能会缓解一点。

HELLORPG commented 5 months ago

虽然我们输入了 40 张图片,但是每次用于监督 DETR 的部分实际上只有 4 张,这一点和原本的 Deformable DETR 是一样的(在每张卡上讨论),所以并没有带来特别大的训练稳定性的增益(个人看法)。 此外,由于我们采用了 ID 词典,这一点其实和 NLP 中的情况有些类似,如果每次看到的“词”太少就有可能带来词表训练的不稳定。但是关于这一点,在即将开源的版本中,有一种比较节约资源的方法可以高效的对词表的稳定性带来一定的提升,额外 40% 的计算资源可以带来理论上最高 10 倍的训练时词容量,这样也许可以从理论上保留降低 batch_size 的可行性。

shirosy commented 5 months ago

理解了,期待稳定版本!

HELLORPG commented 5 months ago

感谢期待!在加油努力了,哈哈。 如果关于这两个问题没有其他需要讨论的话,那我就暂时将它 close 了,之后有需要的话随时 re-open。