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为了简化函数的调用,提供了默认参数机制: def pow(x, n = 2): r = 1 while n > 0: r *= x n...

在GitHub Pages上使用Pelican搭建博客的教程

在GitHub Pages上使用Pelican搭建博客的教程

Pelican 介绍 首先看看 Pelican 的一些主要特性:     Python实现,开放源码     输出静...

python snownlp情感分析简易demo(分享)

python snownlp情感分析简易demo(分享)

SnowNLP是国人开发的python类库,可以方便的处理中文文本内容,是受到了TextBlob的启发而写的,由于现在大部分的自然语言处理库基本都是针对英文的,于是写了一个方便处理中文的...

java判断三位数的实例讲解

java判断三位数的实例讲解

java怎么判断三位数 先定义个测试数字,如图 然后可以把数字转换成字符串来判断它的长度是否为3,如图 获取判断数字范围是否在100到1000之间的值,如图 在或者判断数字大于10...

Python数据操作方法封装类实例

本文实例讲述了Python数据操作方法封装类。分享给大家供大家参考,具体如下: 工作中经常会用到数据的插叙、单条数据插入和批量数据插入,以下是本人封装的一个类,推荐给各位: #!/u...