我们经常会看到后缀名为.pt, .pth, .pkl的pytorch模型文件,这几种模型文件在格式上有什么区别吗?

其实它们并不是在格式上有区别,只是后缀不同而已(仅此而已),在用torch.save()函数保存模型文件时,各人有不同的喜好,有些人喜欢用.pt后缀,有些人喜欢用.pth或.pkl.用相同的torch.save()语句保存出来的模型文件没有什么不同。

在pytorch官方的文档/代码里,有用.pt的,也有用.pth的。一般惯例是使用.pth,但是官方文档里貌似.pt更多,而且官方也不是很在意固定用一种。

模型保存与调用方式一:

保存:

torch.save(model.state_dict(), mymodel.pth)#只保存模型权重参数,不保存模型结构

调用:

model = My_model(*args, **kwargs) #这里需要重新模型结构,My_model

model.load_state_dict(torch.load(mymodel.pth))#这里根据模型结构,调用存储的模型参数

model.eval()

模型保存与调用方式一:

保存:

torch.save(model, mymodel.pth)#保存整个model的状态

调用:

model=torch.load(mymodel.pth)#这里已经不需要重构模型结构了,直接load就可以

model.eval()

补充知识:关于python 导入包 .pth文件

Python在遍历已知的库文件目录过程中,如果见到一个.pth 文件,就会将文件中所记录的路径加入到 sys.path 设置中,于是 .pth 文件说指明的库也就可以被 Python 运行环境找到了。

python中有一个.pth文件,该文件的用法是:

首先xxx.pth文件里面会书写一些路径,一行一个。

将xxx.pth文件放在特定位置,则可以让python在加载模块时,读取xxx.pth中指定的路径。

*******************************************

有时,在用import导入项目文件夹里自己写的python文件时,常常说找不到该文件,这时可以将项目路径添加到PYTHONPATH下。

暂时添加:

import sys

sys.path.append(项目路径)

这种方法只会存在内存里,一旦退出python就没有了

一劳永逸:

在 XXX/pythonXXX/site-packages/ (python 包安装路径) 下新建后缀为 .pth的文件,在其中加入你的项目路径,比如

K:\Desktop\face_detect\DFace-win64-master\src

K:\Desktop\face_detect\DFace-win64-master\src\core

*******************************************

有时候我们正在修改或调试的程序会是一个库,为修改方便,我们可能不大希望把它放到 site-packages 下面,而是更愿意把它保留在原始的工程目录中,以方便 IDE 和版本控制工具进行管理。那么怎么能让 Python 运行环境找到这个库呢?

原理上, Python 运行环境查找库文件时本质是对 sys.path 列表的遍历,如果我们想给运行环境注册新的类库进来,

要么得用代码给 sys.path 列表增加新路径;

要么得调整 PYTHONPATH 环境变量;

要么就得把库文件复制到已经在 sys.path 设置中的路径中去(比如 site-packages 目录);

这些方法都不够方便。最简单的办法是用 .pth 文件来实现。Python 在遍历已知的库文件目录过程中,如果见到一个 .pth 文件,就会将文件中所记录的路径加入到 sys.path 设置中,于是 .pth 文件说指明的库也就可以被 Python 运行环境找到了。

其实,easy_install 所依赖的 egg 包安装就是靠 site-packages 目录下的 .pth 文件添加对 egg 包的引用实现的。所以修改对应的 .pth 文件内容,就可以实现对 egg 包的卸载。

以上这篇浅谈pytorch 模型 .pt, .pth, .pkl的区别及模型保存方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

时间: 2020-05-24

