
This course includes our updated coding exercises so you can practice your skills as you learn.
See a demo
Explore convolutional neural networks with Python, mastering gradient descent and backpropagation, and develop a practical, real-time object detection framework from training data.
Explore gradient descent algorithms to minimize a cost function by moving opposite to the gradient using theta updates. Compare stochastic, batch, and mini-batch approaches, noting convergence, efficiency, and trade-offs.
Train a deep learning model on a labeled data set split into training, validation, and test (holdout) sets to tune hyperparameters, monitor generalization, and evaluate with cross-validation.
Acquire fundamental python and numpy skills for deep learning, including data types, control structures, and array operations, to implement a cnn from scratch with convolution, pooling, and fully connected layers.
Explore object oriented programming in Python by building a conv layer class that encapsulates filters and biases, uses self for attributes, and implements forward propagation with convolution and ReLU.
Explore the derivative of a function, including product, quotient, and power rules, and the chain rule. Apply these tools to deep learning, velocity interpretation, partial derivatives, and gradients.
Explore derivatives by the chain rule with composite functions and a neural network example, deriving gradients and backpropagating to update weights in a fully connected layer.
Master backpropagation in fully connected networks, tracing the forward pass, loss, and cost to compute gradients for weights, biases, and inputs with ReLU and mini-batch gradient descent.
Learn how the softmax activation transforms the last-layer outputs into a normalized probability vector for classification, including the max-subtraction trick to prevent numerical overflow.
After this lecture you will recognize the advantages and the flexibility offered by the convolutional approach. In the Lecture Content you can find the code used for the examples in the lecture.
Leverage transfer learning to reuse pre-trained models for new tasks, freezing learned features and training only the new layers to save data, time, and resources, especially with limited data.
Initialize weights and biases to ensure stable gradients. Compare Xavier and He initializations, explain their use with sigmoid/tanh and ReLU in CNNs, including fan-in, fan-out, and zero biases.
Explore the Adam optimizer, combining momentum and rmsprop to provide per-parameter adaptive learning rates, with moment estimates and bias corrections across CNNs and fully connected layers.
This lecture demonstrates the YOLO v1 algorithm, detailing the cost function, gradient computation, and a CNN architecture for multi-object detection with IoU and mean squared error loss.
This course is for anyone willing to really understand how Convolutional Neural Networks (CNNs) work.
Every component of CNNs is first presented and explained mathematically, and the implemented in Python.
Interactive programming exercises, executable within the course webpage, allow to gradually build a complete Object-Detection Framework based on an optimized Convolutional Neural Network model.
No prior knowledge is required: the dedicated sections about Python Programming Basics and Calculus for Deep Learning provide the necessary knowledge to follow the course and implement Convolutional Neural Networks.
In this course, students will be introduced to one of the latest and most successful algorithms for real-time multiple object detection. Throughout the course, they will gain a comprehensive understanding of the Backpropagation process, both from a mathematical and programming perspective, allowing them to build a strong foundation in this essential aspect of neural network training.
By the course's conclusion, students will have hands-on experience implementing a sophisticated convolutional neural network framework. This framework will incorporate cutting-edge optimization and regularization techniques, enabling them to tackle complex real-world object detection tasks effectively and achieve impressive performance results. This practical knowledge will empower students to advance their capabilities in the exciting field of Computer Vision and Deep Learning.