Deep Learning is a branch of Machine Learning specialized in Artificial Neural Networks with multiple intermediary layers.
Neural Networks with multiple layers can approximate very complex non-linear functions. That’s why Deep Learning has been very successful in CV (Computer Visions), NLP (Natural Language Processing), and Reinforcement Learning.
Deep Learning architectures include:
- Convolutional Neural Networks
- Recurrent Neural Networks
Due to its ability to learn high-order non-linear functions, Deep Learning algorithms can easily overfit small datasets. Also, Deep Learning algorithms may be computationally expensive, even for a small amount of data.
Thus, Deep Learning is not a silver bullet. Deep Learning can overfit easily with no gain to generalize the solution for simple problems over a small dataset, making it a poor choice for this domain.
However, Deep Learning has achieved stunning results for complex problems that benefit from large amounts of data, longer training time, and intense computational power.