📜  Python| TensorFlow atanh() 方法

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

Python| TensorFlow atanh() 方法

Tensorflow 是谷歌开发的开源机器学习库。它的应用之一是开发深度神经网络。
模块tensorflow.math为许多基本的数学运算提供支持。函数tf.atanh() [别名 tf.math.atanh] 为 Tensorflow 中的反双曲正切函数提供支持。它的域在 [-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, -1, 2.4, 0.0, -6.5], dtype = tf.float32)
   
# Applying the atanh function and
# storing the result in 'b'
b = tf.atanh(a, name ='atanh')
   
# 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 hyperbolic tangent
# function and storing the result in 'b'
b = tf.atanh(a, name ='atanh')
  
# 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.atanh")
    plt.xlabel("X")
    plt.ylabel("Y")
  
    plt.show()


输出:

Input type: Tensor("Const_3:0", shape=(6, ), dtype=float32)
Input: [ 1.  -0.5 -1.   2.4  0.  -6.5]
Return type: Tensor("atanh_1:0", shape=(6, ), dtype=float32)
Output: [        inf -0.54930615        -inf         nan  0.                 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 hyperbolic tangent
# function and storing the result in 'b'
b = tf.atanh(a, name ='atanh')
  
# 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.atanh")
    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: [       -inf -1.28247468 -0.89587973 -0.64964149 -0.45814537 -0.29389333
 -0.14384104  0.          0.14384104  0.29389333  0.45814537  0.64964149
  0.89587973  1.28247468         inf]