Convolution Neural Network (CNN)
Convolution Neural Networks are used extensively in image processing, classification, pattern detection/recognition and similar applications. CNN is a feed-forward neural network where neuron in one layer is connected to neuron in the next layer. This configuration forms a fully connected network. A neural network consists of input layer, several hidden layers and output layer. In CNN, the hidden layers are configured as filters or kernels. Each filter consisting of a part of the image (e.g [3 x 3] matrix) processes the image block by block and compute the weights. The activation function ( sigmoid function) computes the output and recognizes the input image.
 
Convolution Neural Network I/O
 
Convolution - Mathematical Definition
The mathematical definition of convolution from Wolfram MathWorld [21] is - A convolution is an integral that expresses the amount of overlap of one function g as it is shifted over another function f. It therefore "blends" one function with another .
 
Convolution Formulation
Convolution Function
 
Convolution theorem in mathematics and physics defines a way to transform time-domain signal to frequency-domain signal. Convolution theorem is defined as The Fourier transform of a convolution is the product of the Fourier transforms. Using Fourier transforms, frequency domain can be made to perform faster than time domain. Thus Fourier transforms are used in GPU implementation.
 
 
Analysis of the letter 7 image in CNN
Image Computation In Neural Network
 
In the simple analysis of the letter 7 in the above image, we use two [3 x 3] filters to process the image. Using CNN, the two [3 x 3] filters process the image block by block across the whole image. When a match is detected, the weights computed have a higher value than where is no match. The weight computation is vector dot product of the filter/kernel and layer's input matrix.
 
Simplified filters (kernels) used to process the image of letter 7
CNN - Filters or Kernels
 
Convolution Neural Network
Source: Mathworks CNN
 
Images will have complex shapes, edges, color patterns etc. that require deep learning techniques. The matrix sizes can be very large in real-time image processing and require extreme computing power to process images accurately.


Neural Network
 
Table of Content


Top



Revised Date: September 16th, 2024