将张量总和转换为实际值

时间:2016-12-08 11:44:54

标签: python theano

如何转换以下内容

Sum{acc_dtype=float64}.0

能够打印它的真实值吗?

我尝试了T.cast,但它无效。

1 个答案:

答案 0 :(得分:1)

我猜你试图直接打印张量变量,这将永远不会起作用,你总是必须通过tensor/symbolic变量定义计算,然后将实际数据/值传递给它们来实际评估这些计算。 这应该有效:

import theano
import theano.tensor as T
import numpy as np

x = T.matrix('x')
sum_0 = T.sum(x, axis=0)
sum_1 = T.sum(x, axis=1)
f0 = theano.function(inputs=[x], outputs=sum_0)
f1 = theano.function(inputs=[x], outputs=sum_1)
x_d = np.asarray([[1, 2, 3], [4, 5, 6], [7, 8, 9]], dtype=theano.config.floatX)
print('x: ', x_d)
print('sum{axis=0}: ', f0(x_d))
print('sum{axis=1}: ', f1(x_d))

我建议您浏览Theano basic tutorials然后Deep Learning tutorials