0
私は以下のクラスを定義します。Theanoの共有変数の値を変更するには?
class test:
def __init__(self):
self.X = theano.tensor.dmatrix('x')
self.W = theano.shared(value=numpy.zeros((5, 2), dtype=theano.config.floatX), name='W', borrow=True)
self.out = theano.dot(self.X, self.W)
def eval(self, X):
_eval = theano.function([self.X], self.out)
return _eval(X)
その後、私はW
行列の値を変更し、新しい値で計算してみてください。私は、次の方法でそれを実行します。
m = test()
W = np.transpose(np.array([[1.0, 2.0, 3.0, 4.0, 5.0], [2.0, 2.0, 3.0, 3.0, 3.0]]))
dn.W = theano.shared(value=W, name='W', borrow=True)
dn.eval(X)
私は(すべての要素がゼロである)__init__
に設定されているW
の値に対応し得る結果。
初期化後に明示的に設定したW
という新しい値がクラスに表示されないのはなぜですか?