位置: IT常识 - 正文

pytorch对网络层的增,删, 改, 修改预训练模型结构(pytorch自定义网络层)

编辑:rootadmin
pytorch对网络层的增,删, 改, 修改预训练模型结构 #下载模型参数model.load_state_dict(torch.load('model.pth'))#再加载网络的参数torch.load('model.pth')是获得网络参数

推荐整理分享pytorch对网络层的增,删, 改, 修改预训练模型结构(pytorch自定义网络层),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:pytorch怎么训练网络,pytorch 网络,pytorch网络搭建,pytorch定义网络,pytorch cnn网络,pytorch bp网络,pytorch输出网络结构,pytorch cnn网络,内容如对您有帮助,希望把文章链接给更多的朋友!

1.我们使用vgg11网络做示例, 看一下网络结构:

加载本地的模型:

vgg16 = models.vgg16(pretrained=False)#打印出预训练模型的参数vgg16.load_state_dict(torch.load('vgg16-397923af.pth'))

加载库中的模型

import torchimport torch.nn as nnfrom torchvision import modelsnet = models.vgg11(pretrained=True)print(net)

1)(1). 在网络中添加一层:

net网络是一个树型结构, net下面有三个结点,分别是(features, avgpoll, classifier), 我们先在features结点添加一层’lastlayer'层

net.features.add_module('lastlayer', nn.Conv2d(512,512, kernel_size=3, stride=1, padding=1))print(net) 1)(2). 在classifier结点添加一个线性层:net.classifier.add_module('Linear', nn.Linear(1000, 10))print(net)

2)(1)修改网络中的某一层(features 结点举例):net.features[8] = nn.Conv2d(512, 512, kernel_size=(3, 3), stride=(1, 1), padding=(1, 1))print(net)

 2)(2)修改网络中的某一层(classifier结点举例):net.classifier[6] = nn.Linear(1000, 5)print(net)pytorch对网络层的增,删, 改, 修改预训练模型结构(pytorch自定义网络层)

注意: 这里我尝试对Linear这一层进行更新, 但是Linear名字是字符串, 提取不出来,所以应该在之前添加网络时候, 名字不要取字符串, 否则会报错  ‘  'str' object cannot be interpreted as an integer’。 

 3)(1) 网络层的删除(features举例) classifier结点的操作相同。

直接使用nn.Sequential()对改层设置为空即可

net.features[13] = nn.Sequential()print(net)

 4)冻结网络中某些层 (直接使该层的requires_grad = False)即可, 这样在反向传播的时候,不会更新该层的参数#冻结指定层的预训练参数:net.feature[26].weight.requires_grad = False5). 第二种对网络结构的操作方法:net.features = nn.Sequential(*list(net.features.children())[:-4])

可以看到后面4层被去除了, 就是说可以使用列表切片的方法来删除网络层

net.classifier 对应 net.classifier.children()

net.features 对应 net.features.children()

  1. 先加载网络结构

自己的模型, model的类要有定义才可以, 如果在其他.py文件中,可以导入文件,然后用文件中的类实例化对象。model = torch.load(PATH)

 2.再加载网络参数

#下载模型参数

model.load_state_dict(torch.load('model.pth'))#再加载网络的参数torch.load('model.pth')是获得网络参数
本文链接地址:https://www.jiuchutong.com/zhishi/299377.html 转载请保留说明!

上一篇:vue 项目兼容 IE 浏览器(vue项目兼容ie9以上浏览器)

