提交 884c824d authored 作者: James Bergstra's avatar James Bergstra

Shape_i.perform - optimization. skip _asarray() when output is provided.

上级 b931d52f
......@@ -267,7 +267,10 @@ class Shape_i(T.Op):
raise TypeError('x has too few dimensions for Shape_i', (x, self.i))
return T.Apply(self, [x], [T.lscalar()])
def perform(self, node, (x, ), (out, )):
out[0] = theano._asarray(x.shape[self.i], dtype = 'int64')
if out[0] is None:
out[0] = theano._asarray(x.shape[self.i], dtype='int64')
else:
out[0][...] = x.shape[self.i]
def grad(self, (x,), (gz,)):
return [None]
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论