pytorch模型文件pth详解

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pytorch模型文件pth详解相关的知识,希望对你有一定的参考价值。

参考技术A

如上打印输出所示,pth文件通过有序字典来保持模型参数。有序字典与常规字典一样,但是在排序操作方面有一些额外的功能。常规的dict是无序的,OrderedDict能够比dict更好地处理频繁的重新排序操作。
OrderedDict有一个方法 popitem(last=True) 用于有序字典的popitem()方法返回并删除一个(键,值)对。如果last为真,则按LIFO顺序返回对;如果为假,则按FIFO顺序返回对。
OrderedDict还有一个方法 move_to_end(key,last=True) ,将现有的键移动到有序字典的两端。如果last为真,则将项目移动到右端(默认);如果last为假,则移动到开头。

如上打印所示,有序字典state_dict中每个元素都是Parameter参数,该参数是一种特殊的张量,包含data和requires_grad两个方法。其中data字段保存的是模型参数,requires_grad字段表示当前参数是否需要进行反向传播。

先建立一个字典,保存三个参数:调用torch.save(),即可保存对应的pth文件。需要注意的是若模型是由nn.Moudle类继承的模型,保存pth文件时,state_dict参数需要由 model.state_dict 指定。

当你想恢复某一阶段的训练(或者进行测试)时,那么就可以读取之前保存的网络模型参数等。

以上是关于pytorch模型文件pth详解的主要内容,如果未能解决你的问题,请参考以下文章

PyTorch教程-7:PyTorch中保存与加载tensor和模型详解

PyTorch框架训练的几种模型区别

如何加载和使用 PyTorch (.pth.tar) 模型

Pytorch加载.pth文件

PyTorch学习记录:onnx模型部署

Pytorch模型(.pth)转onnx模型(.onnx)