Tensorflow中的2D布尔掩码

时间:2017-06-10 21:15:00

标签: python tensorflow

我有一个Tensorflow问题可能很容易。当我的面具是1D时,我试图弄清楚如何做2D boolean_mask。我有一个具有N X F维度的2D张量x和一个具有N维度的1D张量maskmask包含0和1,我希望保留xmask值为1的样本。

threshold = tf.multiply(tf.ones_like(mask), 0.5)
mask = tf.greater(mask,threshold)
x = tf.boolean_mask(x,mask)

我收到值错误,因为形状不兼容。有一个简单的方法吗?

1 个答案:

答案 0 :(得分:2)

其中threshold = tf.multiply(tf.ones_like(mask), 0.5) mask = tf.greater(mask,threshold) x = tf.boolean_mask(x,tf.tile(mask,[1,N])) 是我要将其展开的功能数量。

nav