Reason behind performing dot product on Convolutional Neural networks I was recently exploring CNNs and came to know that initial step consists of multiplying pixels of the input image with the corresponding value in the kernel(dot product of kernel and input image).
What exactly is the reason or intuition behind multiplying individual pixel value and why not add or subtract or divide ?

The most basic operation in a Convolutional neural network is the convolution operation. Given a signal $\mathbf{x}$, which can represent a 1D audio signal or a 2D image, the convolution operation transforms this signal into another signal $\mathbf{y}$ that contains different frequency components.
In the context of classification, the purpose of the convolution operation, together with the activation and pooling operations, is to extract features from the input signal $\mathbf{x}$. Because the outputs of the convolution operation are well-understood, and because a CNN contains less parameters than a fully-connected network, which is more prone to over-fitting, we choose to use the convolution operation.
Here are some resources to better understand the convolution operation:

*

*The Scientist and Engineer's Guide to Digital Signal Processing

*Chapter 6 of this book
