当前位置: 首页>>代码示例>>用法及示例精选>>正文


Python - Tensorflow abs()用法及代码示例

Tensorflow是Google开发的开源机器学习库。它的应用之一是开发深度神经网络。

模块tensorflow.math为许多基本的数学运算提供支持。功能tf.abs()[别名tf.math.abs]为Tensorflow中的绝对功能提供支持。它期望以复数形式输入为 $a+bi$ 或浮点数。输入类型为张量,如果输入包含多个元素,则将按元素计算绝对值。

对于复数 $a+bi$ ,绝对值计算为 \sqrt{a^2+b^2}
对于浮点数 $a$ ,绝对值计算为 $a if $a>=0,  else -a. $


用法:tf.abs(x, name=None) or tf.math.abs(x, name=None)

参数
x:类型为float16,float32,float64,int32,int64,complex64或complex128的Tensor或SparseTensor。
name(可选):操作的名称。

返回类型:具有与x相同的大小和类型的Tensor或SparseTensor,具有绝对值。对于complex64或complex128输入,返回的Tensor将分别为float32或float64类型。

代码1:用于浮点数

# Importing the Tensorflow library 
import tensorflow as tf 
  
# A constant vector of size 5 
a = tf.constant([-0.5, -0.1, 0, 0.1, 0.5], dtype = tf.float32) 
  
# Applying the abs function and 
# storing the result in 'b' 
b = tf.abs(a, name ='abs') 
  
# Initiating a Tensorflow session 
with tf.Session() as sess:
    print('Input type:', a) 
    print('Input:', sess.run(a)) 
    print('Return type:', b) 
    print('Output:', sess.run(b))

输出:

Input type:Tensor("Const:0", shape=(5, ), dtype=float32)
Input:[-0.5 -0.1  0.   0.1  0.5]
Return Type:Tensor("abs:0", shape=(5, ), dtype=float32)
Output:[0.5 0.1 0.  0.1 0.5]

代码2:可视化

# Importing the Tensorflow library 
import tensorflow as tf 
  
# Importing the NumPy library 
import numpy as np 
  
# Importing the matplotlib.pylot function 
import matplotlib.pyplot as plt 
  
# A vector of size 11 with values from -5 to 5 
a = np.linspace(-5, 5, 11) 
  
# Applying the absolute function and 
# storing the result in 'b' 
b = tf.abs(a, name ='abs') 
  
# Initiating a Tensorflow session 
with tf.Session() as sess:
    print('Input:', a) 
    print('Output:', sess.run(b)) 
    plt.plot(a, sess.run(b), color = 'red', marker = "o")  
    plt.title("tensorflow.abs")  
    plt.xlabel("X")  
    plt.ylabel("Y")  
  
    plt.show()

输出:

Input:[-5. -4. -3. -2. -1.  0.  1.  2.  3.  4.  5.]
Output:[5. 4. 3. 2. 1. 0. 1. 2. 3. 4. 5.]

代码3:用于复数

# Importing the Tensorflow library 
import tensorflow as tf 
  
# A constant vector of size 2 
a = tf.constant([[-2.25 + 4.75j], [-3.25 + 5.75j]], 
                              dtype = tf.complex64) 
  
# Applying the abs function and 
# storing the result in 'b' 
b = tf.abs(a, name ='abs') 
  
# Initiating a Tensorflow session 
with tf.Session() as sess:
    print('Input type:', a) 
    print('Input:', sess.run(a)) 
    print('Return type:', b) 
    print('Output:', sess.run(b))

输出:

Input type:Tensor("Const_1:0", shape=(2, 1), dtype=complex64)
Input:[[-2.25+4.75j] [-3.25+5.75j]]
Return Type:Tensor("abs_1:0", shape=(2, 1), dtype=float32)
Output:[[5.255949 ] [6.6049223]]



相关用法

注:本文由纯净天空筛选整理自sanskar27jain大神的英文原创作品 Python | Tensorflow abs() method。非经特殊声明,原始代码版权归原作者所有,本译文的传播和使用请遵循“署名-相同方式共享 4.0 国际 (CC BY-SA 4.0)”协议。