Apply boolean mask to tensor.
tf.compat.v2.boolean_mask( tensor, mask, axis=None, name='boolean_mask' )
Numpy equivalent is
# 1-D example tensor = [0, 1, 2, 3] mask = np.array([True, False, True, False]) boolean_mask(tensor, mask) # [0, 2]
0 < dim(mask) = K <= dim(tensor), and
mask's shape must match the first K dimensions of
tensor's shape. We then have:
boolean_mask(tensor, mask)[i, j1,...,jd] = tensor[i1,...,iK,j1,...,jd] where
(i1,...,iK) is the ith
True entry of
mask (row-major order). The
axis could be used with
mask to indicate the axis to mask from. In that case,
axis + dim(mask) <= dim(tensor) and
mask's shape must match the first
axis + dim(mask) dimensions of
tf.ragged.boolean_mask, which can be applied to both dense and ragged tensors, and can be used if you need to preserve the masked dimensions of
tensor (rather than flattening them, as
| ||N-D tensor.|
| ||K-D boolean tensor, K <= N and K must be known statically.|
| || A 0-D int Tensor representing the axis in |
| ||A name for this operation (optional).|
| (N-K+1)-dimensional tensor populated by entries in |
| ||If shapes do not conform.|
# 2-D example tensor = [[1, 2], [3, 4], [5, 6]] mask = np.array([True, False, True]) boolean_mask(tensor, mask) # [[1, 2], [5, 6]]
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.