在pytorch中查看可训练参数的例子

yipeiwu_com6年前Python基础

pytorch中我们有时候可能需要设定某些变量是参与训练的,这时候就需要查看哪些是可训练参数,以确定这些设置是成功的。

pytorch中model.parameters()函数定义如下:

  def parameters(self):
    r"""Returns an iterator over module parameters.

    This is typically passed to an optimizer.

    Yields:
      Parameter: module parameter

    Example::

      >>> for param in model.parameters():
      >>>   print(type(param.data), param.size())
      <class 'torch.FloatTensor'> (20L,)
      <class 'torch.FloatTensor'> (20L, 1L, 5L, 5L)

    """
    for name, param in self.named_parameters():
      yield param

所以,我们可以遍历named_parameters()中的所有的参数,只打印那些param.requires_grad=True的变量。具体实现代码如下所示:

for name, param in model.named_parameters():
  if param.requires_grad:
    print(name)

这样打印出的结果就是模型中所有的可训练参数列表!

以上这篇在pytorch中查看可训练参数的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

在Django中同时使用多个配置文件的方法

我们仅仅处理一个单一的设置文件 settings.py文件由django-admin.py startproject命令生成。但是当你准备要进行配置的时候,你将发现你需要多个配置文件以使...

一篇文章弄懂Python中所有数组数据类型

前言 数组类型是各种编程语言中基本的数组结构了,本文来盘点下Python中各种“数组”类型的实现。 list tuple array.array str bytes...

python实现视频分帧效果

本文实例为大家分享了python实现视频分帧的具体代码,供大家参考,具体内容如下 import cv2 vidcap = cv2.VideoCapture('005.avi')...

python读取和保存图片5种方法对比

python读取和保存图片5种方法对比 python中对象之间的赋值是按引用传递的,如果需要拷贝对象,需要用到标准库中的copy模块 方法一:利用 PIL 中的 Image 函数 这个函...

Django3.0 异步通信初体验(小结)

Django3.0 异步通信初体验(小结)

此前博主曾经写过一篇博文,介绍了Django3.0的新特性,其中最主要的就是加入对ASGI的支持,实现全双工的异步通信。 2019年12月2日,Django终于正式发布了3.0版本。怀着...