📜  Python| TensorFlow acos() 方法

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

Python| TensorFlow acos() 方法

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

模块tensorflow.math为许多基本的数学运算提供支持。函数tf.acos() [别名tf.math.acos ] 为 Tensorflow 中的反余弦函数提供支持。它期望输入在 [-1, 1] 范围内,并以弧度形式给出输出。如果输入不在 [-1, 1] 范围内,则返回nan 。输入类型是张量,如果输入包含多个元素,则计算元素级反余弦。

代码#1:

Python3
# Importing the Tensorflow library
import tensorflow as tf
  
# A constant vector of size 6
a = tf.constant([1.0, -0.5, 3.4, 0.2, 0.0, -2],
                            dtype = tf.float32)
  
# Applying the acos function and
# storing the result in 'b'
b = tf.acos(a, name ='acos')
  
# 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
  
# A vector of size 15 with values from -1 to 1
a = np.linspace(-1, 1, 15)
  
# Applying the inverse cosine function and
# storing the result in 'b'
b = tf.acos(a, name ='acos')
  
# 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.acos") 
    plt.xlabel("X") 
    plt.ylabel("Y") 
  
    plt.show()


输出:

Input type: Tensor("Const_7:0", shape=(6, ), dtype=float32)
Input: [ 1.  -0.5  3.4  0.2  0.  -2. ]
Return type: Tensor("acos:0", shape=(6, ), dtype=float32)
Output: [0.        2.0943952       nan 1.3694384 1.5707964       nan]

代码 #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
  
# A vector of size 15 with values from -1 to 1
a = np.linspace(-1, 1, 15)
  
# Applying the inverse cosine function and
# storing the result in 'b'
b = tf.acos(a, name ='acos')
  
# 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.acos") 
    plt.xlabel("X") 
    plt.ylabel("Y") 
  
    plt.show()

输出:

Input: [-1.         -0.85714286 -0.71428571 -0.57142857 -0.42857143 -0.28571429
 -0.14285714  0.          0.14285714  0.28571429  0.42857143  0.57142857
  0.71428571  0.85714286  1.        ]
Output: [3.14159265 2.60049313 2.36639928 2.17904191 2.01370737 1.86054803
 1.7141439  1.57079633 1.42744876 1.28104463 1.12788528 0.96255075
 0.77519337 0.54109953 0.        ]