Broadcasting is the process of making arrays with different shapes have compatible shapes for arithmetic operations. In numpy, we can broadcast arrays. Does TensorFlow graph
yes it is supported. Open a terminal and try this:
import tensorflow as tf
#define tensors
a=tf.constant([[10,20],[30,40]]) #Dimension 2X2
b=tf.constant([5])
c=tf.constant([2,2])
d=tf.constant([[3],[3]])
sess=tf.Session() #start a session
#Run tensors to generate arrays
mat,scalar,one_d,two_d = sess.run([a,b,c,d])
#broadcast multiplication with scalar
sess.run(tf.multiply(mat,scalar))
#broadcast multiplication with 1_D array (Dimension 1X2)
sess.run(tf.multiply(mat,one_d))
#broadcast multiply 2_d array (Dimension 2X1)
sess.run(tf.multiply(mat,two_d))
sess.close()
The short answer is yes.
c.f. Tensorflow Math doc
Note: Elementwise binary operations in TensorFlow follow numpy-style broadcasting.
c.f. tf.add()
doc, or tf.multiply()
doc, etc.:
NOTE: [the operation] supports broadcasting. More about broadcasting here