Pytorch如何根据layers的name实现冻结训练方式

2023-05-20,,

这篇文章主要介绍了Pytorch如何根据layersname实现冻结训练方式,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

使用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实现冻结训练方式”这篇文章对大家有帮助,同时也希望大家多多支持本站,关注本站行业资讯频道,更多相关知识等着你来学习!

《Pytorch如何根据layers的name实现冻结训练方式.doc》

下载本文的Word格式文档,以方便收藏与打印。