📜  Python| TensorFlow 倒数()方法

📅  最后修改于: 2022-05-13 01:55:43.472000             🧑  作者: Mango

Python| TensorFlow 倒数()方法

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

模块tensorflow.math为许多基本的数学运算提供支持。函数tf.reciprocal() [别名tf.math.reciprocal ] 支持计算 Tensorflow 中输入的倒数。它期望复数形式的输入为 $a+bi$ ,浮点数和整数。输入类型是张量,如果输入包含多个元素,则计算元素倒数,  $y=1/x$ .

代码#1:

Python3
# Importing the Tensorflow library
import tensorflow as tf
  
# A constant vector of size 6
a = tf.constant([-0.5, -0.1, 0, 0.1, 0.5, 2], dtype = tf.float32)
  
# Applying the reciprocal function and
# storing the result in 'b'
b = tf.reciprocal(a, name ='reciprocal')
  
# 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))


Python3
# Importing the Tensorflow library
import tensorflow as tf
  
# Importing the NumPy library
import numpy as np
  
# Importing the matplotlib.pyplot function
import matplotlib.pyplot as plt
  
# Two vector each of size 20 with values from 0 to 10
a = np.linspace(0, 10, 20)
  
# Applying the reciprocal function and
# storing the result in 'b'
b = tf.reciprocal(a, name ='reciprocal')
  
# 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.reciprocal") 
    plt.xlabel("X") 
    plt.ylabel("Y") 
    plt.grid()
  
    plt.show()


输出:

Input type: Tensor("Const:0", shape=(6, ), dtype=float32)
Input: [-0.5 -0.1  0.   0.1  0.5  2. ]
Return type: Tensor("reciprocal:0", shape=(6, ), dtype=float32)
Output: [ -2.  -10.    inf  10.    2.    0.5]

 $ inf $ 表示随着输入接近零,倒数接近无穷大。

代码 #2:可视化

Python3

# Importing the Tensorflow library
import tensorflow as tf
  
# Importing the NumPy library
import numpy as np
  
# Importing the matplotlib.pyplot function
import matplotlib.pyplot as plt
  
# Two vector each of size 20 with values from 0 to 10
a = np.linspace(0, 10, 20)
  
# Applying the reciprocal function and
# storing the result in 'b'
b = tf.reciprocal(a, name ='reciprocal')
  
# 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.reciprocal") 
    plt.xlabel("X") 
    plt.ylabel("Y") 
    plt.grid()
  
    plt.show()

输出:

Input: [ 0.          0.52631579  1.05263158  1.57894737  2.10526316  2.63157895
  3.15789474  3.68421053  4.21052632  4.73684211  5.26315789  5.78947368
  6.31578947  6.84210526  7.36842105  7.89473684  8.42105263  8.94736842
  9.47368421 10.        ]
Output: [       inf 1.9        0.95       0.63333333 0.475      0.38
 0.31666667 0.27142857 0.2375     0.21111111 0.19       0.17272727
 0.15833333 0.14615385 0.13571429 0.12666667 0.11875    0.11176471
 0.10555556 0.1       ]