Convolutional Neural Networks: What, When, How and Where
Neural networks come in many flavors and varieties. Convolutional neural networks (ConvNets or CNN) are one of the most well known and important types of neural networks. They are mainly used in the context of computer vision tasks like smart tagging of your pictures, turning your old black and white family photos into colored images, and powering vision in self-driving cars. Recently, researchers have also started exploring them in the domain of Natural Language Processing. One other noteworthy application of CNN is drug discovery, as they allow us to predict interactions between molecules and biological proteins, which paves the way for discovering new groundbreaking medical treatments. Fascinating isn’t it?! So, let’s try to understand the building blocks of these “seeing” neural networks.
How do we teach computers to “see”?
Our brains have the capacity to process visual information within as little as 13 milliseconds. To put this into perspective, it takes us 300-400 ms to blink our eyes! And all of this happens without us even realizing the complex mechanism going on in our brains. However, if we want machines to understand visual information, we need to understand how to represent images in a machine-readable format.