Part 1 Deep learning foundation
Applications of computer vision
Object detection and localization
Generating art (style transfer)
Computer vision pipeline: The big picture
Converting color images to grayscale to reduce computation complexity
What is a feature in computer vision?
What makes a good (useful) feature?
Extracting features (handcrafted vs. automatic extracting)
2 Deep learning and neural networks
How does the perceptron learn?
Is one neuron enough to solve complex problems?
Multilayer perceptron architecture
How many layers, and how many nodes in each layer?
Some takeaways from this section
Heaviside step function (binary classifier)
Hyperbolic tangent function (tanh)
Why do we need an error function?
A final note on errors and weights
3 Convolutional neural networks
Image classification using MLP
Drawbacks of MLPs for processing images
A closer look at feature extraction
A closer look at classification
Image classification using CNNs
Building the model architecture
Number of parameters (weights)
Adding dropout layers to avoid overfitting
Why do we need dropout layers?
Where does the dropout layer go in the CNN architecture?
Convolution over color images (3D images)
How do we perform a convolution on a color image?
What happens to the computational complexity?
Project: Image classification for color images
4 Structuring DL projects and hyperparameter tuning
Is accuracy the best metric for evaluating a model?
Getting your data ready for training
Splitting your data for train/validation/test
Evaluating the model and interpreting its performance
Diagnosing overfitting and underfitting
Exercise: Building, training, and evaluating a network
Improving the network and tuning hyperparameters
Collecting more data vs. tuning hyperparameters
Parameters vs. hyperparameters
Neural network hyperparameters
Learning rate and decay schedule
A systematic approach to find the optimal learning rate
Learning rate decay and adaptive learning
Gradient descent with momentum
Number of epochs and early stopping criteria
Regularization techniques to avoid overfitting
Covariate shift in neural networks
How does batch normalization work?
Batch normalization implementation in Keras
Project: Achieve high accuracy on image classification
Part 2 Image classification and detection
LeNet-5 implementation in Keras
Setting up the learning hyperparameters
LeNet performance on the MNIST dataset
AlexNet implementation in Keras
Setting up the learning hyperparameters
Inception module: Naive version
Inception module with dimensionality reduction
Inception performance on the CIFAR dataset
ResNet implementation in Keras
ResNet performance on the CIFAR dataset
What problems does transfer learning solve?
How do neural networks learn features?
Transferability of features extracted at later layers
Using a pretrained network as a classifier
Using a pretrained network as a feature extractor
Choosing the appropriate level of transfer learning
Scenario 1: Target dataset is small and similar to the source dataset
Scenario 2: Target dataset is large and similar to the source dataset
Scenario 3: Target dataset is small and different from the source dataset
Scenario 4: Target dataset is large and different from the source dataset
Recap of the transfer learning scenarios
Project 1: A pretrained network as a feature extractor
7 Object detection with R-CNN, SSD, and YOLO
General object detection framework
Object-detector evaluation metrics
Region-based convolutional neural networks (R-CNNs)
Project: Train an SSD network in a self-driving car application
Part 3 Generative models and visual embeddings
8 Generative adversarial networks (GANs)
Deep convolutional GANs (DCGANs)
Fréchet inception distance (FID)
Which evaluation scheme to use
Image-to-image translation (Pix2Pix GAN)
Image super-resolution GAN (SRGAN)
Ready to get your hands dirty?
Project: Building your own GAN
9 DeepDream and neural style transfer
How convolutional neural networks see the world
Revisiting how neural networks work
Implementing a feature visualizer
How the DeepDream algorithm works
DeepDream implementation in Keras
Applications of visual embeddings
Problem setup and formalization
Naive implementation and runtime analysis of losses
Informative data mining: Finding useful triplets
Project: Train an embedding network
Fashion: Get me items similar to this
Pushing the boundaries of current accuracy
appendix A. Getting set up
18.220.136.165