What Is CNN (Convolutional Neural Network)

This section provides a quick introduction of CNN (Convolutional Neural Network), which is an extension of the classical neureal network model by adding a sequence of mixed convolutional and pooling layers to the input layer.

What Is CNN (Convolutional Neural Network)? CNN is an extension of the classical neural network model by adding two types of special layers as filters to the input layer:

Note that, a large set of input features may have many small feature patterns, so we need apply multiple convolutional layers parallelly with different layers to enhance different patterns. But adding an extra parallel convolutional layer will add another set of filter features to the total number of features.

Also note that, additional convolutional layers can also be used after the feature set has been downsized by a pooling layer. Feature patterns used in a convolutional layer after a pooling layer are considered to enhance higher level feature structures.

So a sequence of mixed convolutional layers and pooling layers can be applied to the layer until you reach a good feature set size with all feature patterns preserved. Then you add some classical neural network layers, called dense layers, to complete a CNN model.

Here is a good picture that illustrate a typical CNN model processing 2 dimensional input features like images (source: easy-tensorflow.com):

CNN - Convolutional and Pooling Layers for Images
CNN - Convolutional and Pooling Layers on Images

The above CNN model contains the following layers:

Table of Contents

 About This Book

 Deep Playground for Classical Neural Networks

 Building Neural Networks with Python

 Simple Example of Neural Networks

 TensorFlow - Machine Learning Platform

 PyTorch - Machine Learning Platform

CNN (Convolutional Neural Network)

What Is CNN (Convolutional Neural Network)

 What Is Convolutional Layer

 What Is Pooling Layer

 RNN (Recurrent Neural Network)

 GNN (Graph Neural Network)

 References

 Full Version in PDF/EPUB