首页 > 其他分享 >Pytorch 模型文件后缀名含义

Pytorch 模型文件后缀名含义

时间:2023-11-05 17:55:51浏览次数:37  
标签:bin pt pth onnx 含义 后缀名 Pytorch model 模型

目前常见的几种 pytorch 模型后缀名有:

.pt .pth .bin .onnx

 

其实,.pt .pth .bin 这三个后缀都是人为指定的,在保存模型的时候没有区别,但用不同后缀是为了方便区分它们所储存的内容,相当于是个标记:

格式 解释 适用场景 可对应的后缀
.pt 或 .pth PyTorch 的默认模型文件格式,用于保存和加载完整的 PyTorch 模型,包含模型的结构和参数等信息。 需要保存和加载完整的 PyTorch 模型的场景,例如在训练中保存最佳的模型或在部署中加载训练好的模型。 .pt 或 .pth
.bin 一种通用的二进制格式,可以用于保存和加载各种类型的模型和数据。 需要将 PyTorch 模型转换为通用的二进制格式的场景。 .bin
ONNX 一种通用的模型交换格式,可以用于将模型从一个深度学习框架转换到另一个深度学习框架或硬件平台。在 PyTorch 中,可以使用 torch.onnx.export 函数将 PyTorch 模型转换为 ONNX 格式。 需要将 PyTorch 模型转换为其他深度学习框架或硬件平台可用的格式的场景;另外onnx只能推理不能训练,不包含反向信息。 .onnx

 

而正式使用场景中,具体模型文件中究竟存储了什么内容,依据当时的储存代码逻辑而定:

保存场景 保存方法 文件后缀
整个模型 model = Net()
torch.save(model, PATH)
.pt .pth .bin
仅模型参数 model = Net()
torch.save(model.state_dict(), PATH)
.pt .pth .bin
checkpoints使用 model = Net()
torch.save({
'epoch': 10,
'model_state_dict': model.state_dict(),
'optimizer_state_dict': optimizer.state_dict(),
'loss': loss,
}, PATH)
.pt .pth .bin
ONNX通用保存 model = Net()
model.load_state_dict(torch.load("model.bin"))
example_input = torch.randn(1, 3)
torch.onnx.export(model, example_input, "model.onnx", input_names=["input"], output_names=["output"])
.onnx

 

参考:Pytorch格式 .pt .pth .bin .onnx 详解

标签:bin,pt,pth,onnx,含义,后缀名,Pytorch,model,模型
From: https://www.cnblogs.com/MuGeminorum/p/17810813.html

相关文章

  • 深度解析BERT:从理论到Pytorch实战
    本文从BERT的基本概念和架构开始,详细讲解了其预训练和微调机制,并通过Python和PyTorch代码示例展示了如何在实际应用中使用这一模型。我们探讨了BERT的核心特点,包括其强大的注意力机制和与其他Transformer架构的差异。关注TechLead,分享AI全维度知识。作者拥有10+年互联网服务架......
  • pytorch图像变换和增强
    pytorch图像变换和增强目录pytorch图像变换和增强总览调整大小灰度变换标准化水平垂直翻转随机旋转中心裁剪随机裁剪亮度对比度饱和度高斯模糊高斯噪声随机块中心区域参考资料总览#使用数据增强技术可以增加数据集中图像的多样性,从而提高模型的性能和泛化能力。1.尺寸变换tr......
  • 《深度学习的数学》(涌井良幸、涌井贞美著) 神经网络计算pytorch示例二
    涌井良幸、涌井贞美著的《深度学习的数学》这本书,浅显易懂。书中还用Excel示例(如下图)神经网络的计算,真是不错。但光有Excel示例还是有点欠缺的,如果有pytorch代码演示就更好了。百度了半天在网上没找到别人写的,只好自己撸一个(使用python+pytorch),供同样在学习神经网络的初学者参考......
  • 深度学习中基于pytorch的多层感知机简洁实现
    基于一个例子,总结过去一个月的学习:importtorchfromtorchimportnnfromtorch.nnimportinitimportnumpyasnpimportsyssys.path.append("..")importd2lzh_pytorchasd2lnum_inputs,num_outputs,num_hiddens=784,10,256net=nn.Sequential(d2......
  • TensorFlow、PyTorch、Keras、Scikit-learn和ChatGPT。视觉开发软件工具 Halcon、Visi
     目录TensorFlow、PyTorch、Keras、Scikit-learn和ChatGPT1.TensorFlow2.PyTorch3.Keras视觉开发软件工具Halcon、VisionPro、LabView、OpenCV,还有eVision、Mil、Sapera等。(一)、Halcon(二)OpenCV:ComputerVision(计算机视觉)(三)VisionProTensorFlow、PyTorch、Keras、Scikit-learn和......
  • C++的对象与类的含义
    C++是一门面向对象的编程语言,理解C++需要掌握类(class)和对象(object)这两个概念。C++中的类(Class)可以看做C语言中结构体(Struct)的升级版。结构体是一种构造类型,可以包含若干成员变量,每个成员变量的类型可以不同;可以通过结构体来定义结构体变量,每个变量拥有相同的性质。例如:#include<s......
  • 【深度学习】PyTorch的基本运算 与 构造简单神经网络模型
    基本运算importtorch#创建一个自定义的张量t=torch.tensor([1.0,2.0,3.0])#tensor([1.,2.,3.])#求平均值t.mean()#tensor(2.)#创建一个指定行列的张量x=torch.empty(3,5)#tensor([[0.,0.,0.,0.,0.],[0.,0.,0.,0.,0.],[0.,0.,0.,0.,0.]......
  • centos 7 下通过 conda 安装 cuda pytorch
    先查看自己的linux上显卡型号:#lspci|grep-invidia04:00.0VGAcompatiblecontroller:NVIDIACorporationGP102[GeForceGTX1080Ti](reva1)04:00.1Audiodevice:NVIDIACorporationGP102HDMIAudioController(reva1)查看是否有程序占用(如果存在占用,请停掉该程序......
  • PyTorch SAVING AND LOADING MODELS
    Saving&LoadingModelforInferenceSave/Load state_dict (Recommended)Save:torch.save(model.state_dict(),PATH)Load:model=TheModelClass(*args,**kwargs)model.load_state_dict(torch.load(PATH))model.eval()REFhttps://pytorch.org/tutorials/beginner/sa......
  • 一文读懂强化学习:RL全面解析与Pytorch实战
    在本篇文章中,我们全面而深入地探讨了强化学习(ReinforcementLearning)的基础概念、主流算法和实战步骤。从马尔可夫决策过程(MDP)到高级算法如PPO,文章旨在为读者提供一套全面的理论框架和实用工具。同时,我们还专门探讨了强化学习在多个领域,如游戏、金融、医疗和自动驾驶等的具体应用......