通过使用numpy,我可以将数组索引如下
x[mask==1]
假设x
和mask
都是numpy数组且mask
仅包含1
和0
。
现在我将x
和mask
都设为Tensor
,并希望模仿上述行为。我该怎么办?
答案 0 :(得分:2)
使用boolean_mask
。
实施例:
x = tf.constant([[1,2],[3,4]])
mask = tf.constant([[1,0],[0,1]])
tf.boolean_mask(x, tf.equal(mask, 1)).eval()
# array([1, 4])
答案 1 :(得分:1)
这会给你一个bolean面具
import tensorflow as tf
a = tf.Variable( [1,2,3,1] )
comparison = tf.equal( a, tf.constant( 1 ) )
start_op = tf.global_variables_initializer()
with tf.Session() as session:
session.run(tart_op)
print(session.run(comparison))
[ True False False True]