在TensorFlow中有一种方法可以使用“False”元素将布尔掩码张量的大小加倍吗?换句话说,在每个元素之后我想附加一个“False”元素。
例如,我的布尔掩码如下所示:
Mask = [True False True False]
用“假”元素加倍大小后,它应该是这样的:
Mask = [True False False False True False False False]
答案 0 :(得分:2)
创建一个具有相同形状的False
蒙版,将其与原始mask
叠加,然后用reshape
展平:
import tensorflow as tf
tf.InteractiveSession()
mask = tf.constant([True, False, True, False])
mask_false = tf.constant(False, shape=mask.shape)
mask_stack = tf.stack((mask, mask_false), axis=1)
tf.reshape(mask_stack, (-1,)).eval()
# array([ True, False, False, False, True, False, False, False], dtype=bool)