implementing conv2d in fourier domain using np.einsum --> ValueError: einstein sum subscripts string contains too many subscripts for operand 0
import tensorflow as tf
output  = tf.einsum('ijkl,jklo-&gt;ijko', fft_x, fft_kernel)


I used tf.einsum instead of np.einsum, and it worked. 
Also as seen in above, I removed the loop and changed the equation in einsum.