yxgeee / MMT

[ICLR-2020] Mutual Mean-Teaching: Pseudo Label Refinery for Unsupervised Domain Adaptation on Person Re-identification.
https://yxgeee.github.io/projects/mmt
MIT License
473 stars 72 forks source link

Features for clustering #15

Closed pmorerio closed 4 years ago

pmorerio commented 4 years ago

https://github.com/yxgeee/MMT/blob/aeb547079c65d9aa2b8ce08d587970412d362b07/examples/mmt_train_kmeans.py#L156

Hi, is there a reason why you perform clustering on averaged features? Did you find empirically that this works better than other options like concatenation or simply taking either cf_1 or cf_2? Thanks for your time and again thanks for sharing the code.

yxgeee commented 4 years ago

Hi, thank you for your question. Unfortunately, I did not conduct an ablation study on this component with the MMT framework. But when conducting experiments on baseline models, i.e. training with only hard pseudo labels, I found that cf = (cf_1+cf_2)/2 performed better than simply taking cf_1 or cf_2. I did not try concatenation since this operation will increase the feature dimension, resulting in more computation cost in clustering.

pmorerio commented 4 years ago

Thank you very much for the quick answer!

pmorerio commented 4 years ago

Did you try averaging features also for testing the models?

yxgeee commented 4 years ago

No, I only adopt one model in the inference, i.e. features for testing are output by one model directly.