Python – tensorflow.math.count_nonzero()
TensorFlow是谷歌设计的开源Python库,用于开发机器学习模型和深度学习神经网络。
count_nonzero()用于计算张量中非零元素的数量。
语法: tf.math.count_nonzero( input, axis, keepdim, dtype, name)
参数:
- input:它是一个需要被减少的张量。
- axis(可选):它定义了需要减少输入的轴。允许的范围是[-rank(input), rank(input)]。如果没有给定值,则默认为无,即输入将沿所有轴被减少。
- keepdim(可选):如果为真,将保留长度为1的缩小尺寸。
- dtype(可选):它定义了输出的dtype。默认是int32。
- name(可选):它定义了该操作的名称。
返回值:
它返回一个包含非零值数量的张量。
示例 1:
# importing the library
import tensorflow as tf
# initializing the input
a = tf.constant([1,0,2,5,0], dtype = tf.int32) # 3 non-zero
# Printing the input
print("Input: ",a)
# Counting non-zero
res = tf.math.count_nonzero(a)
# Printing the result
print("No of non-zero elements: ",res)
输出:
Input: tf.Tensor([1 0 2 5 0], shape=(5,), dtype=int32)
No of non-zero elements: tf.Tensor(3, shape=(), dtype=int64)
示例2:当输入张量为字符串类型时,“”被认为是空字符串。“”为非零。
# importing the library
import tensorflow as tf
# initializing the input
a = tf.constant([""," ","a","b"]) # 3 non-zero
# Printing the input
print("Input: ",a)
# Counting non-zero
res = tf.math.count_nonzero(a)
# Printing the result
print("No of non-zero elements: ",res)
输出:
Input: tf.Tensor([b'' b' ' b'a' b'b'], shape=(4,), dtype=string)
No of non-zero elements: tf.Tensor(3, shape=(), dtype=int64)