So you’re browsing through your News Feed and once again there’s an article on Deep Learning. You keep seeing it everywhere along with all of the usual attached buzzwords. Recent grads being hired by big tech companies for well into the six-figures, working on the next big thing. There’s all kinds of new software and apps being “powered by AI”.
Deep Learning has become the main driver of many new applications and it’s time to really look at why this is the case. With so many other options that we’ve been using for so long, why Deep Learning?
Deep Learning is popular right now because it’s easy and it works.
Let me explain more!
Traditional Machine Learning approaches worked like the top half of the picture above. You would have to design a feature extraction algorithm which generally involved a lot of heavy mathematics (complex design), wasn’t very efficient, and didn’t perform too well at all (accuracy level just wasn’t suitable for real-world applications). After doing all of that you would also have to design a whole classification model to classify your input given the extracted features.
That’s a lot of work!!!
Enter Deep Learning.
- With deep networks we can perform feature extraction and classification in one shot, which means we only have to design one model.
- The availability of large amounts of labelled data as well as GPUs which can process this data in parallel at high speeds enables these models to be much faster than previous methods.
- Using the back-propagation algorithm, a well-designed loss function, and millions of parameters, these deep networks are able to learn highly complex features (which had to traditionally be hand designed) i.e No more complex design!
- They’ve become fairly easy to implement, especially with high-level open source libraries such as Keras, Pytorch, and TensorFlow.
Deep Learning has really made many new applications practically feasibile. We wouldn’t have been able to make good language translators pre-deep learning, because we simply had no technique at the time that would perform well enough or at a high enough speed for a real-world application. The translator programs of the past messed up a lot. Check out this funny fail by Google translate!
Now with deep learning and GPUs we can achieve higher accuracy at a practical speed! Deep learning is also much more accessible in terms of the learning curve. Much of the open source software is very easy to use and getting a simple language translator, chat bot, or image recognizer isn’t too challenging. Less complex math and coding, more making cool stuff!
Deep learning to the rescue!