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 相关文章推荐
python插入排序算法实例分析
Jul 03 Python
Django的session中对于用户验证的支持
Jul 23 Python
Python聊天室实例程序分享
Jan 05 Python
Python 多核并行计算的示例代码
Nov 07 Python
python对视频画框标记后保存的方法
Dec 07 Python
python pygame实现挡板弹球游戏
Nov 25 Python
使用Python爬虫库BeautifulSoup遍历文档树并对标签进行操作详解
Jan 25 Python
python global和nonlocal用法解析
Feb 03 Python
vscode配置anaconda3的方法步骤
Aug 08 Python
python爬虫用scrapy获取影片的实例分析
Nov 23 Python
Pycharm安装python库的方法
Nov 24 Python
Python 的演示平台支持 WSGI 接口的应用
Apr 20 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实现视频文件上传完整实例
2014/08/28 PHP
PHP unlink与rmdir删除目录及目录下所有文件实例代码
2018/02/07 PHP
解决 firefox 不支持 document.all的方法
2007/03/12 Javascript
JavaScript高级程序设计(第3版)学习笔记4 js运算符和操作符
2012/10/11 Javascript
JavaScript和CSS通过expression实现Table居中显示
2013/06/28 Javascript
setInterval与clearInterval的使用示例代码
2014/01/28 Javascript
使用原生js写的一个简单slider
2014/04/29 Javascript
node.js中的fs.chown方法使用说明
2014/12/16 Javascript
JQuery的ON()方法支持的所有事件罗列
2015/02/28 Javascript
在JavaScript中操作时间之getMonth()方法的使用
2015/06/10 Javascript
浅谈Jquery中Ajax异步请求中的async参数的作用
2016/06/06 Javascript
Mongoose经常返回e11000 error的原因分析
2017/03/29 Javascript
详解AngularJS ui-sref的简单使用
2017/04/24 Javascript
node+express+ejs使用模版引擎做的一个示例demo
2017/09/18 Javascript
js保留两位小数方法总结
2018/01/31 Javascript
JS对象与json字符串相互转换实现方法示例
2018/06/14 Javascript
vue2实现搜索结果中的搜索关键字高亮的代码
2018/08/29 Javascript
解决 viewer.js 动态更新图片导致无法预览的问题
2019/05/14 Javascript
no-vnc和node.js实现web远程桌面的完整步骤
2019/08/11 Javascript
解决vue-router 切换tab标签关闭时缓存问题
2020/07/22 Javascript
Python中装饰器的一个妙用
2015/02/08 Python
浅谈Python中的zip()与*zip()函数详解
2018/02/24 Python
数组保存为txt, npy, csv 文件, 数组遍历enumerate的方法
2018/07/09 Python
Window10下python3.7 安装与卸载教程图解
2019/09/30 Python
Pytorch之保存读取模型实例
2019/12/30 Python
Python控制台实现交互式环境执行
2020/06/09 Python
python-地图可视化组件folium的操作
2020/12/14 Python
CSS3动画animation实现云彩向左滚动
2014/05/09 HTML / CSS
会计学应届毕业生推荐信
2013/11/04 职场文书
留学顾问岗位职责
2014/04/14 职场文书
党员干部一句话承诺
2014/05/30 职场文书
2015年医生个人工作总结
2015/04/25 职场文书
2015年预算员工作总结
2015/05/14 职场文书
Django rest framework如何自定义用户表
2021/06/09 Python
手把手教你实现PyTorch的MNIST数据集
2021/06/28 Python
victoriaMetrics库布隆过滤器初始化及使用详解
2022/04/05 Golang