pytorch获取模型某一层参数名及参数值方式

 更新时间:2019年12月30日 09:26:52   作者:HuiYu-Li  
今天小编就为大家分享一篇pytorch获取模型某一层参数名及参数值方式,具有很好的价值,希望对大家有所帮助。一起跟随小编过来看看吧

1、Motivation:

I wanna modify the value of some param;

I wanna check the value of some param.

The needed function:

2、state_dict() #generator type

model.modules()#generator type

named_parameters()#OrderDict type

from torch import nn
import torch
#creat a simple model
model = nn.Sequential(
  nn.Conv3d(1,16,kernel_size=1),
  nn.Conv3d(16,2,kernel_size=1))#tend to print the W of this layer
input = torch.randn([1,1,16,256,256])
if torch.cuda.is_available():
  print('cuda is avaliable')
  model.cuda()
  input = input.cuda()
#打印某一层的参数名
for name in model.state_dict():
  print(name)
#Then I konw that the name of target layer is '1.weight'

#schemem1(recommended)
print(model.state_dict()['1.weight'])

#scheme2
params = list(model.named_parameters())#get the index by debuging
print(params[2][0])#name
print(params[2][1].data)#data

#scheme3
params = {}#change the tpye of 'generator' into dict
for name,param in model.named_parameters():
params[name] = param.detach().cpu().numpy()
print(params['0.weight'])

#scheme4
for layer in model.modules():
if(isinstance(layer,nn.Conv3d)):
  print(layer.weight)

#打印每一层的参数名和参数值
#schemem1(recommended)
for name,param in model.named_parameters():
  print(name,param)

#scheme2
for name in model.state_dict():
  print(name)
  print(model.state_dict()[name])

以上这篇pytorch获取模型某一层参数名及参数值方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python并发爬虫常用实现方法解析

    Python并发爬虫常用实现方法解析

    这篇文章主要介绍了Python并发爬虫常用实现方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • Python脚本实现定时任务的最佳方法

    Python脚本实现定时任务的最佳方法

    我们在日常工作中,常常会用到需要周期性执行的任务,下面这篇文章主要给大家介绍了关于Python脚本实现定时任务的最佳方法,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-05-05
  • python检测远程服务器tcp端口的方法

    python检测远程服务器tcp端口的方法

    这篇文章主要介绍了python检测远程服务器tcp端口的方法,涉及Python操作socket检测tcp端口的技巧,需要的朋友可以参考下
    2015-03-03
  • Python3.8中如何使用print打印变量

    Python3.8中如何使用print打印变量

    这篇文章主要介绍了Python3.8中如何使用print打印变量问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-11-11
  • python+pygame实现坦克大战

    python+pygame实现坦克大战

    这篇文章主要为大家详细介绍了python+pygame实现坦克大战,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-09-09
  • Pytorch使用VGG16模型进行预测猫狗二分类实战

    Pytorch使用VGG16模型进行预测猫狗二分类实战

    VGG16是Visual Geometry Group的缩写,它的名字来源于提出该网络的实验室,本文我们将使用PyTorch来实现VGG16网络,用于猫狗预测的二分类任务,我们将对VGG16的网络结构进行适当的修改,以适应我们的任务,需要的朋友可以参考下
    2023-08-08
  • Python PaddleNLP开源实现快递单信息抽取

    Python PaddleNLP开源实现快递单信息抽取

    这篇文章主要为大家介绍了Python PaddleNLP开源项目实现对快递单信息抽取,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06
  • python 3.0 模拟用户登录功能并实现三次错误锁定

    python 3.0 模拟用户登录功能并实现三次错误锁定

    Python的3.0版本,常被称为Python 3000,或简称Py3k。这篇文章主要介绍了python 3.0 模拟用户登录功能并实现三次错误锁定,需要的朋友可以参考下
    2017-11-11
  • python3实现公众号每日定时发送日报和图片

    python3实现公众号每日定时发送日报和图片

    这篇文章主要为大家详细介绍了python3实现公众号每日定时发送日报和图片,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-02-02
  • python 使用paramiko模块进行封装,远程操作linux主机的示例代码

    python 使用paramiko模块进行封装,远程操作linux主机的示例代码

    这篇文章主要介绍了python 使用paramiko模块进行封装,远程操作linux主机的示例代码,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下
    2020-12-12

最新评论