嗨我是theano的新手,我需要[N x M * 4] dot [M x P],所以我希望第二个矩阵重复4次。
像
这样的东西MPNowPlayingInfoCenter.defaultCenter().nowPlayingInfo
但在我的情况下,我想要
import numpy as np
import theano
import theano.tensor as T
x = T.fmatrix("x")
z = x.repeat(3, axis=0)
foo = theano.function([x], z)
a = np.array([[1, 2], [3, 4]]).astype("float32")
c = foo(a)
print c
[[ 1. 2.]
[ 1. 2.]
[ 1. 2.]
[ 3. 4.]
[ 3. 4.]
[ 3. 4.]]
我怎么能这样做?
答案 0 :(得分:1)
z2 = T.tile(x, (3, 1)) # repeat 3x in the first dimension, 1x in the second
bar = theano.function([x], z2)
print(bar(a))
# [[ 1. 2.]
# [ 3. 4.]
# [ 1. 2.]
# [ 3. 4.]
# [ 1. 2.]
# [ 3. 4.]]
答案 1 :(得分:-3)
您可以使用numpy tile函数执行此操作:
>>> np.tile(np.array([[1, 2], [3, 4]]), (2, 1))
array([[1, 2],
[3, 4],
[1, 2],
[3, 4]])
其中(2,1)是沿每个轴的重复次数。你的情况应该是(4,1)