我想在使用theano的单个3D数组中收集的多个2D数组上执行svd,因为它可以通过numpy轻松完成:
U, S, V = numpy.linalg.svd(X)
我试过了:
U, S, V = theano.tensor.nlinalg.svd(X)
但是,似乎theano.tensor.nlinalg.svd
只接受2D数组,并且它无法同时计算多个svds:
assert x.ndim == 2, "The input of svd function should be a matrix."AssertionError:
The input of svd function should be a matrix.
如果有任何方法可以使用theano.tensor.nlinalg.svd()
中与numpy.linalg.svd()
相同的3D阵列功能,那就很好奇了。
感谢。