如何连接具有不同形状的张量,例如[128,1]和[1,1]

时间:2018-07-19 16:10:12

标签: python tensorflow keras

我的模型生成一个形状为[128,1]的输出张量t1,我想连接另一个形状为[1,1]的张量t2。 有什么方法可以连接不同形状的张量?

我认为以下链接中的解决方案不适用于上述情况。 How to concat two tensors different shape

1 个答案:

答案 0 :(得分:0)

按照链接的答案,您可以将tf.reshape应用于形状为[128,1]的张量:

t1 = tf.placeholder(tf.float32, [128,1])
t2 = tf.placeholder(tf.float32, [1, 1])
t1_reshape=tf.reshape(t1,[-1,128])
t3 = tf.concat([t1_reshape,t2],axis=1)

with tf.Session() as sess:
    sess.run(tf.global_variables_initializer())
    t3_val = sess.run(t3, feed_dict = {t1: np.ones((128,1)), t2: np.ones((1, 1))})

print(t3_val.shape)

(1,129)