Pytorch根據layers的name凍結訓練方式
阿新 • • 發佈:2020-01-09
使用model.named_parameters()可以輕鬆搞定,
model.cuda() # ######################################## Froze some layers to fine-turn the model ######################## for name,param in model.named_parameters(): # 帶有引數名的模型的各個層包含的引數遍歷 if 'out' or 'merge' or 'before_regress' in name: # 判斷引數名字串中是否包含某些關鍵字 continue param.requires_grad = False # ############################################################################################################# optimizer = optim.SGD(filter(lambda p: p.requires_grad,model.parameters()),lr=opt.learning_rate * args.world_size,momentum=0.9,weight_decay=5e-4)
以上這篇Pytorch根據layers的name凍結訓練方式就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支援我們。