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中命名空间的查找规则LEGB
Aug 06 Python
Python ftp上传文件
Feb 13 Python
Python标准库之itertools库的使用方法
Sep 07 Python
python3 破解 geetest(极验)的滑块验证码功能
Feb 24 Python
python os.path模块常用方法实例详解
Sep 16 Python
使用Python实现在Windows下安装Django
Oct 17 Python
python实现批量视频分帧、保存视频帧
May 31 Python
一篇文章弄懂Python中的可迭代对象、迭代器和生成器
Aug 12 Python
Numpy 中的矩阵求逆实例
Aug 26 Python
Python3 io文本及原始流I/O工具用法详解
Mar 23 Python
pytorch--之halfTensor的使用详解
May 24 Python
用Python监控你的朋友都在浏览哪些网站?
May 27 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实现小型站点广告管理
2006/10/09 PHP
介绍几个array库的新函数 php
2006/12/29 PHP
真正的ZIP文件操作类(php)
2007/07/21 PHP
使用XDebug调试及单元测试覆盖率分析
2011/01/27 PHP
ThinkPHP中pathinfo的访问模式、路径访问模式及URL重写总结
2014/08/23 PHP
PHP冒泡算法详解(递归实现)
2014/11/10 PHP
PhpStorm terminal无法输入命令的解决方法
2016/10/09 PHP
PHP Socket网络操作类定义与用法示例
2017/08/30 PHP
PHP session垃圾回收机制实例分析
2019/06/28 PHP
基于JQuery的cookie插件
2010/04/07 Javascript
js中生成map对象的方法
2014/01/09 Javascript
js图片自动轮播代码分享(js图片轮播)
2014/05/06 Javascript
js中利用tagname和id获取元素的方法
2016/01/03 Javascript
微信小程序仿RadioGroup改变样式的处理方案
2018/07/13 Javascript
Vue 路由 过渡动效 数据获取方法
2018/07/31 Javascript
JS中判断字符串存在和非空的方法
2018/09/12 Javascript
mpvue项目中使用第三方UI组件库的方法
2018/09/30 Javascript
微信小程序搜索功能(附:小程序前端+PHP后端)
2019/02/28 Javascript
vue实现商品列表的添加删除实例讲解
2020/05/14 Javascript
[01:07:17]EG vs Optic Supermajor 败者组 BO3 第一场 6.6
2018/06/07 DOTA
python使用百度翻译进行中翻英示例
2014/04/14 Python
python实现冒泡排序算法的两种方法
2018/03/10 Python
python使用response.read()接收json数据的实例
2018/12/19 Python
djang常用查询SQL语句的使用代码
2019/02/15 Python
150行python代码实现贪吃蛇游戏
2020/04/24 Python
python openCV自制绘画板
2020/10/27 Python
兰蔻俄罗斯官方网站:Lancome俄罗斯
2019/12/09 全球购物
酒店应聘自荐信
2013/11/09 职场文书
事假请假条范文
2014/04/11 职场文书
专家推荐信怎么写
2015/03/25 职场文书
紧急通知
2015/04/17 职场文书
学生党支部工作总结2015
2015/05/26 职场文书
法律讲堂观后感
2015/06/11 职场文书
职工食堂管理制度
2015/08/06 职场文书
Python中glob库实现文件名的匹配
2021/06/18 Python
PHP实现两种排课方式
2021/06/26 PHP