CNN (Convolutional Neural Network) is a feed-forward neural network as the information moves from one layer to the next. CNN is also called ConvNets. It consists of hidden layers having convolution and pooling functions in addition to the activation function for introducing nonlinearity.

CNN is mainly used for image recognition. CNN first learns to recognize the components of an image (e.g. lines, corners, curves, shapes, texture etc.) and then learns to combine these components (pooling) to recognize larger structures (e.g. faces, objects etc.).

Layers in CNN

1.Convolutional Layer

2.ReLU Layer

3.Pooling Layer

4.Normalization Layer

5.Fully connected Layer

Computers see an input image as an array of pixels. Numerical representation of the pixels is processed through many layers of a CNN. Each input image passes through a series of hidden layers like convolutional layers with filters (kernels), ReLU layers, pooling layers and fully connected layers. These hidden layers perform feature extraction from the image.

Convolutional Layer

Convolution is the first layer to extract features from an input image. This layer uses a matrix filter and performs convolution operation to detect patterns in the image. Convolution of an image with different filters can perform operations such as edge detection, blur and sharpen by applying filters.

Convolution is a mathematical operation that happens between two matrices (image matrix and a filter or kernel) to form a third matrix as an output (convoluted matrix). This output is also called feature map matrix.

Conv2D (Convolution layer)

Arguments:

  • filters : Denotes the number of Feature detectors.
  • kernel_size : Denotes the shape of the feature detector. (3,3) denotes a 3 x 3 matrix.
  • strides = controls how many units the filter shifts
  • input shape : standardizes the size of the input image
  • padding(optional argument) : used to control the dimensionality of the convolved feature with respect to that of input. It can be either valid (also called zero padding/no padding) which reduces the dimension or same which preserves or increases the dimension.

#convulutional #neural networks

Understanding Convulutional Neural Networks
1.10 GEEK