# Deep Learning

## What is Deep Learning?

Deep Learning is a subset of Machine Learning which utilizes artificial neural networks to learn. Deep learning is loosely based on the way biological neurons connect with one another to process information in the brains of animals.It uses neural networks with three or more layers to implement this. These neural networks attempt to simulate the behavior of the human brain, allowing it to learn from large amounts of data.

Deep Learning has produced notable improvements in accuracy and performance in applications such as computer vision, natural language processing, face recognition, object recognition and speech recognition.

Deep Learning is extensively used in self-driving cars, virtual assistants, fraud news detection, cancer detection and many more.

## Prerequisite

- Python programming
- Algebra- Linear algebra and matrix calculation.
- Basic machine learning- Basic algorithms and libraries such as numpy, pandas and matplotlib.

## Topics

- Neural Networks
- Hyperparameter tuning and Regularization.
- Convolutional Networks
- Recurrent Networks
- Frameworks- Tensorflow\Pytorch
- Autoencoders
- Generative Models
- Probabilistic Models

If you are confused about which framework to use (which is very common among new learners) check this out. After you are comfortable with frameworks and able to build some simple projects, try reading some research papers.

Additionally you can spend some time brushing up Calculus, statistics and probability as it is used a lot in deep learning.

## Resources

- Deep Learning Specialization on Coursera by Andrew Ng
- Practical Deep Learning for Coders from Fast ai
- Practical Deep Learning for Coders from Fast ai Part 2
- Dive into Deep Learning — Dive into Deep Learning 0.17.0 documentation
- Tensorflow docs
- Pytorch docs

**Youtube tutorials**

- Deep Learning Crash Course for Beginners
- Deep Learning With Tensorflow 2.0, Keras and Python
- ML Zero to Hero by Tensorflow
- Tensorflow 2 tutorial by FreeCodeCamp
- Both Tensorflow and Pytorch’s Youtube channels are great sources to get the latest updates.

**Blogs**

- https://machinelearningmastery.com/what-is-deep-learning/
- IBM Learn on Artificial Neural Networks
- Medium Blog on Deep learning series
- MIT Deep Learning basics introduction: Tensorflow Blog

**Being familiar with any one of the apps can be really helpful in your Deep Learning journey.**