在PyTorch中加载Torch7训练模型(.t7)

Aru*_*rul 6 python torch pre-trained-model pytorch

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

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

ely*_*ase 9

正确的功能是load_lua:

from torch.utils.serialization import load_lua

x = load_lua('x.t7')
Run Code Online (Sandbox Code Playgroud)


Ami*_*mir 5

从 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 模型:)