Open JizeCao opened 1 year ago
You can find the following line in train_front_door_tr.py
[Link]
# Bank and EMA
cluster.bank_init()
ema_init(segment.head, segment.head_ema)
ema_init(segment.projection_head, segment.projection_head_ema
Here, the funcion of ema_init
is defined in modules/segment_module.py
[Link]
def ema_init(x, x_ema):
for param, param_ema in zip(x.parameters(), x_ema.parameters()): param_ema.data = param.data; param_ema.requires_grad = False
I join the question. It is not entirely clear how to run fully self-supervised learning on an arbitrary set of images.
According to the paper, the step 2 should perform self-supervised learning with contrastive learning objective. However, in the script _train_front_doortr.py and _fine_tuningtr.py , the dataset ground-truth labels are used to train the linear probe. And that linear probe is also used to generate predictions during the inference .
I understand that these scripts are used to generate Table 2 result, which uses a linear probe to compare against other baselines.
Does there any script perform fully unsupervised learning training & evaluation in this repo ? That would be really helpful if such scripts exist for us to evaluate this method's performance in a fully unsupervised learning manner without linear probing. :)