A to Z about Convolutional Neural Networks.

Source

In this blog, we are going to look at the following topics.

  1. About CNN
  2. Image Kernels and filters
  3. Convolutions
  4. Pooling Layers

So let’s know what is CNN Convolutional Neural Networks.

Convolutional Neural Networks (CNN) is a specific architecture of Neural Networks that are extremely effective at dealing with image data.

COMPUTER VISION — Computer Vision is a general term of using a computer program to access image data.

IMAGE KERNEL- Filters are essentially an image kernel, which is a small matrix applied to an entire image. For more details click here. Filters are referred to as convolution kernels.

Convolution– The process of passing them over an image is known as convolution.

Jobs in ML

Convolution is using a ‘kernel’ to extract certain ‘features’ from an input image. Let me explain. A kernel is a matrix, which is slid across the image and multiplied with the input such that the output is enhanced in a certain desirable manner

For example, the kernel used above is useful for sharpening the image. But what is so special about this kernel?? Consider the two input image arrangements as shown in the example below. For the first image, the center value is 3*5 + 2*-1 + 2*-1 + 2*-1 + 2*-1 = 7. The value 3 got increased to 7. For the second image, the output is 1*5+ 2*-1 + 2*-1 + 2*-1 + 2*-1 = -3. The value 1 got decreased to -3. Clearly, the contrast between 3 and 1 is increased to 7 and -3, which will, in turn, sharpen the image.

Instead of using manually made kernels for feature extraction, through Deep CNNs, we can learn these kernel values which can extract latent features.

Convolutional Layer — A convolutional layer is created when we apply multiple images to the input images. The layer will be trained to figure out the best filter weight values.

Top 4 Most Popular Ai Articles:

1. AI for CFD: Intro (part 1)

2. Using Artificial Intelligence to detect COVID-19

3. Real vs Fake Tweet Detection using a BERT Transformer Model in few lines of code

4. Machine Learning System Design

CNN also helps reduce parameters by focusing on local connectivity, not all neurons are fully connected. Instead, neurons are only connected to a subset of local neurons in the next layer.

CNN 1 Layer

CNN 2 Layers

ANN (I have already taught Artificial Neural Networks in deep in my last blog. Click here to read.

Note 2 Layers are enough for Grayscale images. For colour images, we need 3 Layers as Red Green Blue is 3 colours present in a colour image.

Note one thing that a computer won’t know a channel is red, it’s just known that there are 3 intensity channels. So to come up with this.

CNN layer is fed into another convolutional layer. This allows the networks to discover patterns within patterns, usually with more complexity for later convolutional layers.

Pooling Layer

When dealing with colour images and possibly 10s and 100s of filters we will have a large number of parameters. In order to reduce it, we use pooling layer.

Pooling layer accepts convolutional layers as input as shown in image.

MAX POOLING

  1. Taking Maximum values from 1, 3, 4 and 2 so the outcome is 4.

2. Taking Maximum values from 6, 8, 9 and 7 so the outcome is 9.

3 Similarly

Another way is taking the average of the filters. As shown below.

Pooling layer reduces the number of parameters. Pooling layer can reduce lots of small pooling kernels around 75% of the input data.

ANOTHER common techniques deployed with CNN is called Dropout.

Dropout — Dropout can be thought of as a form of regularization to help prevent overfitting. During training, units are randomly dropped, along with their connections. This helps prevents units from “co-adapting” too much.

In the next blog. I’ll be sharing hands-on Convolutional Neural Networks.

Thank You.

Don’t forget to give us your ? !


A to Z about Convolutional Neural Networks. was originally published in Becoming Human: Artificial Intelligence Magazine on Medium, where people are continuing the conversation by highlighting and responding to this story.

Via https://becominghuman.ai/a-to-z-about-convolutional-neural-networks-a9dcc3cfa735?source=rss—-5e5bef33608a—4

source https://365datascience.weebly.com/the-best-data-science-blog-2020/a-to-z-about-convolutional-neural-networks

Published by 365Data Science

365 Data Science is an online educational career website that offers the incredible opportunity to find your way into the data science world no matter your previous knowledge and experience. We have prepared numerous courses that suit the needs of aspiring BI analysts, Data analysts and Data scientists. We at 365 Data Science are committed educators who believe that curiosity should not be hindered by inability to access good learning resources. This is why we focus all our efforts on creating high-quality educational content which anyone can access online.

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Design a site like this with WordPress.com
Get started