Python| TensorFlow atanh() 方法
Tensorflow 是谷歌开发的开源机器学习库。它的应用之一是开发深度神经网络。
模块tensorflow.math为许多基本的数学运算提供支持。函数tf.atanh() [别名 tf.math.atanh] 为 Tensorflow 中的反双曲正切函数提供支持。它的域在 [-1, 1] 范围内,对于超出此范围的任何输入,它都会返回nan 。输入类型是张量,如果输入包含多个元素,则计算元素级反双曲正切。
Syntax: tf.atanh(x, name=None) or tf.math.atanh(x, name=None)
Parameters:
x: A tensor of any of the following types: float16, float32, float64, complex64, or complex128.
name (optional): The name for the operation.
Return type: A tensor with the same type as that of x.
代码#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]