In this article, we will explore image classification using convolutional neural networks.
For this, we will use a simple example:
classifying whether an image is an X or an O.
We will start with the image of the letter O.
Let’s take a 6 × 6 pixel image.
It is possible to build a normal, everyday neural network that can correctly classify it.
We simply convert the 6 × 6 grid of pixels into a single column of 36 input nodes, and connect these input nodes to a hidden layer.
So here, we will have 36 connections from the 36 input nodes to a node in the hidden layer.
Each connection has a weight that we need to estimate using backpropagation.
So, to connect to this single hidden node, we need to estimate 36 weights.
However, usually the first hidden layer has more than one node.
Each additional node adds another 36 weights that we need to estimate.
As the number of pixels increases, this quickly becomes more and more impractical.
Because of this, the classification of large and complicated images is usually done using something called a convolutional neural network.
A convolutional neural network makes this practical by doing the following:
- It reduces the number of input nodes
- It tolerates small shifts in where pixels appear in the image
- It takes advantage of the correlations present in complex images
Now, let’s get back to detecting O and see how a convolutional neural network can help.
We will explore this in the next article.
Looking for an easier way to install tools, libraries, or entire repositories?
Try Installerpedia: a community-driven, structured installation platform that lets you install almost anything with minimal hassle and clear, reliable guidance.
Just run:
ipm install repo-name
… and you’re done! 🚀


Top comments (0)