pytorch 更改预训练模型网络结构的方法


Posted in Python onAugust 19, 2019

一个继承nn.module的model它包含一个叫做children()的函数,这个函数可以用来提取出model每一层的网络结构,在此基础上进行修改即可,修改方法如下(去除后两层):

resnet_layer = nn.Sequential(*list(model.children())[:-2])

那么,接下来就可以构建我们的网络了:

class Net(nn.Module):
  def __init__(self , model):
    super(Net, self).__init__()
    #取掉model的后两层
    self.resnet_layer = nn.Sequential(*list(model.children())[:-2])
    
    self.transion_layer = nn.ConvTranspose2d(2048, 2048, kernel_size=14, stride=3)
    self.pool_layer = nn.MaxPool2d(32) 
    self.Linear_layer = nn.Linear(2048, 8)
    
  def forward(self, x):
    x = self.resnet_layer(x)
 
    x = self.transion_layer(x)
 
    x = self.pool_layer(x)
 
    x = x.view(x.size(0), -1) 
 
    x = self.Linear_layer(x)
    
    return x

最后,构建一个对象,并加载resnet预训练的参数就可以啦~

resnet = models.resnet50(pretrained=True)
model = Net(resnet)

以上这篇pytorch 更改预训练模型网络结构的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用python遍历指定城市的一周气温
Mar 31 Python
详解 Python 与文件对象共事的实例
Sep 11 Python
用Python删除本地目录下某一时间点之前创建的所有文件的实例
Dec 14 Python
用python统计代码行的示例(包括空行和注释)
Jul 24 Python
idea创建springMVC框架和配置小文件的教程图解
Sep 18 Python
Python装饰器简单用法实例小结
Dec 03 Python
Python中asyncio模块的深入讲解
Jun 10 Python
python画微信表情符的实例代码
Oct 09 Python
Python中生成一个指定长度的随机字符串实现示例
Nov 06 Python
使用python代码进行身份证号校验的实现示例
Nov 21 Python
TensorFlow的reshape操作 tf.reshape的实现
Apr 19 Python
用Python实现屏幕截图详解
Jan 22 Python
pytorch打印网络结构的实例
Aug 19 #Python
pytorch索引查找 index_select的例子
Aug 18 #Python
浅谈Pytorch中的torch.gather函数的含义
Aug 18 #Python
PyTorch中Tensor的维度变换实现
Aug 18 #Python
PyTorch中Tensor的拼接与拆分的实现
Aug 18 #Python
详解PyTorch中Tensor的高阶操作
Aug 18 #Python
浅析PyTorch中nn.Linear的使用
Aug 18 #Python
You might like
php获取bing每日壁纸示例分享
2014/02/25 PHP
PHP页面输出时js设置input框的选中值
2016/09/30 PHP
php使用str_shuffle()函数生成随机字符串的方法分析
2017/02/17 PHP
php基于SQLite实现的分页功能示例
2017/06/21 PHP
浅谈Laravel队列实现原理解决问题记录
2017/08/19 PHP
laravel框架创建授权策略实例分析
2019/11/22 PHP
Yii redis集合的基本使用教程
2020/06/14 PHP
jQuery Tools tab(幻灯片)
2012/07/14 Javascript
推荐40个简单的 jQuery 导航插件和教程(下篇)
2012/09/14 Javascript
javascript字符串与数组转换汇总
2015/05/26 Javascript
JS控制表单提交的方法
2015/07/09 Javascript
Javascript BOM学习小结(六)
2015/11/26 Javascript
node.js 和HTML5开发本地桌面应用程序
2016/12/13 Javascript
Angular2学习教程之组件中的DOM操作详解
2017/05/28 Javascript
JQuery用$.ajax或$.getJSON跨域获取JSON数据的实现代码
2017/09/23 jQuery
浅谈vue路径优化之resolve
2017/10/13 Javascript
Vue.set()动态的新增与修改数据,触发视图更新的方法
2018/09/15 Javascript
Electron + vue 打包桌面操作流程详解
2019/06/24 Javascript
修改vue源码实现动态路由缓存的方法
2020/01/21 Javascript
小程序分享链接onShareAppMessage的具体用法
2020/05/22 Javascript
[11:01]2014DOTA2西雅图邀请赛 冷冷带你探秘威斯汀
2014/07/08 DOTA
[46:55]Ti4 冒泡赛第二轮 LGD vs C9
2014/07/14 DOTA
Python简单实现Base64编码和解码的方法
2017/04/29 Python
python 判断网络连通的实现方法
2018/04/22 Python
Django生成PDF文档显示在网页上以及解决PDF中文显示乱码的问题
2019/07/04 Python
python将字典列表导出为Excel文件的方法
2019/09/02 Python
python双向链表原理与实现方法详解
2019/12/03 Python
德国团购网站:Groupon德国
2018/03/13 全球购物
YSL圣罗兰美妆官方旗舰店:购买YSL口红
2018/04/16 全球购物
super()与this()的区别
2016/01/17 面试题
库房管理员岗位职责
2014/03/09 职场文书
婚纱摄影师求职信范文
2014/04/17 职场文书
完美的中文自荐信
2014/05/24 职场文书
员工团队活动方案
2014/08/28 职场文书
投标人法定代表人授权委托书格式
2014/09/28 职场文书
代办出身证明书
2014/10/21 职场文书