Gain a deep understanding of Supervised Learning techniques by studying the fundamentals and implementing them in NumPy. Gain hands-on experience using popular Deep Learning frameworks such as Tensorflow 2 and Keras. Section 1 - The Basics:- Learn what Supervised Learning is, in the context of AI- Learn the difference between Parametric and non-Parametric models- Learn the fundamentals: Weights and biases, threshold functions and learning rates- An introduction to the Vectorization technique to help speed up our self implemented code- Learn to process real data: Feature Scaling, Splitting Data, One-hot Encoding and Handling missing data- Classification vs RegressionSection 2 - Feedforward Networks:- Learn about the Gradient Descent optimization algorithm. - Implement the Logistic Regression model using NumPy- Implement a Feedforward Network using NumPy- Learn the difference between Multi-task and Multi-class Classification- Understand the Vanishing Gradient Problem- Overfitting- Batching and various Optimizers (Momentum, RMSprop, Adam)Section 3 - Convolutional Neural Networks:- Fundamentals such as filters, padding, strides and reshaping- Implement a Convolutional Neural Network using NumPy- Introduction to Tensorfow 2 and Keras- Data Augmentation to reduce overfitting- Understand and implement Transfer Learning to require less data- Analyse Object Classification models using Occlusion Sensitivity- Generate Art using Style Transfer- One-Shot Learning for Face Verification and Face Recognition- Perform Object Detection for Blood Stream imagesSection 4 - Sequential Data- Understand Sequential Data and when data should be modeled as Sequential Data- Implement a Recurrent Neural Network using NumPy- Implement LSTM and GRUs in Tensorflow 2/Keras- Sentiment Classification from the basics to the more advanced techniques- Understand Word Embeddings- Generate text similar to Romeo and Juliet- Implement an Attention Model using Tensorflow 2/Keras