我在一些代码示例中看到,人们使用 .pwf 作为模型文件保存格式。但在 PyTorch 文档中,建议使用 .pt 和 .pth。我使用 .pwf 并且在小型 1->16->16 卷积网络中工作得很好。
我的问题是这些格式之间有什么区别?为什么 PyTorch 文档中甚至不推荐 .pwf 扩展名,为什么人们仍然使用它?
原文由 Asil 发布,翻译遵循 CC BY-SA 4.0 许可协议
我在一些代码示例中看到,人们使用 .pwf 作为模型文件保存格式。但在 PyTorch 文档中,建议使用 .pt 和 .pth。我使用 .pwf 并且在小型 1->16->16 卷积网络中工作得很好。
我的问题是这些格式之间有什么区别?为什么 PyTorch 文档中甚至不推荐 .pwf 扩展名,为什么人们仍然使用它?
原文由 Asil 发布,翻译遵循 CC BY-SA 4.0 许可协议
文件扩展名不会更改已保存文件中的任何内容。推荐的扩展名只是为了让大家认出它其实是从pytorch中保存下来的模型而已。然而,pytorch 实际上使用了 python 内置的 pickle 模块( https://docs.python.org/2/library/pickle.html )
原文由 Paul 发布,翻译遵循 CC BY-SA 4.0 许可协议
2 回答5.2k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
4 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
3 回答1.2k 阅读✓ 已解决
2 回答848 阅读✓ 已解决
1 回答1.7k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
2 回答1.3k 阅读✓ 已解决
2 回答554 阅读✓ 已解决
2 回答29.5k 阅读✓ 已解决
2 回答1.5k 阅读✓ 已解决
列出的扩展之间没有区别:
.pt
、.pth
、.pwf
。可以使用他想要的任何扩展名。因此,如果您使用torch.save()
保存模型,那么它默认使用 python pickle (pickle_module=pickle
) 来保存对象和一些元数据。因此,您可以自由选择所需的扩展,只要它不会与任何其他标准化扩展发生冲突。话虽如此,但 不 建议在检查点模型时使用
.pth
扩展名,因为它与 Python 路径(.pth
)配置文件 冲突。因此,我自己使用.pth.tar
或.pt
但不使用.pth
或任何其他扩展。PyTorch 中检查点模型的标准方法尚未最终确定。在撰写本文时,这是一个未解决的问题: 为模型推荐不同的文件扩展名(.PTH 是 Python 的特殊扩展名)- issues/14864
@soumith 建议 使用:
.pt
用于 pickle 格式的检查点模型.ptc
用于pytorch编译的检查点模型(用于JIT)