8

我正在使用 Torch7 库来实现神经网络。大多数情况下,我依赖预先训练的模型。在 Lua 中,我使用 torch.load 函数加载保存为 torch .t7 文件的模型。我对切换到 PyTorch( http://pytorch.org )很好奇,我阅读了文档。我找不到有关加载预训练模型的机制的任何信息。我能找到的唯一相关信息是这个页面: http: //pytorch.org/docs/torch.html

但是页面中描述的函数torch.load似乎加载了一个用pickle保存的文件。如果有人有更多关于在 PyTorch 中加载 .t7 模型的信息,请在此处分享。

4

2 回答 2

8

正确的功能是load_lua

from torch.utils.serialization import load_lua

x = load_lua('x.t7')
于 2017-02-08T09:43:31.803 回答
7

从 PyTorch 1.0 开始torch.utils.serialization,已完全删除。因此,再也没有人可以将 Lua Torch 中的模型导入 PyTorch。相反,我建议pipconda环境中安装 PyTorch 0.4.1(以便您可以在此之后将其删除)并使用此 repo将您的 Lua Torch 模型转换为 PyTorch 模型,而不仅仅是torch.nn.legacy您不能用于训练的模型。然后使用 PyTorch 1.xx 做任何事情。您还可以通过这种方式在 PyTorch 中训练转换后的 Lua Torch 模型 :)

于 2019-01-18T20:40:31.663 回答