PyTorch - удаление нормы партии дает разные результаты модели в выводе - PullRequest
1 голос
/ 09 мая 2019

Я удалил уровни нормы партии из модели и загрузил веса всех остальных слоев для вывода.Прогнозы исходной модели по сравнению с моделями без нормы партии не совпадают.

Разница вызвана удалением нормы партии?

#load pretrained model
checkpoint = torch.load(restore_file)
pretrained_model = checkpoint['model']
pretrained_dict = pretrained_model.state_dict()

#create new model without batch norm
model = no_batch_model()
model_dict = model.state_dict()

# 1. filter out unnecessary keys
pretrained_dict = {k: v for k, v in pretrained_dict.items() if k in model_dict}

# 2. overwrite entries in the existing state dict
model_dict.update(pretrained_dict)

# 3. load the new state dict
model.load_state_dict(pretrained_dict)
...