The Complete Neural Networks Bootcamp: Theory, Applications (Udemy.com)
Deep Learning and Neural Networks Theory and Applications with PyTorch! Including Transformers, BERT and GPT!
Created by: Fawaz Sammani
Last updated November 2021
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
How it compares
Against the other 126 rated Udemy courses in Deep Learning on CourseDuck:
- Rating4.2 out of 5higher than 10% of them
- Reviews3,106#29 of 127 by number of reviews
- Length43.8 hourslonger than 96% of them
- Last updatedNovember 2021earlier than 79% of them
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 Works
In 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 Functions
In 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 - Optimization
In 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 Initialization
In 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 Techniques
In 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 PyTorch
In 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 1
In 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 2
In 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 Process
In 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 Numpy
In 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 Networks
In 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 PyTorch
In 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 Plotting
In 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 Architectures
In 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 Classification
In 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 Autoencoders
In 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 Networks
In 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 Embeddings
In 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 PyTorch
In 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 Modelling
Instructor Details
- 4.2 Rating
3,106 Reviews
Fawaz Sammani
I am a researcher doing my research in Computer Vision. Through out my research period, i have achieved many of my research goals and published multiple research 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! I am extremely happy to share my knowledge and experience throughout my courses!
More courses by Fawaz Sammani
Applied Deep Learning: Build a Chatbot - Theory, Application (2020)
4.5 (1,027 Reviews)
Provider: Udemy
Time: 6.2h
Free
Complete Guide to Image Processing with MATLAB (2024)
4.3 (259 Reviews)
Provider: Udemy
Time: 3.8h
$10.99
More Deep Learning courses
A deep understanding of deep learning (with Python intro) (2026)
4.8 (6,559 Reviews)
Provider: Udemy
Time: 57.3h
$109.99
Deep Learning Prerequisites: Logistic Regression in Python (2026)
4.8 (4,922 Reviews)
Provider: Udemy
Time: 6.9h
$109.99
Data Science: Transformers for Natural Language Processing (2026)
4.8 (3,034 Reviews)
Provider: Udemy
Time: 19.1h
$79.99
Complete Tensorflow 2 and Keras Deep Learning Bootcamp (2022)
4.7 (8,938 Reviews)
Provider: Udemy
Time: 19.2h
$16.99
Deep Learning: Advanced Computer Vision (GANs, SSD, +More!) (2026)
4.7 (7,132 Reviews)
Provider: Udemy
Time: 17.2h
$124.99
Reviews
By Mohamed Haniffa on 8/2/2024
The initial sections are good but when it goes deeper and deeper, most of times the concepts/code are not explained in full details with right print outputs to understand the Deep Learning (DL) model and portrayed with basic explanations. Instead of covering many DL topics, if we take few and deep dive it serves well good. Some times the code samples in videos is not matching with given sharepoint. Some materials are missing. Overall is good but it can be improved a lot.
By Karan Raj Singh on 1/29/2024
i just loved the course the perfect balance for maths and practical implementations , you gave enough information to start learning on our own like research papers for transformers and other great researches , the way i think abou tthe subject has changed after attending this course or should i say the weights of the neuron in my brain have changed , you have created this change in me , the change to start learning these beautiful and hard things in vision ,nlp and others . i am currently doing RL and model deployment . thanks a lot regards Karan
By Anonymized User on 5/30/2022
Finally a proper Neural Network class where PyTorch is a tool and not the goal. The mathematical structure presented in the beginning paves the way to actually understand what is going on under the hood in PyTorch and also enables us to understand how simple and powerful the tool actually is. The coding that is presented is precise and guides us through the very probable caveats that are not properly covered in other classes. I am myself physicist with math background but i was struggling with simple tensor dimension matching, which was never properly stated before but was beautifully presented with accuracy and precision as well as everything that came after that. Thank you Fawaz.
By Nick Hilton on 1/24/2021
I really enjoyed the course. The course is comprehensive and up-to date. I created a training plan to complete the course in just over two weeks (ca 2hrs/day). I don't have an IT background - so appreciated the slide explanations on the theory. This is a course that I expect to reference as my deep learning knowledge/experience grow.
By Anantha Kancherla on 1/14/2021
Content is really good and comprehensive. Really the best in this area. The presentation/videos could use work. There are sloppy forward and backward references and sometimes the explanation mixes terms that can lead to confusion.
By Yosef Bar-Yosef on 11/19/2020
Realy good and detailed practical implementaion lessons constructed end-to-end (which is realy an advantage). I actually enjoyed the lectures, they where light and clear most of the times. Some things were missing, in a course using this title ("The complete....: theory, applications"). An important subject is GANs and contrastive learning that was completely ignored, and also deep reinforcement learning is actually becoming the next big thing. I wish Fawaz will add some sessions addressing these directions as well. Also, not having the detailed YOLO tutorial was a bit disappointing for me. Overall, well done!!
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/2/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
Quality Score
No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.
Overall Score : 84 / 100








