The Complete Neural Networks Bootcamp: Theory, Applications (Udemy.com)

Master Deep Learning and Neural Networks Theory and Applications with Python and PyTorch! Including NLP and Transformers

Created by: Fawaz Sammani

Produced in 2021

icon
What you will learn

  • Understand How Neural Networks Work (Theory and Applications)
  • Understand How Convolutional Networks Work (Theory and Applications)
  • Understand How Recurrent Networks and LSTMs work (Theory and Applications)
  • Learn how to use PyTorch in depth
  • Understand how the Backpropagation algorithm works
  • Understand Loss Functions in Neural Networks
  • Understand Weight Initialization and Regularization Techniques
  • Code-up a Neural Network from Scratch using Numpy
  • Apply Transfer Learning to CNNs
  • CNN Visualization
  • Learn the CNN Architectures that are widely used nowadays
  • Understand Residual Networks in Depth
  • Understand YOLO Object Detection in Depth
  • Visualize the Learning Process of Neural Networks
  • Learn how to Save and Load trained models
  • Learn Sequence Modeling with Attention Mechanisms
  • Build a Chatbot with Attention
  • Transformers
  • Build a Chatbot with Tra

icon
Quality Score

Content Quality
/
Video Quality
/
Qualified Instructor
/
Course Pace
/
Course Depth & Coverage
/

Overall Score : 86 / 100

icon
Course Description

This course is a comprehensive guide to Deep Learning and Neural Networks. The theories are explained in depth and in a friendly manner. After that, we'll have the hands-on session, where we will be learning how to code Neural Networks in PyTorch, a very advanced and powerful deep learning framework! The course includes the following Sections:--------------------------------------------------------------------------------------------------------Section 1 - How Neural Networks and Backpropagation WorksIn this section, you will deeply understand the theories of how neural networks and the backpropagation algorithm works, in a friendly manner. We will walk through an example and do the calculations step-by-step. We will also discuss the activation functions used in Neural Networks, with their advantages and disadvantages! Section 2 - Loss FunctionsIn this section, we will introduce the famous loss functions that are used in Deep Learning and Neural Networks. We will walk through when to use them and how they work. Section 3 - OptimizationIn this section, we will discuss the optimization techniques used in Neural Networks, to reach the optimal Point, including Gradient Descent, Stochastic Gradient Descent, Momentum, RMSProp, Adam, AMSGrad, Weight Decay and Decoupling Weight Decay, LR Scheduler and others. Section 4 - Weight InitializationIn this section,we will introduce you to the concepts of weight initialization in neural networks, and we will discuss some techniques of weights initialization including Xavier initialization and He norm initialization. Section 5 - Regularization TechniquesIn this section, we will introduce you to the regularization techniques in neural networks. We will first introduce overfitting and then introduce how to prevent overfitting by using regularization techniques, inclusing L1, L2 and Dropout. We'll also talk about normalization as well as batch normalization and Layer Normalization. Section 6- Introduction to PyTorchIn this section, we will introduce the deep learning framework we'll be using through this course, which is PyTorch. We will show you how to install it, how it works and why it's special, and then we will code some PyTorch tensors and show you some operations on tensors, as well as show you Autograd in code!
Section 7 - Practical Neural Networks in PyTorch - Application 1In this section, you will apply what you've learned to build a Feed Forward Neural Network to classify handwritten digits. This is the first application of Feed Forward Networks we will be showing. Section 8 - Practical Neural Networks in PyTorch - Application 2In this section, we will build a feed forward Neural Network to classify weather a person has diabetes or not. We will train the network on a large dataset of diabetes!
Section 9 - Visualize the Learning ProcessIn this section, we will visualize how neural networks are learning, and how good they are at separating non-linear data!
Section 10 - Implementing a Neural Network from Scratch with Python and NumpyIn this section, we will understand and code up a neural network without using any deep learning library (from scratch using only python and numpy). This is necessary to understand how the underlying structure works. Section 11 - Convolutional Neural NetworksIn this section, we will introduce you to Convolutional Networks that are used for images. We will show you first the relationship to Feed Forward Networks, and then we will introduce you the concepts of Convolutional Networks one by one!
Section 12 - Practical Convolutional Networks in PyTorchIn this section, we will apply Convolutional Networks to classify handwritten digits. This is the first application of CNNs we will do. Section 13- Deeper into CNN: Improving and PlottingIn this section, we will improve the CNN that we built in the previous section, as well show you how to plot the results of training and testing! Moreover, we will show you how to classify your own handwritten images through the network!
Section 14 - CNN ArchitecturesIn this section, we will introduce the CNN architectures that are widely used in all deep learning applications. These architectures are: AlexNet, VGG net, Inception Net, Residual Networks and Densely Connected Networks. We will also discuss some object detection architectures. Section 15- Residual Networks In this section, we will dive deep into the details and theory of Residual Networks, and then we'll build a Residual Network in PyTorch from scratch! Section 16 - Transfer Learning in PyTorch - Image ClassificationIn this section, we will apply transfer learning on a Residual Network, to classify ants and bees. We will also show you how to use your own dataset and apply image augmentation. After completing this section, you will be able to classify any images you want! Section 17- Convolutional Networks Visualization In this section, we will visualize what the neural networks output, and what they are really learning. We will observe the feature maps of the network of every layer! Section 18 - YOLO Object Detection (Theory)In this section, we will learn one of the most famous Object Detection Frameworks: YOLO!! This section covers the theory of YOLO in depth. Section 19 - Autoencoders and Variational AutoencodersIn this section, we will cover Autoencoders and Denoising Autoencoders. We will then see the problem they face and learn how to mitigate it with Variational Autoencoders. Section 20 - Recurrent Neural NetworksIn this section, we will introduce you to Recurrent Neural Networks and all their concepts. We will then discuss the Backpropagation through time, the vanishing gradient problem, and finally about Long Short Term Memory (LSTM) that solved the problems RNN suffered from. Section 21 - Word EmbeddingsIn this section, we will discuss how words are represented as features. We will then show you some Word Embedding models. We will also show you how to implement word embedding in PyTorch! Section 22 - Practical Recurrent Networks in PyTorchIn this section, we will apply Recurrent Neural Networks using LSTMs in PyTorch to generate text similar to the story of Alice in Wonderland! You can just replace the story with any other text you want, and the RNN will be able to generate text similar to it! Section 23 - Sequence ModellingIn this section, we will learn about Sequence-to-Sequence Modelling. We will see how Seq2Seq models work and where they are applied. We'll also talk about Attention mechanisms and see how they work.
Section 24 - Practical Sequence Modelling in PyTorch - Build a ChatbotIn this section, we will apply what we learned about sequence modeling and build a Chatbot with Attention Mechanism.
Section 25 - Saving and Loading ModelsIn this section, we will show you how to save and load models in PyTorch, so you can use these models either for later testing, or for resuming training! Section 26 - Transformers In this section, we will cover the Transformer, which is the current state-of-art model for NLP and language modeling tasks. We will go through each component

