Hello, everyone!
Welcome back to another interesting series on Applied Deep Learning. Last week we came across Artificial neural networks and its implementations. Today we are going to learn about CNN (convolutional Neural Networks). So let's get started…
Convolutional Neural Networks(CNN) are seen and implemented everywhere in our day to day life. CNN is probably considered the most desired deep learning architecture. These networks are quite familiar to feed-forward neural networks which we discussed in the last session. CNN undergoes the concepts of weights and biases. Neuron's arrangements are represented in the form of 3-dimensional arrays.

The limelight to CNN in recent years is all because of its immense popularity in deep learning and its effectiveness towards convents. CNN is computationally efficient and it has a unique ability that it surpassed its predecessors in terms of detecting important components without the involvement of human supervision. The spatial features of the data are identified accurately. Its special convolutional technique enables pooling operations and performs parameter sharing. Filters are considered as building blocks to CNN.

Architecture:
All the CNN models are quite familiar in their architecture as shown in the below image:
1. Convolution:
The convolutional layer is considered as the main functional block on CNN. It can merge the data sets information into a single set. Convolution is applied to input data through a convolutional filter to generate a feature map. Convolutions can perform multiple operations and visualize them with distinct feature maps. convolution operation for every filter is carried independently and results in disjoint of feature maps.
2. Non-linearity:
All the neural networks are considered to be more efficient because of non-linearity. Weight-sums and activation functions are generated with the help of a non-linearity mechanism in this CNN a unique activation function comes to picture known as RELU operation which provides the true potential to network.
3. Stride and padding:
Striding derives how the convolution filter mechanism is carried out step by step in sequential order and performs operations in receptive fields. Padding focuses mainly on the dimensionality of the feature maps and shrinking their size and maintaining the balance appropriately.
4. Pooling:
Pooling operation is carried out after the convolution is completely implemented. It is used to reduce the dimensionality function of the network in terms of parameter number reduction leading to shortening of training time and combats overfitting.
5. Hyperparameters:
In case pooling is ignored we establish 4 major Hyperparameter mechanisms to perform operations.
· Filter size
· Filter count
· Stride
· Padding
6. Fully connected and trained are the two CNN mechanisms that wrap up the architecture by connecting convolution and pooling layers that evolve in backpropagation and descent gradient.
Implementation of CNN:
The structural code of CNN focuses on 4 key factors.
Conv2D:
It results in the generation of convolutional layers under two parameters filter count and filter size. It also performs operations related to RELU nonlinearity operation and padding.

· Max pooling 2D:
Creates a maximum pooling layer that in return arguments window size. By default, the stride and window size length is 2.
·
Flatten:
The combination of convolution and pooling layers result in fully connected layers we discussed in the above concepts.
· Drop out:
The technique used for the regularization of deep neural networks to maintain the accuracy in state-art-models and adding dropout mechanisms to gain substantial levels of neural networks.
It's used to prevent overfitting during the training time to maintain proper iterations. Almost all the networks absorb dropout in networks to perform batch normalization.
Specifications:
1. Model performance is used to analyze the model performance and accuracy curves to training sets for validation.
2. Until the validation is not performed loss of training data occurs.
3. To overcome this data loss of training data augmentation mechanism comes in handy.
4. Data augmentation is achieved dynamically during the time of training. It boosts the training data sets size 50 times more than the original.
Applications of Convolutional Neural Networks:
CNN comprises vast familiar applications in our day to day life
1. Decoding Facial Recognition
2. Analyzing documents
3. Historic and environmental data collection
4. Legal, Banking, Insurance, Document digitization - Optical Character Recognition
5. Medical Image Computing - Healthcare Data Science / Predictive Analytics
6. Predictive Analytics - Drug Discovery
⇨ The contrast between ANN over CNN:
| Parameters | ANN | CNN |
| Type of Data | Tabular Data, Text Data | Image Data |
| Parameter Sharing | No | Yes |
| Fixed Length input | Yes | Yes |
| Recurrent Connections | No | No |
| Vanishing and Exploding Gradient | Yes | Yes |
| Spatial Relationship | No | Yes |
| Performance | ANN is considered to be less powerful than CNN, RNN. | CNN is considered to be more powerful than ANN, RNN. |
| Application | Facial recognition and Computer vision. | Facial recognition, text digitization, and Natural language processing. |
| Main advantages | Having fault tolerance, the ability to work with incomplete knowledge. | High accuracy in image recognition problems, Weight sharing. |
| Disadvantages | Hardware dependence, Unexplained behavior of the network. | Large training data needed, don’t encode the position and orientation of the object. |
We finally conclude that CNN is considered a fundamental deep learning technique that entrusts a wide range of topics that are evoked and visualized with the resources entrusted by CNN.

Comments
Post a Comment