Pytorch 实现冻结指定卷积层的参数

yipeiwu_com4年前Python基础

python代码

    for i, para in enumerate(self._net.module.features.parameters()):
      if i < 16:
        para.requires_grad = False
      else:
        para.requires_grad = True
    # Solver.
    # self._solver = torch.optim.SGD(
    #   self._net.parameters(), lr=self._options['base_lr'],
    #   momentum=0.9, weight_decay=self._options['weight_decay'])
    self._solver = torch.optim.SGD(
      self._net.module.parameters(), lr=self._options['base_lr'],
      momentum=0.9, weight_decay=self._options['weight_decay'])

分析

通过for循环将需要冻结的layer的requires_grad属性设置为False

以上这篇Pytorch 实现冻结指定卷积层的参数就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

浅谈终端直接执行py文件,不需要python命令

然后给脚本文件运行权限, 方法(1)chmod +x ./*.py 方法(2)chmod 755 ./*.py (777也无所谓啦) 这个命令不去调整,会出现permission den...

Python中unittest用法实例

本文实例讲述了Python中unittest的用法,分享给大家供大家参考。具体用法分析如下: 1. unittest module包含了编写运行unittest的功能,自定义的test...

Python将list中的string批量转化成int/float的方法

最近在处理词向量这块,因为平时习惯把处理的词向量保存成文件,但是txt文件读取出来的都是string格式的数字,有必要转成float型 上网查了一下教程,在这记录一下: data =...

Python更新数据库脚本两种方法及对比介绍

最近项目的两次版本迭代中,根据业务需求的变化,需要对数据库进行更新,两次分别使用了不同的方式进行更新。 第一种:使用python的MySQLdb模块利用原生的sql语句进行更新 im...

Python学习笔记整理3之输入输出、python eval函数

1. python中的变量: python中的变量声明不需要像C++、Java那样指定变量数据类型(int、float等),因为python会自动地根据赋给变量的值确定其类型。如 rad...