icon
Instructor Details

Fawaz Sammani

I am aresearcher doing myresearch in Computer Vision.Through out my research period, i have achievedmany of myresearch goals and publishedmultipleresearch papers. I have three courses, one which provides a complete guide to Image Processing with MATLAB, where you will master the basics of Image Processing and build interfaces for them, another course which is a complete guide to Neural Networks, where you'll master neural networks and deep learning topics in depth both theoretically and practically in one of the most powerful deep learning frameworks!Iam extremely happy to share my knowledge and experience throughout my courses!

icon
Reviews

4.3

94 total reviews

5 star 4 star 3 star 2 star 1 star
% Complete
% Complete
% Complete
% Complete
% Complete

By Neil Dias on 10/9/2020

The course itself is excellent, but I am withholding a full 5 star because the watching experience is bad
I would encourage the tutor to re-record the videos with larger font size (of the Jupyter notebook). At present, the font size is small, and the screen is white, and its a headache to keep staring at the white screen with small fonts for long hours. I would have loved to rate this a full 5 stars, and will revise the rating if you address the above problem. This course deserves a full 5 stars otherwise.
Another suggestion is to avoid coding more than a couple of lines of code in one cell (unless a class, a loop or a function) as that betrays the purpose of a jupyter notebook. It becomes difficult to keep a track of values visually - which takes away from the learning experience.
Recommendation to other students: This is a good course, contentwise, and besides the irk mentioned above - which is a serious compromise - the course is itself excellent and worth the trouble (although I hope the said compromise is addressed).

By Narasimhulu on 9/25/2020

Good expalination about the code and Theory.But,need to improve in explaining the code somewhat clearly.

By Alexey Vlasenko on 9/24/2020

Theory sections run on too long without practical examples. Exercises and code examples should be interspersed with presentations on theory, otherwise the relevance of theory to practice is unclear and will likely not be remembered by the time the practical sections are reached
For example, a long discourse on how to initialize weights properly, before any code examples are introduced, is not particularly memorable or useful. Remember, this course is targeted to students who haven't worked with neural networks before, they're not going to have any practical experience to which they can relate this knowledge. Show some code first, and then, when we get to the weight initialization stage, explain why we are initializing the weights in this particular way!

By Vincent Dedun on 9/14/2020

to the point!

By Ajay Hazra on 9/3/2020

Could be little bit shorter in some places.. Course organization could be better. Its exhaustive.
The content and reference should have been shared for homework.
Inclusion of test or quiz to understand the progress is important.
Overall its a good course.. but my expectation was more in simple way

By Kyoungmun Chang on 8/20/2020

yes

By Ying Wang on 8/19/2020

File images are too big to load...

By Juan Pinto on 8/16/2020

very good course so far

By Mahesh on 8/13/2020

This is one of the most comprehensiev course on neural network covering basics to advanced level .The instructor did a tremendous effort to explain nitty gritty details both theory mathematical background , Great work .. and Thank you

By Udochukwu Kalu Ogbureke on 7/18/2020

The instructor is very good in this subject and can also explain.

By Daniel Santos on 7/6/2020

Very good, but i'm really missing some PDF's with a resume of each lecture !!!
There is no support material to download. Nothing.

By Steven Miller on 7/4/2020

Incredibly fascinating thus far.