7
$\begingroup$

I am familiar with the multilayer perceptron neural network but not convolutional neural network. What is the intuition behind it?

I have learned Convolution Theorem from digital signal process literature, where "Convolution in one domain (e.g., time domain) equals point-wise multiplication in the other domain (e.g., frequency domain)."

Can I understand the convolutional neural network is similar to Fourier basis expansion that extract frequency features from data?

$\endgroup$

2 Answers 2

6
$\begingroup$

Fourier basis functions are "global", extending over the entire signal/image domain. More typically the convolution filters used in image processing/computer vision will be local. For example moving average or derivative style filters.

My understanding of ConvNets is that the filters are typically local. But rather than using a pre-defined set of filters, the filter coefficients are learned (only the window-sizes are pre-specified).


To expand on the global vs. local distinction, for FFT, one basis function gives a single (complex-valued) output for a given image, since the basis function is global. For a local filter, as in CNN, one basis function (filter) gives an image output of local filter-response over the input image. (Possibly the output image is smaller, depending on padding and stride.)

In each case the total output will be a set of filter-responses, one for each basis-function in the filter bank. For the FFT the "filters" will correspond to different frequencies for FFT. For CNNs the filters are more flexible, e.g. after training they could end up effectively being "oriented edge detectors".


Beyond this, at a high level, a key component of successful CNNs is depth, which is enabled* by nonlinearity such as max-pooling and ReLU activations. (*Since composition of linear functions would just give a linear function.) I cannot really speak from experience on the details of how this plays out.

But to speculate, both of those classic CNN nonlinearities would allow "attention focusing", by eliminating non-salient filter responses. Thus at the lower levels the CNN can implicitly accomplish feature detection and then description, while at the higher levels feature-arrangements can be used for object detection and then discrimination. So a single deep architecture can accomplish multiple tasks in the more classical end-to-end pipeline (e.g. SIFT).

$\endgroup$
4
  • $\begingroup$ thanks for the answer. I was trying to ask the different between 2d fft and CNN $\endgroup$
    – Haitao Du
    May 25, 2017 at 18:49
  • 1
    $\begingroup$ For FFT, one basis function gives a single (complex-valued) output for a given image, since the basis function is global. For a local filter, as in CNN, one basis function (filter) gives an image output of local filter-response over the input image (possibly output = smaller, depending on how near-edge windows are handled, e.g. 0-padding, etc.). In each case the total output will be a set of filter-responses, one for each basis-function in the filter bank (e.g. different frequencies for FFT; for CNN more flexible, e.g. could end up effectively being "oriented edge detectors"). $\endgroup$
    – GeoMatt22
    May 25, 2017 at 19:02
  • $\begingroup$ @hxd1011 I tried to keep my answer concise, and address mainly the direct question as I saw it. But I purposely gave some pointers to more general context, particularly in "For example moving average or derivative style filters." I believe that the ideas linked there -- scale-space/pyramid processing and feature-detectors/descriptors -- are a key part of CNN architectures, inspired by the earlier generation of top computer vision approaches. $\endgroup$
    – GeoMatt22
    May 25, 2017 at 20:02
  • $\begingroup$ I was trying to suggest you to move the insightful comments to answer to make it more complete. $\endgroup$
    – Haitao Du
    May 25, 2017 at 20:04
1
$\begingroup$

In this blog post (Deep Learning in a Nutshell: Core Concepts), the author had a very good explanation of the intuition behind convolution.

Convolution is important in physics and mathematics as it defines a bridge between the spatial and time domains (pixel with intensity 147 at position (0,30)) and the frequency domain (amplitude of 0.3, at 30Hz, with 60-degree phase) through the convolution theorem. This bridge is defined by the use of Fourier transforms: When you use a Fourier transform on both the kernel and the feature map, then the convolution operation is simplified significantly (integration becomes mere multiplication).

...

Convolution can describe the diffusion of information, for example, the diffusion that takes place if you put milk into your coffee and do not stir can be accurately modeled by a convolution operation (pixels diffuse towards contours in an image). In quantum mechanics, it describes the probability of a quantum particle being in a certain place when you measure the particle’s position (average probability for a pixel’s position is highest at contours). In probability theory, it describes cross-correlation, which is the degree of similarity for two sequences that overlap (similarity high if the pixels of a feature (e.g. nose) overlap in an image (e.g. face)). In statistics, it describes a weighted moving average over a normalized sequence of input (large weights for contours, small weights for everything else). Many other interpretations exist.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.