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

yipeiwu_com6年前Python基础

使用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冻结训练方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

在Django的模型和公用函数中使用惰性翻译对象

在模型和公用函数中,使用ugettext_lazy()和ungettext_lazy()来标记字符串是很普遍的操作。 当你在你的代码中其它地方使用这些对象时,你应当确定你不会意外地转换它...

使用pyqt 实现重复打开多个相同界面

一般采用的方法: self.window = Qdialog() # 实例化 self.window.show() # 显示界面 用这种方法只能打开一个界面,self使得默认只...

python实现WebSocket服务端过程解析

python实现WebSocket服务端过程解析

一种类似Flask开发的WebSocket-Server服务端框架,适用python3.X 1、安装模块Pywss pip install pywss 2、搭建简易服务器 2....

Python生成MD5值的两种方法实例分析

本文实例讲述了Python生成MD5值的两种方法。分享给大家供大家参考,具体如下: # -*- coding:utf-8 -*- import datetime # NO.1 使用M...

python通过zabbix api获取主机

zabbix强大地方在于有强大的api,zabbix 的api可以拿到zabbix大部分数据,目前我所需的数据基本可以通过api获取,以下是通过zabbix api获取的主机信息pyth...