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编写的最短路径算法
Mar 25 Python
初步介绍Python中的pydoc模块和distutils模块
Apr 13 Python
Python正规则表达式学习指南
Aug 02 Python
Django学习笔记之Class-Based-View
Feb 15 Python
python 切换root 执行命令的方法
Jan 19 Python
python ddt数据驱动最简实例代码
Feb 22 Python
树莓派4B+opencv4+python 打开摄像头的实现方法
Oct 18 Python
python实现将列表中各个值快速赋值给多个变量
Apr 02 Python
python实现猜数游戏(保存游戏记录)
Jun 22 Python
Python如何把字典写入到CSV文件的方法示例
Aug 23 Python
Django 实现图片上传和下载功能
Dec 31 Python
Django扫码抽奖平台的配置过程详解
Jan 14 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获取php,mysql,apche的版本信息示例代码
2014/01/16 PHP
PHP错误Parse error: syntax error, unexpected end of file in test.php on line 12解决方法
2014/06/23 PHP
php基于session锁防止阻塞请求的方法分析
2017/08/07 PHP
php对象工厂类完整示例
2018/08/09 PHP
php实现数组重复数字统计实例
2018/09/30 PHP
JS多物体 任意值 链式 缓冲运动
2012/08/10 Javascript
Three.js源码阅读笔记(物体是如何组织的)
2012/12/27 Javascript
juery框架写的弹窗效果适合新手
2013/11/27 Javascript
基于Angularjs+mybatis实现二级评论系统(仿简书)
2017/02/13 Javascript
Bootstrap fileinput组件封装及使用详解
2017/03/10 Javascript
Vue 2.0中生命周期与钩子函数的一些理解
2017/05/09 Javascript
Angularjs 与 bower安装和使用详解
2017/05/11 Javascript
JScript实现地址选择功能
2017/08/15 Javascript
详解使用PM2管理nodejs进程
2017/10/24 NodeJs
利用jQuery+localStorage实现一个简易的计时器示例代码
2017/12/25 jQuery
Angularjs之如何在跨域请求中传输Cookie的方法
2018/06/01 Javascript
原生JS 实现的input输入时表格过滤操作示例
2019/08/03 Javascript
[01:04:01]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS DT第一场
2014/05/24 DOTA
Django中的CACHE_BACKEND参数和站点级Cache设置
2015/07/23 Python
剖析Python的Tornado框架中session支持的实现代码
2015/08/21 Python
Python实现生成随机日期字符串的方法示例
2017/12/25 Python
python+django+sql学生信息管理后台开发
2018/01/11 Python
Django + Uwsgi + Nginx 实现生产环境部署的方法
2018/06/20 Python
Python3实现腾讯云OCR识别
2018/11/27 Python
Python查找数组中数值和下标相等的元素示例【二分查找】
2019/02/13 Python
python3+PyQt5 自定义窗口部件--使用窗口部件样式表的方法
2019/06/26 Python
python文字和unicode/ascll相互转换函数及简单加密解密实现代码
2019/08/12 Python
Pytorch 多维数组运算过程的索引处理方式
2019/12/27 Python
师范生自荐信范文
2013/10/06 职场文书
大学生入党思想汇报
2014/01/14 职场文书
公司建议书怎么写
2014/05/15 职场文书
企业环保标语
2014/06/10 职场文书
停电放假通知
2015/04/14 职场文书
门球健将观后感
2015/06/16 职场文书
抖音动画片,皮皮虾,《治愈系》动画在用这首REMIX作为背景音乐,Anak ,The last world with you完整版
2022/03/16 杂记
UNION CREATIVE《Re:从零开始的异世界生活》雷姆手办
2022/03/20 日漫