A=theano.shared(np.random.randn(2,3))
B=theano.shared(np.random.randn(3,4))
C=A+B
print C
提供Elemwise{add,no_inplace}.0
我想要C的值。我怎么得到它?
答案 0 :(得分:3)
由于共享变量的形状不对齐,因此您的代码将无效。
更正您的示例,您可以
import theano
import numpy as np
A = theano.shared(np.random.randn(3, 4))
B = theano.shared(np.random.randn(3, 4))
C = A + B
然后这是可以正确评估的。如果您在命令行中工作,则C.eval()
将执行此操作。然而,更普遍和全面的方法是创建一个theano函数。
f = theano.function([], C)
然后,您可以致电f()
并获取C
的值。如果你的计算取决于其他(非共享)符号变量,你将提供必要的值作为函数的参数(这也适用于eval
,通过指定带有相关条目的字典)。