VISION-SJTU / USOT

[ICCV2021] Learning to Track Objects from Unlabeled Videos
63 stars 7 forks source link

about the score_map #15

Closed LiShenglana closed 1 year ago

LiShenglana commented 1 year ago

When I only use offline siamese module to train this model for a while, I find that the cls_score stop update and the score_map visualized like below: 1670934545979 Do you know how can I fix this? Thank you very much!

zhengjilai commented 1 year ago

@LiShenglana Hi ! Thanks for your attention on this work. What do you mean by "only using offline siamese module to train this model" ? In my experience, since there exists object scale/position shift on the training search areas, the response map should never become what you visualize above. Please give more details on your problem, e.g. your loss curve on the offline classification loss. Thank you!

LiShenglana commented 1 year ago

@LiShenglana Hi ! Thanks for your attention on this work. What do you mean by "only using offline siamese module to train this model" ? In my experience, since there exists object scale/position shift on the training search areas, the response map should never become what you visualize above. Please give more details on your problem, e.g. your loss curve on the offline classification loss. Thank you! This is the loss curve below: a173d45e4a3d5af1455e06e6089816d 2692412eda6fad8b69fdc9e419c3271 At the begining, the score map looks like below: image But after 2 epoch, the score map looks like somthing wrong: image Thanks for your reply!

zhengjilai commented 1 year ago

@LiShenglana

Bug definitely exists. Note that before training, the classification BCE loss is around 0.6. And after 2 epochs, your classification loss becomes around 0.4-0.5, as is shown in your loss curve. In my experience, a proper training process should lead to a classification loss gradually down to around 0.1, so what you met is absolutely abnormal.

So I observed the training instances you illustrated, and found that the classification labels seem to be wrong. In other words, the spatial position of the template target in the search area does not have the corresponding positive label. Both two instances show similar phenomena. For example, in the training instance below, the target (a cyclist with its shadow) exactly lies in the center of the search area, but the corresponding positive area in the pseudo classification label (left) lies aound top-middle. This labeling error definitely confuses the model, and makes loss never decrease.

I am sure that the original dataloader does not have such a labeling error, otherwise other followers of this repository should have already found it (TAT). Thus, I recommend you re-check your revisions on the codes (especially in the dataloader), or set some break points to debug the dataloader, in order to investigate why this labeling error happens.

LiShenglana commented 1 year ago

@zhengjilai Hi! I solved this problem following your advice. It is really the problem of dataloader that I revise before. Thank you very much!

zhengjilai commented 1 year ago

Glad to see the bug fixed.