当前位置 : 主页 > 编程语言 > python >

Pytorch根据layers的name冻结训练方式

来源:互联网 收集:自由互联 发布时间:2021-04-09
使用model.named_parameters()可以轻松搞定, model.cuda() # ######################################## Froze some layers to fine-turn the model ########################for name, param in model.named_parameters(): # 带有参数名的模型

使用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冻结训练方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持易盾网络。

网友评论