Tensorflow is an open-source machine learning library developed by Google. One of its applications is to develop deep neural networks.
The module tensorflow.math
provides support for many basic mathematical operations. Function tf.acos()
[alias tf.math.acos
] provides support for the inverse cosine function in Tensorflow. It expects the input to be in the range [-1, 1] and gives the output in radian form. It returns nan if the input does not lie in the range [-1, 1]. The input type is tensor and if the input contains more than one element, element-wise inverse cosine is computed.
Syntax: tf.acos(x, name=None) or tf.math.acos(x, name=None)
Parameters:
x: A tensor of any of the following types: bfloat16, half, float32, float64, int32, int64, complex64, or complex128.
name (optional): The name for the operation.Return type: A tensor with the same type as that of x.
Code #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)) |
Output:
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]
Code #2: Visualization
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() |
Output:
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. ]