pytorch 加载(.pth)格式的模型实例


Posted in Python onAugust 20, 2019

有一些非常流行的网络如 resnet、squeezenet、densenet等在pytorch里面都有,包括网络结构和训练好的模型。

pytorch自带模型网址:https://pytorch-cn.readthedocs.io/zh/latest/torchvision/torchvision-models/

按官网加载预训练好的模型:

import torchvision.models as models
 
# pretrained=True就可以使用预训练的模型
resnet18 = models.resnet18(pretrained=True)
print(resnet18)

报错如下:

requests.exceptions.ConnectionError: ('Connection aborted.', TimeoutError(10060, '由于连接方在一段时间后没有正确答复或连接的主机没有反应,连接尝试失败。', None, 10060, None))

主要是因为代码会去远端下载模型的参数,而国内的网一般连接不上,这是我们需要手动去下载你要的预训练网络。

通过地址下载,地址有两种获取方式:

1.从报错里面获取,上述代码运行时会出现这样一行信息:

Downloading: "https://download.pytorch.org/models/resnet18-5c106cde.pth" to C:\Users\Luo/.torch\models\resnet18-5c106cde.pth

复制这个网址到浏览器,有可能打不开,去掉https://,直接输入download.pytorch.org/models/resnet18-5c106cde.pth就可以下载了。

2.从pytorch的github下找模型的地址:https://github.com/pytorch/vision/tree/master/torchvision/models

找到对应模型名称点进去找地址

pytorch 加载(.pth)格式的模型实例

下载好后自行保存,我是直接存在pytorch models里面

接下来就是运行这个.pth文件。首先要判断是保存的整个网络结构加参数呢,还是只保存了参数,可以测试一下。这是我的模型是squeezenet1_1,你可以测试自己下载的模型

import torch
pthfile = r'E:\anaconda\app\envs\luo\Lib\site-packages\torchvision\models\squeezenet1_1.pth'
net = torch.load(pthfile)
print(net)

结果为

pytorch 加载(.pth)格式的模型实例

很明显就是只保存了参数,这是我们要换个方法加载模型

import torch
import torchvision.models as models
 
# pretrained=True就可以使用预训练的模型
net = models.squeezenet1_1(pretrained=False)
pthfile = r'E:\anaconda\app\envs\luo\Lib\site-packages\torchvision\models\squeezenet1_1.pth'
net.load_state_dict(torch.load(pthfile))
print(net)

结果;

pytorch 加载(.pth)格式的模型实例

这下就加载好预训练模型了

以上这篇pytorch 加载(.pth)格式的模型实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Pycharm学习教程(1) 定制外观
May 02 Python
Python实现基于多线程、多用户的FTP服务器与客户端功能完整实例
Aug 18 Python
Python实现的选择排序算法原理与用法实例分析
Nov 22 Python
python调用Delphi写的Dll代码示例
Dec 05 Python
Python 对输入的数字进行排序的方法
Jun 23 Python
TensorFlow命名空间和TensorBoard图节点实例
Jan 23 Python
解决pytorch多GPU训练保存的模型,在单GPU环境下加载出错问题
Jun 23 Python
python中turtle库的简单使用教程
Nov 11 Python
Python如何实现Paramiko的二次封装
Jan 30 Python
Python3+Flask安装使用教程详解
Feb 16 Python
python文件目录操作之os模块
May 08 Python
python常见的占位符总结及用法
Jul 02 Python
python multiprocessing模块用法及原理介绍
Aug 20 #Python
python 并发编程 阻塞IO模型原理解析
Aug 20 #Python
PyTorch中常用的激活函数的方法示例
Aug 20 #Python
Pytorch抽取网络层的Feature Map(Vgg)实例
Aug 20 #Python
python批量解压zip文件的方法
Aug 20 #Python
pytorch获取vgg16-feature层输出的例子
Aug 20 #Python
python 并发编程 非阻塞IO模型原理解析
Aug 20 #Python
You might like
php中foreach结合curl实现多线程的方法分析
2016/09/22 PHP
php连接微软MSSQL(sql server)完全攻略
2016/11/27 PHP
使用PHPExcel实现数据批量导出为excel表格的方法(必看)
2017/06/09 PHP
thinkphp分页集成实例
2017/07/24 PHP
php微信公众号开发之快递查询
2018/10/20 PHP
HTML代码中标签的全部属性 中文注释说明
2009/03/26 Javascript
在javascript将NodeList作为Array数组处理的方法
2010/07/09 Javascript
javascript中简单的进制转换代码实例
2013/10/26 Javascript
js使下拉列表框可编辑不止是选择
2013/12/12 Javascript
JavaScript中遍历对象的property的3种方法介绍
2014/12/30 Javascript
使用VS开发 Node.js指南
2015/01/06 Javascript
百度地图api如何使用
2015/08/03 Javascript
Javascript自执行匿名函数(function() { })()的原理浅析
2016/05/15 Javascript
Javascript实现跑马灯效果的简单实例
2016/05/31 Javascript
浅谈js中子页面父页面方法 变量相互调用
2016/08/04 Javascript
jQuery+ajax实现局部刷新的两种方法
2017/06/08 jQuery
JavaScript实现带有子菜单和控件的slider轮播图效果
2017/11/01 Javascript
关于react-router/react-router-dom v4 history不能访问问题的解决
2018/01/08 Javascript
vue项目中跳转到外部链接的实例讲解
2018/09/20 Javascript
Vue3 中的数据侦测的实现
2019/10/09 Javascript
Jquery如何使用animation动画效果改变背景色的代码
2020/07/20 jQuery
[03:22]DAC最前线(第二期)—DOTA2亚洲邀请赛主赛场周边及线路探访
2015/01/24 DOTA
python实现得到一个给定类的虚函数
2014/09/28 Python
深入解读Python解析XML的几种方式
2016/02/16 Python
python绘制多个子图的实例
2019/07/07 Python
简单了解django缓存方式及配置
2019/07/19 Python
python中return的返回和执行实例
2019/12/24 Python
HTML5移动端开发中的Viewport标签及相关CSS用法解析
2016/04/15 HTML / CSS
什么是makefile? 如何编写makefile?
2013/01/02 面试题
公务员培训自我鉴定
2014/02/01 职场文书
校优秀毕业生主要事迹
2014/05/26 职场文书
公司授权委托书范文
2014/09/21 职场文书
先进党支部申报材料
2014/12/24 职场文书
公司保洁员岗位职责
2015/02/13 职场文书
水电施工员岗位职责
2015/04/11 职场文书
Redis集群节点通信过程/原理流程分析
2022/03/18 Redis