深度模型的保存及ckpt和pth的文件保存有什么区别?

这篇具有很好参考价值的文章主要介绍了深度模型的保存及ckpt和pth的文件保存有什么区别?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  1. 保存深度学习模型

当我们训练好模型之后,想要保存下来,以pytorch为例:

有两种选择:

保存方式1

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

model为训练好的模型,'mymodel.pth'为保存路径。

调用方式1

model = My_model(*args, **kwargs) #这里需要重新模型结构,My_model
model.load_state_dict(torch.load('mymodel.pth'))#这里根据模型结构,调用存储的模型参数
model.eval()

保存方式2

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

调用方式2

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

我一般选用方式2,这样调用的时候,不需要再复现模型,然后才能在模型中调用参数

  1. 不同格式的保存文件

ckpt格式:

一般情况下,用TensorFlow时保存模型都使用ckpt格式的模型文件;

  1. 依赖TensorFlow,只能在其框架下使用。

  1. 恢复模型之前需要再定义一遍网络结构,才能把变量的值恢复到网络中。

pytorch模型保存格式

即后缀名为.pt, .pth, .pkl的pytorch模型文件(它们并不是在格式上有区别,只是后缀不同而已)

pth文件是python中存储文件的常用格式;keras中则是使用.h5文件。

PB格式

优点:

  1. 它具有语言独立性,可独立运行,封闭的序列化格式,任何语言都可以解析它,它允许其他语言和深度学习框架读取、继续训练和迁移TensorFlow的模型。

  1. 它的主要使用场景是实现创建模型与使用模型的解耦,使得在推理过程中不用像ckpt格式那样重新定义一遍网络。

  1. 保存BP文件的时候,模型的变量都会变成固定的,导致模型的大小会大大较少,适合在手机端运行。文章来源地址https://www.toymoban.com/news/detail-425467.html

到了这里,关于深度模型的保存及ckpt和pth的文件保存有什么区别?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • (十)人工智能应用--深度学习原理与实战--模型的保存与加载使用

    目的:将训练好的模型保存为文件,下次使用时直接加载即可,不必重复建模训练。 神经网络模型训练好之后,可以保存为文件以持久存储,这样下次使用时就不重新建模训练,直接加载就可以。TensorfLow提供了灵活的模型保存方案,既可以同时保存网络结构和权重(即保存全模

    2024年02月13日
    浏览(54)
  • 理解 Stable Diffusion、模型检查点(ckpt)和变分自编码器(VAE)

            在探索深度学习和人工智能领域的旅途中,理解Stable Diffusion、模型检查点(ckpt)以及变分自编码器(VAE)之间的关系至关重要。这些组件共同构成了当下一些最先进图像生成系统的基础。本文将为初学者提供一个详细的概述,帮助您理解这些概念以及它们是如何协同工作

    2024年01月21日
    浏览(44)
  • 深度学习技术栈 —— Pytorch中保存与加载权重文件

    权重文件是指训练好的模型参数文件,不同的深度学习框架和模型可能使用不同的权重文件格式。以下是一些常见的权重文件格式: PyTorch 的模型格式: .pt 文件。 Darknet 的模型格式: .weight 文件。 TensorFlow 的模型格式: .ckpt 文件。 一、参考文章或视频链接 [1] Navigating Mode

    2024年01月19日
    浏览(55)
  • 将pytorch的pth文件固化为pt文件

    说明 我参考了一个开源的人像语义分割项目mobile_phone_human_matting,这个项目提供了预训练模型,我想要将该模型固化,然后转换格式后在嵌入式端使用。 该项目保存模型的代码如下: 转换代码 上面代码保存了state_dict, 所以保存的文件中是不含模型结构的,固化时需要从代码

    2024年02月10日
    浏览(42)
  • 文件夹路径保存不同,什么批量修改名称

    在日常工作中不知道大家有没有遇到过,需要批量修改文件夹名称,并且文件夹保存路径不同呢,像这种情况到底不能批量修改呢。我也问了很多身边的朋友,他们有的说,他一般都修改保存路径是同一个,还很少遇到像我这样情况,他们给的建议是,分次修改,一次修改同

    2024年02月05日
    浏览(50)
  • 【浏览器篇】记录下浏览器保存PDF文件不同方式的小区别

    以前不太注意这些,最近搞文档比较多才发现为何保存的一部分PDF文件里面字体可以复制可以搜索,一部分保存的PDF里面的字体却无法复制、无法搜索等,发现是不同保存方式得到的文档权限不一样,做个记录!—【蘇小沐】 1.实验环境 系统 版本 Windows 11 专业工作站版 22H

    2024年02月12日
    浏览(50)
  • 【PCB专题】什么是金属化孔(PTH)和非金属化孔(NPTH)

    计出来的,并不是放在那里好看的,每个不同的孔洞都有其目的。一般来说孔洞越多,PCB的成本也越高。 PCB 中的孔类型大体上可以被区分为PTH(Plating Through Hole)电镀导通孔,和NPTH(None Plating Through Hole)非电镀导通孔两大类。这里说的通孔是指从PCB的一面直接贯穿到另一面

    2024年02月05日
    浏览(49)
  • PyTorch:通过pth文件查看网络结构(查看输入输出维度)

    输出(部分截图)为: 待补充

    2024年02月16日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包