pytorch保存模型pth_浅谈pytorch 模型 .pt, .pth, .pkl的区别及模型保存方式相关推荐

  1. 浅谈pytorch 模型 .pt, .pth, .pkl的区别及模型保存方式 pth中的路径加载使用

    首先xxx.pth文件里面会书写一些路径,一行一个. 将xxx.pth文件放在特定位置,则可以让python在加载模块时,读取xxx.pth中指定的路径. Python客栈送红包.纸质书 有时,在用i ...

  2. 3月3 pytorch模型保存的.pt, .pth, .pkl的pytorch模型文件,只是后缀不同而已(仅此而已),打开方式

    pytorch模型保存的格式 首先讲讲保存模型或权重参数的后缀格式,权重参数和模型参数的后缀格式一样,pytorch中最常见的模型保存使用 .pt 或者是 .pth 作为模型文件扩展名.还有其他的保存 ...

  3. linux系统pkl,pytorch模型 .pt, .pth, .pkl有什么区别及如何保存

    pytorch模型 .pt, .pth, .pkl有什么区别及如何保存 发布时间:2020-07-22 10:47:44 来源:亿速云 阅读:371 作者:小猪 小编这次要给大家分享的是pytorch ...

  4. pytorch 模型保存方式(.pt, .pth, .pkl)

    模型不同后缀名的区别 经常会看到后缀名为.pt, .pth, .pkl的pytorch模型文件,其实它们并不是在格式上有区别,只是后缀不同而已(仅此而已),在用torch.save()函数保存模型文件 ...

  5. python配置核_浅谈pytorch卷积核大小的设置对全连接神经元的影响

    3*3卷积核与2*5卷积核对神经元大小的设置 #这里kerner_size = 2*5 class CONV_NET(torch.nn.Module): #CONV_NET类继承nn.Module类 ...

  6. gather torch_浅谈Pytorch中的torch.gather函数的含义

    pytorch中的gather函数 pytorch比tensorflow更加编程友好,所以准备用pytorch试着做最近要做的一些实验. 立个flag开始学习pytorch,新开一个分类整理学习pyt ...

  7. 浅谈Nginx负载均衡与F5的区别

    转载地址: http://www.ideadata.com.cn/wisdomAction/readWisdom.do?id=75 前言 笔者最近在负责某集团网站时,同时用到了Nginx与F5,如图所 ...

  8. html代码id,浅谈html中id和name的区别实例代码

    浅谈html中id和name的区别实例代码 更新时间:2008年07月28日 23:00:55   作者: 这个是form里面的name与id的区别 我们可以通过一段代码来分析一下其中的微妙差别: 在 ...

  9. 浅谈 JDBC 中 CreateStatement 和 PrepareStatement 的区别与优劣。

    浅谈 JDBC 中 CreateStatement 和 PrepareStatement 的区别与优劣.

最新文章

  1. jQuery学习笔记一
  2. u-boot移植第三弹——移植2013.10u-boot到RealARM210 cortex-A8开发板(支持moviNAND_Fusing_Tool_v2.0)
  3. SharePoint Server和Office 365之间的混合模式集成概述
  4. kettle同步数据中文乱码问题解决
  5. Windows 8/8.1 系统备份
  6. HRBP执行工具——PDCA
  7. git pull因为主线分支问题解决
  8. UNIX 环境高级编程(六)—— 程序和进程
  9. rip和ospf vrrp vlan综合实验
  10. “Error launching Console Application PDFLaTeX ... “的解决方法
  11. 袖珍计算机英语手册,英语袖珍迷你系列-中考英语速记手册.pdf
  12. 时域信号处理——时域采样(抽样)
  13. Racecar 基于ROS通信机制的多点导航实验
  14. Arraylist去除重复元素
  15. Creating a Font for Apps and Games with Glyphs 如何使用Glyphs为应用和游戏创建字体 Lynda课程中文字幕
  16. MySQL之TPC压缩
  17. InvalidSelectorException:Message: Locator Strategy 'css selector' is not supported for this session
  18. JavaScript ES12新特性抢先体验
  19. python自动化办公读后感_《Python编程快速上手——让繁琐的工作自动化》读书笔记3...
  20. 虚拟定位的实现android,王者荣耀战区哪里分最低 王者荣耀低分战区推荐

热门文章

  1. Audified U73b 复古压缩器评测:带来复古温暖的色彩
  2. 一文搞懂 Python 私有属性 私有方法
  3. UnicodeDecodeError: 'utf-8' codec can't decode byte 0xb5 in position 0: invalid start byte解决办法
  4. Tableau-旭日图(详细操作步骤)
  5. 学习周报20200105 | CS224N
  6. 给中国学生的第二封信:从优秀到卓越
  7. ceph存储 Ceph管理平台Calamari的架构与功能分析
  8. 局域网搭建php_phpstudy8.0版本怎么搭建局域网
  9. 会声会影应该如何制作电影开幕效果
  10. php html字符转换为字符串,PHP字符串函数html_entity_decode( 把HTML实体转换为字符)