在Tensorflow中,如何将张量添加到其他具有不同形状的张量中?

时间:2018-10-13 09:17:26

标签: python tensorflow

我使用Tensorflow。 我想添加一个张量A,其形状为[64,64](= [批大小,值]) 到另一个张量B,其形状为[64,7,7,64]。 我重塑了张量A,但是它应该具有与张量B相同的元素数量。 因此,如何重整或扩展张量A。或者是否有其他方法可以将A添加到B? 具体来说,我想将A的64个值添加到B的所有64个值中7 * 7次。 我为我的英语不好对不起。我无法很好地解释,但希望你们中的一些人理解我想说的话。谢谢。

1 个答案:

答案 0 :(得分:0)

使用broadcasting。这里有一个例子:

import tensorflow as tf
import numpy as np

A = tf.constant(np.arange(64*64), shape=(64, 64), dtype=tf.int32)
B = tf.ones(shape=(64, 7, 7, 64), dtype=tf.int32)
A_ = A[:, None, None, :]  # Shape=(64, 1, 1, 64)
result = A_ + B

with tf.Session() as sess:
    print(sess.run(result))