In this article at OpenGenus, we have present the most insightful and MUST attempt questions on Convolutional Neural Network. To get an overview of this topic before going into the questions, you may go through the following articles:
Let us dive directly into the questions:
For which purpose Convolutional Neural Network is used?
Mainly to process and analyse digital images, with some success cases involving processing voice and natural language.
It is a multi purpose alghorithm that can be used for Unsupervised Learning.
Mainly to process and analyse financial models, predicting future trends.
It is a multi purpose alghorithm that can be used for Supervised Learning.
CNN has some components and parameters which works well with images. That´s why it´s mainly used to analyse and predict images.
What is the biggest advantage utilizing CNN?
Little dependence on pre processing, decreasing the needs of human effort developing its functionalities.
It is easy to understand and fast to implement.
It has the highest accuracy among all alghoritms that predicts images.
It works well both for Supervised and Unsupervised Learning.
With little dependence on pre processing, this algorhitm requires less human effort. It is actually a self learner, which makes the pre processing phase, easier.
Convolutional Neural Network has 5 basic components: Convolution, ReLU, Pooling, Flattening and Full Connection. Based on this information, please answer the questions below.
Which answer explains better the Convolution?
Detect key features in images, respecting their spatial boundaries.
It is the first step to use CNN.
Understand the model features and selecting the best.
It is a technique to standardize the dataset.
This is the component which detect features in images preserving the relationship between pixels by learning image features using small squares of input data.
Which answer explains better the ReLU?
Helps in the detection of features, decreasing the non-linearity of the image, converting negative pixels to zero. This behavior allows you to detect variations of attributes.
It is used to find the best features considering their correlation.
Helps in the detection of features, increasing the non-linearity of the image, converting positive pixels to zero. This behavior allows you to detect variations of attributes.
A technique that allows you to find outliers.
Usually a image is highly non-linear, which means varied pixel values. This is a scenario that is very difficult to a algorhitm makes correct predictions. ReLU comes to decrease the non-linearity and make the job easier.
Which answer explains better the Pooling?
It assists in the detection of features, even if they are distorted, in addition to decreasing the attribute sizes, resulting in decreased computational need. It is also very useful for extracting dominant attributes.
It assists in the detection of distorted features, in order to find dominant attributes.
Creates a pool of data in order to improve the accuracy of the alghorithm predicting images.
Decrease the features size, in order to decrease the computional power that are needed.
As a result of pooling, even if the picture were a little tilted, the largest number in a certain region of the feature map would have been recorded and hence, the feature would have been preserved. Also as another benefit, reducing the size by a very significant amount will uses less computional power.
Which answer explains better the Flattening?
Once we have the pooled feature map, this component transforms the information into a vector. It's the input we need to get on with Artificial Neural Networks.
Transform images to vectors to make it easier to predict.
Delete unnecessary features to make our dataset cleaner.
It is the last step of CNN.
In the flattening procedure, we basically take the elements in a pooled feature map and put them in a vector form. This becomes the input layer for the upcoming ANN.
Which answer explains better the Full Connection?
Full Connection acts by placing different weights in each synapse in order to minimize errors. This step can be repeated until an expected result is achieved.
Full Connection acts by placing different weights in each synapse in order to minimize errors. No iteration is needed, since we can get the best results in our first attempt.
It is the last step of CNN, where we connect the results of the earlier componentes to create a output.
It is a componente that connects diferents alghorithms in order to increase the accuracy.
It works like a ANN, assigning random weights to each synapse, the input layer is weight adjusted and put into an activation function. The output of this is then compared to the true values and the error generated is back-propagated, i.e. the weights are re-adjusted and all the processes repeated. This is done until the error or cost function is minimised.
What are the Pooling Types? What are their characteristics?
Max Pooling and Average Pooling. Max pooling returns the maximum value of the portion covered by the kernel and suppresses the Noises, while Average pooling only returns the measure of that portion.
Max Pooling and Average Pooling. Max pooling returns the maximum value of the portion covered by the kernel, while Average pooling returns the measure of that portion and suppresses the Noises.
Max Pooling and Minimum Pooling. Max pooling returns the maximum value of the portion covered by the kernel and suppresses the Noises, while Minimum pooling only returns the smallest value of that portion.
Max Pooling and Std Pooling. Max pooling returns the maximum value of the portion covered by the kernel, while Std Pooling returns the standard deviation of that portion.
It is recommended to use Max Pooling most of the time.
CNN is divided in two big steps. Feature Learning and Classification. What happens in each step?
Feature Learning has Convolution, ReLU and Pooling components, with inumerous iterations between them before move to Classification, which uses the Flattening and Full Connection components.
Feature Learning has Flattening and Full Connection components, with inumerous iterations between them before move to Classification, which uses the Convolution, ReLU and Pooling componentes.
During Feature Learning, CNN uses appropriates alghorithms to it, while during classification its changes the alghorithm in order to achive the expected result.
During Feature Learning, the algorhitm is learning about it´s dataset. Components like Convolution, ReLU and Pooling works for that. Once the features are known, the classification happens using the Flattening and Full Connection components.
What is the difference between CNN and ANN?
CNN has one or more layers of convolution units, which receives its input from multiple units.
CNN uses a more simpler alghorithm than ANN.
CNN is a easiest way to use Neural Networks.
They complete eachother, so in order to use ANN, you need to start with CNN.
The only difference is the Convolutional component, which is what makes CNN good in analysing and predict data like images. The other steps are the same.
What is the benefit to use CNN instead ANN?
Reduce the number of units in the network, which means fewer parameters to learn and reduced chance of overfitting. Also they consider the context information in the small neighborhoos. This feature is very important to achieve a better prediction in data like images.
Increase the number of units in the network, which means more parameters to learn and increase chance of overfitting. Also they consider the context information in the small neighborhoos. This feature is very important to achieve a better prediction.
There is no benefit, ANN is always better.
CNN has better results since you have more computional power.
Since digital images are a bunch of pixels with high values, makes sense use CNN to analyse them. CNN decrease their values, which is better for training phase with less computional power and less information loss.
What 'Shared Weights' means in CNN?
It is what makes CNN 'convolutional'. Forcing the neurons of one layer to share weights, the forward pass becomes the equivalente of convolving a filter over the image to produce a new image. Then the training phase become a task of learning filters, deciding what features you should look for in the data.
Sharing weights among the features, make it easier and faster to CNN predict the correct image.
It means that CNN use the weights of each feature in order to find the best model to make prediction, sharing the results and returning the average.
It calculate the feature´s weights and compare with other alghorithms in order to find the best parameters.
This feature is what makes CNN better to analyse images than ANN. The Convolutional component of CNN simplify the images structures and the algorhitm can predict better.
Read more to understand this topic better:
With this, you have the complete knowledge of Convolutional Neural Network. Enjoy.