|View source on GitHub|
Computes number of nonzero elements across dimensions of a tensor.
tf.math.count_nonzero( input, axis=None, keepdims=None, dtype=tf.dtypes.int64, name=None )
input along the dimensions given in
keepdims is true, the rank of the tensor is reduced by 1 for each entry in
keepdims is true, the reduced dimensions are retained with length 1.
axis has no entries, all dimensions are reduced, and a tensor with a single element is returned.
Note: Floating point comparison to zero is done by exact floating point equality check. Small values are not rounded to zero for purposes of the nonzero check.
x = tf.constant([[0, 1, 0], [1, 1, 0]]) tf.math.count_nonzero(x) # 3 tf.math.count_nonzero(x, 0) # [1, 2, 0] tf.math.count_nonzero(x, 1) # [1, 2] tf.math.count_nonzero(x, 1, keepdims=True) # [, ] tf.math.count_nonzero(x, [0, 1]) # 3
Note: Strings are compared against zero-length empty string
"". Any string with a size greater than zero is already considered as nonzero.
x = tf.constant(["", "a", " ", "b", ""]) tf.math.count_nonzero(x) # 3, with "a", " ", and "b" as nonzero strings.
| || The tensor to reduce. Should be of numeric type, |
| || The dimensions to reduce. If |
| ||If true, retains reduced dimensions with length 1.|
| || The output dtype; defaults to |
| ||A name for the operation (optional).|
|The reduced tensor (number of nonzero values).|
© 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.