Skip to content

Lab assignments including the implementation of convolutional neural network from scratch using numpy only

Notifications You must be signed in to change notification settings

leiluk1/intro-to-cv

Repository files navigation

Introduction to CV | Lab assignments

This repository contains my solutions to lab assignments for a core course on Introduction to Computer Vision offered at Innopolis University. All my solutions were graded 100%.

The main objective of labs was to provide practical experience in building models, specifically convolutional neural networks, from scratch using numpy. These assignments focused on implementing both forward and backward propagation for various nodes used in the model.

Lab Descriptions

  1. Lab 1: Image Rescaling - This lab involved performing image resizing.

  2. Lab 2: Nearest Neighbour Algorithm - The objective of this lab was to implement the Nearest Neighbour algorithm on the CIFAR10 dataset.

  3. Lab 3: Parametric Image Classification - In this lab, the task was to implement the parametric approach for image classification with a linear classifier on the CIFAR10 dataset. The weights for the classifier needed to be found using brute force.

  4. Lab 4: Softmax Node - This lab focused on performing forward and backward propagation over the softmax node with normalization.

  5. Lab 5: Softmax, ReLU, and Multiplication Nodes - The objective of this lab was to perform forward and backward propagation over the softmax node, ReLU node, and multiplication node.

  6. Lab 6: Simple Neural Network - In this lab, a simple neural network was created.

  7. Lab 8: Convolutional Nodes - The task in this lab was to implement forward and backward propagation through the convolutional nodes.

  8. Lab 9: Convolutional Neural Network with Mini-Batch Gradient Descent - This lab involved implementing a convolutional neural network using mini-batch gradient descent and performing image classification on the MNIST dataset.

  9. Lab 10: Padding in Convolutional Neural Network - The objective of this lab was to incorporate padding into the developed convolutional neural network.

  10. Lab 11: Single Object Localization - In this lab, single object localization was performed using an already built convolutional neural network.

  11. Lab 12: Single Object Detection and Localization - The task in this lab was to perform single object detection and localization of multiple classes, including the "no-object" class.

Note: there was no Lab 7 due to a midterm exam during that week.

About

Lab assignments including the implementation of convolutional neural network from scratch using numpy only

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published