
Explore neural networks basics, predict digits, examine three edge detectors, and study convolutional neural networks with a classic image classification example, concluding with building and training a cnn for classification.
Explore the basics of neural networks, including nodes and the input, hidden, and output layers. Understand activation functions, gradient descent, and propagation as the learning mechanisms from input to output.
The neuron is a fundamental building block of neural networks; it receives activations from the previous layer, computes a weighted linear sum with a bias, and applies an activation function.
Explore activation functions for neural networks, from linear and binary step to sigmoid, tanh, relu, and parametric variants across layers, and understand how they shape learning and outputs.
Perform a forward pass to compute activations across layers. Backpropagate the error through the network to adjust weights via gradient descent with a learning rate.
train a binary classifier to detect whether a handwritten digit is five using an svm, then extend to a multiclass model and evaluate with a confusion matrix.
Learn to train a multi-class classifier by importing the classifier, initializing it, fitting on the training data, and predicting on the first input.
Evaluate the confusion matrix after training a binary classifier by predicting on the train data and computing true positives, true negatives, false positives, and false negatives.
Learn Prewitt edge detection by applying horizontal and vertical 3x3 kernels via convolution to build edge maps, with prior gaussian noise reduction using cv2 and filter2D.
Explore Sobel edge detection for stable edges by applying horizontal and vertical filters, following the same procedure as the previous edge detection.
Apply a filter to approximate second-order derivatives for Laplacian edge detection and compute the image's edges, with noise reduction beforehand since the method is highly sensitive to noise.
Explore convolutional neural networks used in image and speech recognition, learn about convolutional layers and fully connected layers, and implement CNNs in Python with exhaustive search.
Understand how convolutional layers apply a convolution over inputs with a receptive field to produce feature maps, then use max pooling and a fully connected layer in a simple architecture.
Explore famous CNN architectures such as visual net and inception modules, featuring conv layers, pooling, fully connected layers, and soft max, and learn about residual networks with 152 layers.
Apply a cnn python implementation pattern to load and preprocess images, load a pretrained model, predict class probabilities, and decode top predictions with examples like tiger, cat, and flower.
Explore exhaustive search for object localization by sliding windows of varying sizes across images, computing multiple locations to enable object detection, despite higher computation.
Learn how to get data, read it, and build and train a convolutional neural network for classification using Kaggle and a tiny 200-class ImageNet dataset.
Read data by building paths to training and validation images, then load images with cv2; map class IDs to indices and assemble training and test arrays from the annotation file.
Build a ten-class inception-based model with global average pooling and a dense output, then train with SGD to reach 97% accuracy, comparing to an Alexa net style model at 85%.
Set up a cloud training environment on a digital ocean droplet, transfer data and scripts, install dependencies, and run training that reaches 97% accuracy after five epochs on image net.
Celebrate completing the course and explore optional one-to-one sessions for personalized guidance, live troubleshooting, and real-world application q&a, bookable by emailing Lucas at 50794 at gmail.com.
In this class you will learn how to build Computer Vision algorithms for Image classification and Object detection using the Python Programming Language. We will first go through Neural Networks Basics: what are Neural networks , what is the theory behind neural networks , then we will talk about binary classifiers like an SVM for classifying the MNIST datasets, Students will learn how to classify the hand written digits of the MNIST dataset into multiple classes. We will discuss the different types of edge detectors to detect edges in images. After this we will discuss convolutionnal neural networks: how are they built, what are the most common and efficient CNN architectures and how do you implement them in Python. The topic of Object detection and Exhaustive search will also be dealt with. The last part of the class will be an example application of building and training a custom built Convolutionnal neural Network on the cloud to classify images from an open source dataset. All the steps from getting data, reading the data , building the network and training the network on the cloud will be carefully explained so that the student has a working example to be able to reuse for its own purpose.