Skip to content
Related Articles
Open in App
Not now

Related Articles

Python | Tensorflow reciprocal() method

Improve Article
Save Article
  • Last Updated : 07 Jan, 2022
Improve Article
Save Article

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.reciprocal() [alias tf.math.reciprocal] provides support to calculate the reciprocal of input in Tensorflow. It expects the input in form of complex numbers as  $a+bi$ , floating point numbers and integers. The input type is tensor and if the input contains more than one element, an element-wise reciprocal is computed,  $y=1/x$ .

Syntax: tf.reciprocal(x, name=None) or tf.math.reciprocal(x, name=None)

Parameters:
x: A Tensor of type bfloat16, half, float32, float64, int32, int64, complex64 or complex128.
name (optional): The name for the operation.

Return type: A Tensor with the same size and 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([-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))

Output:

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 $ denotes that the reciprocal approaches to infinity as the input approaches to zero.

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
  
# 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()

Output:

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       ]


My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!