Over the years, research on convolutional neural networks (CNNs) has progressed rapidly, however the real-world deployment of these models is often limited by computing resources and memory constraints. What has also led to extensive research in ConvNets is the accuracy on difficult classification tasks that require understanding abstract concepts in images.
Another reason why CNN are hugely popular is because of their architecture — the best thing is there is no need of feature extraction. The system learns to do feature extraction and the core concept of CNN is, it uses convolution of image and filters to generate invariant features which are passed on to the next layer. The features in next layer are convoluted with different filters to generate more invariant and abstract features and the process continues till one gets final feature / output (let say face of X) which is invariant to occlusions.
Also, another key feature is that deep convolutional networks are flexible and work well on image data. As one researcher points out, convolutional layers exploit the fact that an interesting pattern can occur in any region of the image, and regions are contiguous blocks of pixels. But one of the reasons why researchers are excited about deep learning is the potential for the model to learn useful features from raw data. Now, convolutional neural networks can extract informative features from images, eliminating the need of traditional manual image processing methods.
ConvNets Industry Applications
In fact, machine learning engineer Arden Dertat in an article in Towards Data Science states that CNN is the most popular deep learning model. According to Dertat, the recent surge of interest in deep learning is thanks to the effectiveness and popularity of convnets. Such is the accuracy that CNNs have become the go-to models for a lot of industry applications. For example, they are used for recommender systems, natural language processing and more. The main advantage of CNN compared to its predecessors is that it automatically detects the important features without any human supervision. For example, given many pictures of cats and dogs, it can learn the key features for each class by itself.
Another area where we see the application of ConvNets is in the prevention of fraud, which is a big concern for telecom companies. In a bid to develop algorithms that detect early potential frauds and/or prevent them, deep learning techniques, especially ConvNets are being used to detect fraudsters in mobile communications. In a research paper, published in Science Direct, fraud datasets culled from customer details records (CDR) are used and learning features are extracted and classified to fraudulent and non-fraudulent events activity. The paper revealed how deep convolution neural networks surpassed other traditional machine learning algorithms such as random forest, support vector machines and gradient boosting classifier, especially in terms of accuracy.
- According to AI evangelist, Alexander Del Toro Barba, convolutional neural networks revolutionized the industry, due to the ability to handle large, unstructured data.
- Hence, ConvNets are extremely successful in areas where large, unstructured data is involved, such as image classification, speech recognition, natural language processing.
- ConvNets are more powerful than machine learning algorithms and are also computationally efficient.
- The trend was kickstarted in 2012 with AlexNet which was only 8 layers and how now progressed to the 152 layer ResNet.
In terms of architecture, the key building block of CNN is the convolutional layer. According to a MathWork post, a CNN convolves learned features with input data, and uses 2D convolutional layers, making this architecture well suited to processing 2D data, such as images. Since CNNs eliminate the need for manual feature extraction, one doesn’t need to select features required to classify the images. How CNN work is by extracting features directly from images and the key features are not pretrained; they are learned while the network trains on a collection of images, the post notes. It is the automated feature extraction that makes CNNs highly suited for and accurate for computer vision tasks such as object/image classification.
Try deep learning using MATLAB