
Explore how neural networks mimic biological neurons, with input, hidden layers, and output, where information flows through neurons to classify images and digits by learning complex patterns.
Explore use cases of neural networks in deep learning, including segmentation for self-driving cars and stock price time-series predictions.
Examine a mathematical view of neural networks through a multilayer perceptron with input, hidden, and output layers, where weights and biases form linear sums followed by nonlinear activation.
Explore the main neural network types, from fully connected to convolutional and recurrent models, and learn how data type guides architecture, pooling, and flattening decisions.
Explore how convolutional layers use filters to generate feature maps, apply pooling, and learn low-level to high-level features with kernel, padding, stride, and activation.
Explore how pooling layers reduce feature map dimensions after convolution by applying max or average pooling to small blocks, preserving essential information while shrinking data.
Explore a typical convolutional neural network architecture for image classification, using convolutional and pooling layers, activations, and a final fully connected classifier, with alexnet and vgg16 as examples.
Explore the mathematical view of training a neural network, from a fully connected model with weights and biases to a cost function guiding learning via gradient descent and backpropagation.
Explore the practical view of neural network training: split data into train, validation, and test; compute cost and gradient; update parameters via backprop; evaluate with validation and accuracy.
Explain training with batches in convolutional neural networks using PyTorch, comparing full-batch, stochastic, and mini-batch approaches. Show how batch size affects cost function, gradient, parameter updates, speed, stability, and convergence.
Build a convolutional neural network to classify 60,000 images across ten classes, using 3x32x32 inputs, six filters, relu activations, and max pooling, followed by flattening and a fully connected classifier.
The file ".zip" contains the code we will be using to develop this project. I highly recommend you to write the code by yourself and if you have any problem, so use this code to check it!
Files:
1) "live code.py": The code we developed in the videos. This is in Python format.
2) "live code.ipynb": Same as 1, but in Jupyter Notebook format.
3) "cnn example.ipynb": Reference code that contains more comments than "live code". This is in Jupyter notebook format.
4) "cnn example.py": Same as 3, but in Python format.
Learn to build a convolutional neural network in PyTorch by defining init, forward, and layers, including convolution, pooling, flattening, and a 10-class output.
Define the cost function and the optimizer for a CNN in PyTorch. Apply cross-entropy loss for multiclass classification and update convolutional, linear, and output layer parameters with backpropagation.
Learn to validate a convolutional neural network with pytorch by using a validation dataset to monitor cost and accuracy, compute metrics, and plot training versus validation loss.
Master practical training for convolutional neural networks with PyTorch: track metrics, adjust learning rate and epochs, guard against overfitting with validation-based stopping, and tailor architectures to data.
In this course, you are going to learn what is and how to implement a Convolutional Neural Network model. To do this, you will use the library Pytorch using Python programming language, a tool that allows you to easily build a neural network model.
In the first part of the course, you will learn the basic about the theory of Deep Learning and Convolutional Neural Networks and then we will go deeper in the mathematics behind these models so that you can understand how these models works, how they are trained and evaluated and with this knowledge, you can change stuff in order to improve your own models.
After the theoretical part, you will build a practical project in which you will build a convolutional neural network model to classify images into different classes (like classify a picture of a dog as a dog). To do this you will use Pytorch, a library that allows you to create and train a neural network model using Python. First, you will create the model using a specific convolutional architecture, and then you will train the model by applying all the concepts you learned in the theoretical part. After training, you will get metrics that will allow you to analyze and evaluate how good your model is. Based on the results, you will learn how to implement changes into your project so that you can learn how to explore different options in order to improve the model performance.
You don't need previous knowledge on Deep Learning, Convolutional Neural Networks or Pytorch, because you will learn the basics you need in order to build a deep learning project using this technology.
So, get started building convolutional deep learning projects with this very practical course.