Python – tensorflow.math.multiply_no_nan()
TensorFlow是谷歌设计的开源python库,用于开发机器学习模型和深度学习神经网络。 multiply_no_nan()用于寻找明智的x*y元素。它支持广播,如果y是0,即使x是无限的或NaN,也会返回0。
语法: tf.math.multiply_no_nan(x, y, name)
参数 :
- x:它是输入的张量。这个张量允许的dtype是bfloat16, half, float32, float64, uint8, int8, uint16, int16, int32, int64, complex64, complex128。
- y:它是与x相同d类型的输入张量。
- name(可选):它定义了操作的名称。
返回值:
它返回一个与x具有相同dtype的张量。
示例 1:
# Importing the library
import tensorflow as tf
# Initializing the input tensor
a = tf.constant([.2, .5, .7, 1], dtype = tf.float64)
b = tf.constant([.1, .3, 1, 5], dtype = tf.float64)
# Printing the input tensor
print('a: ', a)
print('b: ', b)
# Calculating result
res = tf.math.multiply_no_nan(x = a, y = b)
# Printing the result
print('Result: ', res)
输出:
a: tf.Tensor([0.2 0.5 0.7 1. ], shape=(4, ), dtype=float64)
b: tf.Tensor([0.1 0.3 1. 5. ], shape=(4, ), dtype=float64)
Result: tf.Tensor([0.02 0.15 0.7 5. ], shape=(4, ), dtype=float64)
例子2:复数乘法
# importing the library
import tensorflow as tf
import numpy as np
# Initializing the input tensor
a = tf.constant([-2, -5, np.inf, np.nan], dtype = tf.float64)
b = tf.constant([-1, -6, 0, 0], dtype = tf.float64)
# Printing the input tensor
print('a: ', a)
print('b: ', b)
# Calculating result
res = tf.math.multiply_no_nan(x = a, y = b)
# Printing the result
print('Result: ', res)
输出:
a: tf.Tensor([-2. -5. inf nan], shape=(4, ), dtype=float64)
b: tf.Tensor([-1. -6. 0. 0.], shape=(4, ), dtype=float64)
Result: tf.Tensor([ 2. 30. 0. 0.], shape=(4, ), dtype=float64)