Skip to content

This repository contains hands-on lessons, widgets, and exercises on AI & Computer Vision.

Notifications You must be signed in to change notification settings

isi-mube/AI-Vision-Toolkit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Introduction to Image Classification using CNNs

Welcome to another module on the AI Program! In this module, we dive into the world of Convolutional Neural Networks (CNNs). This lesson is crafted to help you explore one of the most impactful neural networks in computer vision: the CNN. You'll engage with both the theory and practical aspects, ensuring a hands-on learning experience.

Module 6 Lessons

  • Week 1: Introduction to Neural Networks and Deep Learning
  • Week 2: Deep Learning with PyTorch, TensorFlow, and Keras
  • Week 3: Introduction to Image Classification using CNNs
  • Week 4: Introduction to Object Detection and Segmentation
  • Week 5: Fine Tuning, & Advanced Image Processing with C++, OpenCV and Scikit-Image

🎯 Lesson Objectives

This lesson focuses on understanding the architecture of CNNs, how they extract features from images, and how different hyperparameters affect model performance. You will have opportunities to experiment and adjust the architecture to gain insights into CNNs' operation.

By the end of this lesson, you will be able to:

  • Understand the architecture of Convolutional Neural Networks (CNNs) and how they are used in image classification.
  • Experiment with hyperparameters such as kernel size, padding, and stride to see their impact on CNN performance.
  • Build and train CNNs using PyTorch for image classification tasks.
  • Apply convolutional layers, pooling, and fully connected layers to create models that can effectively classify images.

📌 Key Topics:

  • Convolutional Layers: Learn how they detect patterns and features in images.
  • Filters and Pooling: Understand the role of filters and how pooling layers help reduce dimensionality.
  • CNN Hyperparameters: Experiment with kernel sizes, strides, padding, and observe their effects on CNN performance.
  • Building CNNs in PyTorch: Discover how to construct and train CNN models for image classification tasks.

🗂️ Folder Structure:

  • introduction_cnn_pytorch.ipynb: The main lesson notebook where you will dive into CNN theory and implementation.

    • widget.py: A small widget used in the notebook to experiment with CNN hyperparameters (filter size, padding, stride).
  • labs/: Includes the following labs for further exploration:

    • lab-ai-experimenting-with-cnn: Linked directly to the concepts in introduction_cnn_pytorch.ipynb.
    • Each lab includes its own README with instructions for implementation and experimentation.
  • Happy coding! 💻

About

This repository contains hands-on lessons, widgets, and exercises on AI & Computer Vision.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published