Have you ever thought how facial recognition works on social media, or how object detection helps in building self-driving cars, or how disease detection is done using visual imagery in healthcare? It’s all possible thanks to convolutional neural networks (CNN).

Introduction

Just like how a child learns to recognize objects, we need to show an algorithm, millions of pictures before it can generalize the input and make predictions for images it has never seen before.

Computers ‘see’ in a different way than we do. Their world consists of only numbers. Every image can be represented as 2-dimensional arrays of numbers, known as pixels.

Image for post

But the fact that they perceive images differently, doesn’t mean we can’t train them to recognize patterns as we do. We just have to think of what an image is different.

To teach an algorithm on how to recognize objects in images, we use a specific type of Artificial Neural Network: a Convolutional Neural Network (CNN). Their name stems from one of the most important operations in the network called convolution.

Convolutional Neural Networks

Convolutional Neural Networks(CNN or ConvNets) are ordinary neural networks that assume that the inputs are image. They are used to analyze and classify images, cluster images by similarity, and perform object recognition within a frame. For example, convolutional neural networks (ConvNets or CNNs) are used to identify faces, individuals, street signs, tumors, platypuses, and many other aspects of visual data.

Biological connection of CNN

When you first heard of the term convolutional neural networks, you may have thought of something related to neuroscience or biology, and you would be right. Sort of. CNN’s do take a biological inspiration from the visual cortex. The visual cortex has small regions of cells that are sensitive to specific regions of the visual field.

This idea was expanded upon by a fascinating experiment by Hubel and Wiesel in 1962 (Video) where they showed that some individual neuronal cells in the brain responded (or fired) only in the presence of edges of a certain orientation. For example, some neurons fired when exposed to vertical edges and some when shown horizontal or diagonal edges. Hubel and Wiesel found out that all of these neurons were organized in a columnar architecture and that together, they were able to produce visual perception. This idea of specialized components inside of a system having specific tasks (the neuronal cells in the visual cortex looking for specific characteristics) is one that machines use as well and is the basis behind CNNs.

Before you move ahead I would strongly recommend checking the below article to have a basic understanding of Neural Networks if you are a beginner in deep learning.

How Convolutional Neural Networks learn?

Images are made up of pixels. Each pixel is represented by a number between 0 and 255. Therefore each image has a digital representation which is how computers can work with images.

There are 4 major operations in CNN image detection/classification.

  1. Convolution
  2. Activation map
  3. Max pooling
  4. Flattening
  5. Fully connected layer

#neural-networks #machine-learning #deep-learning #keras #artificial-intelligence

Introduction to Convolutional Neural Networks(CNN)
1.25 GEEK