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

yipeiwu_com6年前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设计】。

相关文章

python实现随机漫步算法

本文实例为大家分享了python实现随机漫步的具体代码,供大家参考,具体内容如下 编写randomwalk类 from random import choice class ra...

详解python 中in 的 用法

详解python 中in 的 用法

in在Python中是操作符,具体来说是成员操作符。就是对于序列(字符串,元组,列表)或集合(set)或映射(字典)这些数据类型做成员判断,自然成员判断的返回是在其中和不在其中,用Py...

详解如何在python中读写和存储matlab的数据文件(*.mat)

背景 在做deeplearning过程中,使用caffe的框架,一般使用matlab来处理图片(matlab处理图片相对简单,高效),用python来生成需要的lmdb文件以及做test...

对Python中Iterator和Iterable的区别详解

Python中 list,truple,str,dict这些都可以被迭代,但他们并不是迭代器。为什么? 因为和迭代器相比有一个很大的不同,list/truple/map/dict这些数据...

python绘制铅球的运行轨迹代码分享

python绘制铅球的运行轨迹代码分享

我们按照面向过程程序设计的思想,使用python编写了程序,追踪铅球在运行过程中的位置信息。下面,修改程序代码,导入turtle模块,将铅球的运行轨迹绘制出来。 python3代码如下...