下一篇:【CSS】CSS 背景设置 ⑨ ( 背景半透明设置 )(css背景图)

  • 腾讯相册管家怎么删除云端照片(腾讯相册管家怎么把照片导入电脑)

    腾讯相册管家怎么删除云端照片(腾讯相册管家怎么把照片导入电脑)

  • 微信登不上去怎么回事(微信登不上去怎么办密码忘了)

    微信登不上去怎么回事(微信登不上去怎么办密码忘了)

  • 如何使用蓝牙耳机(如何使用蓝牙耳机连接手机教程vivo)

    如何使用蓝牙耳机(如何使用蓝牙耳机连接手机教程vivo)

  • 小爱音箱唤醒词修改(小爱音箱唤醒词 小爱同学更改唤醒名称)

    小爱音箱唤醒词修改(小爱音箱唤醒词 小爱同学更改唤醒名称)

  • oppo盲人模式怎么关闭(oppo盲人模式怎么返回)

    oppo盲人模式怎么关闭(oppo盲人模式怎么返回)

  • 荣耀x10发布时间(荣耀magic4发布时间)

    荣耀x10发布时间(荣耀magic4发布时间)

  • 屏蔽双绞线和非屏蔽双绞线的主要差异是什么(屏蔽双绞线和非屏蔽双绞线的特点)

    屏蔽双绞线和非屏蔽双绞线的主要差异是什么(屏蔽双绞线和非屏蔽双绞线的特点)

  • 苹果手机官翻机是什么意思(苹果手机官翻机是不是正品)

    苹果手机官翻机是什么意思(苹果手机官翻机是不是正品)

  • 微信视频保存不到相册怎么回事(微信视频保存不到手机相册)

    微信视频保存不到相册怎么回事(微信视频保存不到手机相册)

  • 计算器上的mc是什么键(计算器上的mc是什么意思)

    计算器上的mc是什么键(计算器上的mc是什么意思)

  • 红米note8怎么设置一键锁屏(红米note8怎么设置返回键)

    红米note8怎么设置一键锁屏(红米note8怎么设置返回键)

  • 手机怎么控制路由器(手机怎么控制路由器开关)

    手机怎么控制路由器(手机怎么控制路由器开关)

  • vivos5怎么安装flash插件(vivo手机怎么安装flash插件)

    vivos5怎么安装flash插件(vivo手机怎么安装flash插件)

  • 辅存储器有哪些(辅助存储器有)

    辅存储器有哪些(辅助存储器有)

  • 荣耀20pro有没有面部解锁(荣耀20pro有没有红外)

    荣耀20pro有没有面部解锁(荣耀20pro有没有红外)

  • oppoa33老是弹出空间不足(oppo老是弹出广告怎么关掉?)

    oppoa33老是弹出空间不足(oppo老是弹出广告怎么关掉?)

  • 少年儿童沉迷网络游戏的原因分析及应对策略(少年儿童沉迷网络游戏现象)

    少年儿童沉迷网络游戏的原因分析及应对策略(少年儿童沉迷网络游戏现象)

  • airport2和1的区别(airport2和1的外观区别)

    airport2和1的区别(airport2和1的外观区别)

  • iphonexs和max有啥不一样(iphonexs和max有什么区别,怎么选?)

    iphonexs和max有啥不一样(iphonexs和max有什么区别,怎么选?)

  • 三星s9文件管理在哪(三星s9文件管理怎么打开)

    三星s9文件管理在哪(三星s9文件管理怎么打开)

  • 微信加入黑明单聊天记录还在吗(微信加入黑明单后以前的信息还能看到吗)

    微信加入黑明单聊天记录还在吗(微信加入黑明单后以前的信息还能看到吗)

  • 优酷的投屏设置方法(优酷的投屏设置在哪里找)

    优酷的投屏设置方法(优酷的投屏设置在哪里找)

  • 网络电视怎么看中央台(网络电视怎么看直播电视)

    网络电视怎么看中央台(网络电视怎么看直播电视)

  • 出口免税产品如何缴纳附加税
  • 销项负数发票是代表交易没有成功吗?
  • 增值税优惠政策3%降1%
  • 个人代开房租普票需要缴纳哪些税种?
  • 税控盘专票认证登录密码正确还是登录不上去
  • 开具发票时如何选择对应的商品分类编码?
  • 预付广告费计入什么科目
  • 清理往来账管理办法
  • 捐赠纳税调增金额怎么算
  • 收购发票怎么做凭证
  • 价格调节基金费率
  • 月末应付职工薪酬计算方法
  • 一般纳税人公司卖车怎么做账
  • 大额存款提前取一部分怎么计息
  • 以前年度漏记一笔短期借款但本金利息支出记账了
  • 发票一直显示报送中怎么处理
  • 如何正确理解新制度经济学与新古典经济学的关系
  • 公司变卖废纸也需要缴税
  • 子公司与总公司的关系说明书
  • 个人独资企业是什么意思
  • 上年免税收入转内销补交税分录
  • 税控盘登不上怎么回事
  • 装载u盘
  • 小规模纳税人开票额度
  • 转出的进项税额是加还是减
  • 一次摊销法优缺点
  • macbook air怎么点击
  • 我辞职了公积金怎么交
  • cpqinet.exe是什么进程 安全吗 cpqinet进程安全性评估
  • 福利补贴属于工资吗
  • 商贸公司销货怎么做会计分录
  • 增值税专用发票查询系统官方网站
  • 机票报账行程单怎么打印
  • 中国税收居民是什么是中国公民嘛
  • php的hashtable
  • linux 高并发网络编程
  • web2.0核心
  • nodejs hook
  • php对接微信支付教程
  • 公司购买空调属于电子设备吗
  • 报销用别的发票抵用怎么入账
  • 进项发票数据导出
  • 充话费如何开公司发票
  • 财政零余额账户存款
  • 一般纳税人费用专票如何做账
  • 核定征收需要申报吗
  • wordpress图片大小设置
  • 进货该怎么进
  • 房屋扩建后折旧费怎么算
  • sql无法运行
  • 房租已付未收到发票
  • 内资非独立核算的企业
  • 预缴增值税怎么计提
  • 发现以前年度假期不满
  • 发票已付款,可以开红字吗
  • 企业购买原材料属于投资吗
  • 股东借款转增资本公积会计处理
  • 出口货物发生退运损失由外贸承担还是厂家
  • 有形资产有哪些科目
  • 企业接受非货币性资产投资的入账金额
  • 预付账款无法取得发票如何处理
  • 货币资金核算制度是什么
  • vmware虚拟机怎么克隆
  • 重装系统清空
  • .fs是什么格式
  • win8的应用商店
  • win 7关闭睡眠
  • Win7旗舰版系统镜像文件
  • cocos2dx加libevent库
  • Express作者TJ告别Node.js奔向Go
  • linux -lc
  • bash foreach
  • javascript常用函数大全
  • javascript操作网页
  • 宁波车管所作息时间
  • 弥补亏损怎么算
  • 出口退税是指对出口货物退还其在国内
  • 视同销售行为的进项税额抵扣方法?
  • 消费税征税环节
  • 河北税务怎么打不开网页
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设