What does the convolution operation do in convolutional neural network?
An interviewer told me that you can look at each convolutional filter as a vector and when it convolves with a matrix, it is essentially doing a dot product, giving you a cosine distance. Is that right? I think it is only true when both vectors are normalised to 1, but it is not the case in convolutional neural network, where we can't control the weights in the filter since they are learnt through gradient descent. Also, this doesn't seem to explain why CNN is able to learn well.