Related Articles

# Python | Tensorflow log() method

• Last Updated : 10 Dec, 2018

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.log()` [alias `tf.math.log`] provides support for the natural logarithmic function in Tensorflow. It expects the input in form of complex numbers as or floating point numbers. The input type is tensor and if the input contains more than one element, an element-wise logarithm is computed, .

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

Parameters:
x: A Tensor of type bfloat16, half, float32, float64, 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:

 `# Importing the Tensorflow library``import` `tensorflow as tf`` ` `# A constant vector of size 5``a ``=` `tf.constant([``-``0.5``, ``-``0.1``, ``0``, ``0.1``, ``0.5``], dtype ``=` `tf.float32)`` ` `# Applying the log function and``# storing the result in 'b'``b ``=` `tf.log(a, name ``=``'log'``)`` ` `# 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=(5, ), dtype=float32)
Input: [-0.5 -0.1  0.   0.1  0.5]
Return type: Tensor("log:0", shape=(5, ), dtype=float32)
Output: [       nan        nan       -inf -2.3025851 -0.6931472]
``` denotes that natural logarithm dosen’t exist for negative values and denotes that it approaches to negative infinity as the input approaches zero.

Code #2: Visualization

 `# Importing the Tensorflow library``import` `tensorflow as tf`` ` `# Importing the NumPy library``import` `numpy as np`` ` `# Importing the matplotlib.pylot function``import` `matplotlib.pyplot as plt`` ` `# A vector of size 20 with values from 0 to 1 and 1 to 10``a ``=` `np.append(np.linspace(``0``, ``1``, ``10``), np.linspace(``1``, ``10``, ``10``))`` ` `# Applying the logarithmic function and``# storing the result in 'b'``b ``=` `tf.log(a, name ``=``'log'``)`` ` `# 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.abs"``) ``    ``plt.xlabel(``"X"``) ``    ``plt.ylabel(``"Y"``) ``    ``plt.grid()`` ` `    ``plt.show()`

Output:

```Input: [ 0.          0.11111111  0.22222222  0.33333333  0.44444444  0.55555556
0.66666667  0.77777778  0.88888889  1.          1.          2.
3.          4.          5.          6.          7.          8.
9.         10.        ]
Output: [       -inf -2.19722458 -1.5040774  -1.09861229 -0.81093022 -0.58778666
-0.40546511 -0.25131443 -0.11778304  0.          0.          0.69314718
1.09861229  1.38629436  1.60943791  1.79175947  1.94591015  2.07944154
2.19722458  2.30258509]
``` Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning – Basic Level Course

My Personal Notes arrow_drop_up