将布尔掩码应用于张量。
用法
tf.boolean_mask(
tensor, mask, axis=None, name='boolean_mask'
)
参数
-
tensor
N-D 张量。 -
mask
K-D 布尔张量,K <= N 和 K 必须是静态已知的。 -
axis
一个 0-D int 张量,表示tensor
中要屏蔽的轴。默认情况下,axis 为 0,这将屏蔽第一个维度。否则 K + 轴 -
name
此操作的名称(可选)。
返回
-
(N-K+1) 维张量由
tensor
中的条目填充,对应于mask
中的True
值。
抛出
-
ValueError
如果形状不符合。
Numpy 等价物是 tensor[mask]
。
通常,0 < dim(mask) = K <= dim(tensor)
和 mask
的形状必须与 tensor
的形状的前 K 个维度匹配。然后我们有: boolean_mask(tensor, mask)[i, j1,...,jd] = tensor[i1,...,iK,j1,...,jd]
其中 (i1,...,iK)
是 mask
的第 i 个 True
条目(行主要顺序)。 axis
可以与 mask
一起使用来指示要屏蔽的轴。在这种情况下,axis + dim(mask) <= dim(tensor)
和 mask
的形状必须与 tensor
的形状的第一个 axis + dim(mask)
尺寸相匹配。
另请参阅:tf.ragged.boolean_mask
,它可以应用于密集和参差不齐的张量,如果您需要保留 tensor
的掩码尺寸(而不是像 tf.boolean_mask
那样将它们展平),可以使用它。
例子:
tensor = [0, 1, 2, 3] # 1-D example
mask = np.array([True, False, True, False])
tf.boolean_mask(tensor, mask)
<tf.Tensor:shape=(2,), dtype=int32, numpy=array([0, 2], dtype=int32)>
tensor = [[1, 2], [3, 4], [5, 6]] # 2-D example
mask = np.array([True, False, True])
tf.boolean_mask(tensor, mask)
<tf.Tensor:shape=(2, 2), dtype=int32, numpy=
array([[1, 2],
[5, 6]], dtype=int32)>
例子:
# 2-D example
tensor = [[1, 2], [3, 4], [5, 6]]
mask = np.array([True, False, True])
boolean_mask(tensor, mask) # [[1, 2], [5, 6]]
相关用法
- Python tf.bitcast用法及代码示例
- Python tf.broadcast_to用法及代码示例
- Python tf.bitwise.bitwise_or用法及代码示例
- Python tf.batch_to_space用法及代码示例
- Python tf.broadcast_static_shape用法及代码示例
- Python tf.broadcast_dynamic_shape用法及代码示例
- Python tf.bitwise.bitwise_and用法及代码示例
- Python tf.bitwise.bitwise_xor用法及代码示例
- Python tf.bitwise.invert用法及代码示例
- Python tf.bitwise.right_shift用法及代码示例
- Python tf.bitwise.left_shift用法及代码示例
- Python tf.compat.v1.distributions.Multinomial.stddev用法及代码示例
- Python tf.compat.v1.distribute.MirroredStrategy.experimental_distribute_dataset用法及代码示例
- Python tf.compat.v1.data.TFRecordDataset.interleave用法及代码示例
- Python tf.summary.scalar用法及代码示例
- Python tf.linalg.LinearOperatorFullMatrix.matvec用法及代码示例
- Python tf.linalg.LinearOperatorToeplitz.solve用法及代码示例
- Python tf.raw_ops.TPUReplicatedInput用法及代码示例
- Python tf.raw_ops.Bitcast用法及代码示例
- Python tf.compat.v1.distributions.Bernoulli.cross_entropy用法及代码示例
注:本文由纯净天空筛选整理自tensorflow.org大神的英文原创作品 tf.boolean_mask。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。