# Basic Operations in TensorFlow

Credits: Forked from TensorFlow-Examples by Aymeric Damien

## Setup

Refer to the setup instructions

``````

In [1]:

import tensorflow as tf

``````
``````

In [2]:

# Basic constant operations
# The value returned by the constructor represents the output
# of the Constant op.
a = tf.constant(2)
b = tf.constant(3)

``````
``````

In [3]:

# Launch the default graph.
with tf.Session() as sess:
print "a=2, b=3"
print "Addition with constants: %i" % sess.run(a+b)
print "Multiplication with constants: %i" % sess.run(a*b)

``````
``````

a=2, b=3
Multiplication with constants: 6

``````
``````

In [5]:

# Basic Operations with variable as graph input
# The value returned by the constructor represents the output
# of the Variable op. (define as input when running session)
# tf Graph input
a = tf.placeholder(tf.int16)
b = tf.placeholder(tf.int16)

``````
``````

In [6]:

# Define some operations
mul = tf.mul(a, b)

``````
``````

In [7]:

# Launch the default graph.
with tf.Session() as sess:
# Run every operation with variable input
print "Multiplication with variables: %i" % sess.run(mul, feed_dict={a: 2, b: 3})

``````
``````

Multiplication with variables: 6

``````
``````

In [8]:

# ----------------
# More in details:
# Matrix Multiplication from TensorFlow official tutorial

# Create a Constant op that produces a 1x2 matrix.  The op is
# added as a node to the default graph.
#
# The value returned by the constructor represents the output
# of the Constant op.
matrix1 = tf.constant([[3., 3.]])

``````
``````

In [9]:

# Create another Constant that produces a 2x1 matrix.
matrix2 = tf.constant([[2.],[2.]])

``````
``````

In [10]:

# Create a Matmul op that takes 'matrix1' and 'matrix2' as inputs.
# The returned value, 'product', represents the result of the matrix
# multiplication.
product = tf.matmul(matrix1, matrix2)

``````
``````

In [11]:

# To run the matmul op we call the session 'run()' method, passing 'product'
# which represents the output of the matmul op.  This indicates to the call
# that we want to get the output of the matmul op back.
#
# All inputs needed by the op are run automatically by the session.  They
# typically are run in parallel.
#
# The call 'run(product)' thus causes the execution of threes ops in the
# graph: the two constants and matmul.
#
# The output of the op is returned in 'result' as a numpy `ndarray` object.
with tf.Session() as sess:
result = sess.run(product)
print result

``````
``````

[[ 12.]]

``````
``````

In [ ]:

``````