1

我想知道如何在 Theano 中制作 5D 张量。

具体来说,我尝试了dtensor = T.TensorType('float32', (False,)*5). 但是,唯一的问题是dtensor.shape返回:AttributeError: 'TensorType' object has no attribute 'shape'

dtensor = T.tensor3('float32')而如果我使用标准张量类型dtensor.shape.

4

2 回答 2

1

Theano 变量没有明确的形状信息,因为它们是符号变量,而不是数字变量。Evendtensor3 = T.tensor3(T.config.floatX)没有明确的形状。当你输入时dtensor3.shape你会得到一个对象Shape.0,但是当你dtensor3.shape.eval()得到它的值时你会得到一个错误。

然而,对于这两种情况,都可以工作并分别dtensor.ndim打印出来。53

于 2015-12-27T20:12:38.780 回答
1
dtensor = T.TensorType('float32',(False,)*5) 

只调用函数TensorType。为了使用该属性dtensor.shape,您需要将其设为对象。你可以这样做:

dtensor = T.TensorType('float32',(False,)*5) ()

如果您愿意,可以在末尾的括号内指定名称。

于 2016-05-24T20:55:03.543 回答