2015-11-15 17 views
5

Mam program jest napisany w python i mam model ConvNet przeszkolony przy użyciu Toch7. Chciałbym wywołać forward i backpro do modelu z programu Pythona, ponieważ trudno jest go napisać ponownie w lua.Zadzwoń do funkcji torch7 (Lua) z pythona?

Masz pomysł?

Odpowiedz

2

Myślę, że masz teraz o wiele lepsze rozwiązanie, które jest lutorpy. Różni się od pytorcha, masz silnik lua w pythonie, więc jest bardziej elastyczny do importowania dowolny moduł lua i kod w python, i jest łatwy w użyciu i elastyczny. Dla pytorcha masz tylko bardzo mało przeniesiony moduł, który możesz użyć bezpośrednio w pythonie.

Dzięki lutorpy możesz łatwo i szybko przekonwertować numipa i tensor palnika.

Dla Ciebie przypadku można napisać kod w python tak:

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) 

Krótkie porównanie między innej biblioteki: How can I load and use torch deep learning models from python?

+1

pytorch autor tutaj. pytorch zawiera pełny silnik lua. Będzie działał luajit (linux) lub lua (mac). Możesz teraz zaimportować własne klasy lua. Zobacz na przykład https://github.com/hughperkins/pytorch-residual-networks lub https://github.com/hughperkins/cifar.pakcji –

Powiązane problemy