如何使用“False”将布尔掩码的大小加倍 - Tensorflow中的元素

时间:2018-05-02 13:44:46

标签: python tensorflow

在TensorFlow中有一种方法可以使用“False”元素将布尔掩码张量的大小加倍吗?换句话说,在每个元素之后我想附加一个“False”元素。

例如,我的布尔掩码如下所示:

Mask = [True False True False]

用“假”元素加倍大小后,它应该是这样的:

Mask = [True False False False True False False False]

1 个答案:

答案 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)