Skip to content

ScratchMind/ScratchVision

Repository files navigation

ScratchVision

A comprehensive, modular project for learning and implementing Convolutional Neural Networks (CNNs) from classical architectures to modern designs. This project serves as both a learning resource and a reference implementation for academic and professional purposes.

📚 Project Overview

This repository is designed to guide learners through key milestones in CNN development, starting from LeNet-5 and progressing through AlexNet, VGG, ResNet, DenseNet, MobileNet, EfficientNet, ConvNeXt, and specialized architectures like Capsule Networks.

The project emphasizes:

  • Hands-on implementation: Build each architecture from scratch using PyTorch.
  • Modular design: Easily experiment with models, datasets, and training routines.
  • Learning focus: Understand the principles behind architectural innovations.

🗂 Folder Structure

notebooks/      # Jupyter notebooks for guided experiments
data/           # Raw and processed datasets
src/            # Core modules: models, trainers, evaluators, utils
experiments/    # Saved checkpoints, logs, and results
scripts/        # Run scripts for training and evaluation
tests/          # Unit tests for project modules

⚡ Key Features

  • Implementation of classical to modern CNN architectures.
  • Modular training and evaluation pipelines.
  • Dataset handling and preprocessing utilities.
  • Visualization of training curves, filters, and feature maps.
  • Reproducible experiments with checkpointing and logs.

⚙️ Timelines


About

CNN and SOTA vision architectures implemented from scratch

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors