Closed cplusx closed 3 years ago
@cplusx Self-training is performed on only training samples. It aims to find the potential unseen pixels in the training images and gives them predicted labels. The proper training strategy is 'step1 -> mixed -> st -> st_mixed'. The configuration file (including the learning rate and the max iterations you need) for self-training and the secondary finetuning after self-training can now be found in the ./configs directory
Hi, I'm currently trying to run self-training to see its improvement on performance. Since the self-training configuration is not given here, I suppose all I need to change is changing "--schedule step1(mixed)" to "--schedule st(st_transfer)". And I should change "lr_transfer" to "lr_st_transfer". (Please correct me if I'm wrong and there are more configurations need to be modified). Could you please give the proper learning rate for self-training and corresponding max iterations (ITER_MAX_ST_TRANSFER in the config file)?
In train.py I saw there are choice for self-training and self-training transfer. I don't think it is meaningful to do self-training on seen categories only. Shall I just go for step "st_transfer" after getting model from "mixed" schedule (i.e. step1 -> mixed -> st_mixed). Or do I need add self-training before st_mixed (i.e. step1 -> mixed -> st -> st_mixed).
One more possibility is adding "st" before "mixed" (i.e. step1 -> st -> mixed -> st_mixed) but it seems to be meaningless to have self-training after step 1.
Thank you!