从 python 调用 torch7 (Lua) 函数?

Call torch7 (Lua) function from python?

我有一个程序是用 python 编写的,我有使用 Toch7 训练的模型 ConvNet。我想从 python 程序调用 forward 和 backpro 到模型,因为我发现很难在 lua.

中再次编写它

有什么想法吗?

正如 Torch 作者之一在 torch7 maillist, you can try pytorch 上所建议的那样。

我认为您现在有了更好的解决方案,即 lutorpy。 与pytorch不同的是,你在python中有一个lua引擎,所以在python中导入任何lua模块和代码更加灵活],并且它易于使用且灵活。对于 pytorch,你只有很少的移植模块,你可以直接在 python 中使用。

使用 lutorpy,您可以轻松快速地在 numpy 和 torch 张量之间进行转换。

对于您的情况,您可以像这样在 python 中编写代码:

import numpy as np
import lutorpy as lua

model = torch.load('PATH TO YOUR MODEL FILE')

# generate your input data with numpy
arr = np.random.randn(100)

# convert your numpy array into torch tensor
x = torch.fromNumpyArray(arr)

# apply model forward method with "._" syntax(which is equivalent to ":" in lua)
y = model._forward(x)

不同库之间的简要比较: How can I load and use torch deep learning models from python?