Skip to content

This repository trains a spiking neural network (SNN) classifier on the MNIST dataset using various spike encoding techniques. It explores different encoding schemes to convert images into spike trains and evaluates their impact on classification performance with the help of the SNNTorch module.

Notifications You must be signed in to change notification settings

MatTheTab/neuromorphic_classifier

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

8 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

neuromorphic_classifier

This repository trains a spiking neural network (SNN) classifier on the MNIST dataset using various spike encoding techniques. It explores different encoding schemes to convert images into spike trains and evaluates their impact on classification performance with the help of the SNNTorch module.

πŸ“‚ Directory Structure

πŸ“‚ project_root β”‚
β”œβ”€β”€ πŸ“‚ models # Pre-trained neuromorphic models for image classification
β”‚ β”œβ”€β”€ πŸ“„ neuromorphic_delta_model.pth # Spiking Neural Network trained using delta encoding
β”‚ β”œβ”€β”€ πŸ“„ neuromorphic_rate_model.pth # Spiking Neural Network trained using rate encoding
β”‚ β”œβ”€β”€ πŸ“„ neuromorphic_temporal_model.pth # Spiking Neural Network trained using latency encoding
β”‚
β”œβ”€β”€ πŸ“‚ notebooks # Jupyter notebooks for training and inference
β”‚ β”œβ”€β”€ πŸ“„ Neuromorphic_Spiking_CNN.ipynb # Notebook for training the models
β”‚ β”œβ”€β”€ πŸ“„ Neuromorphic_Spiking_CNN__Gradio_App.ipynb # Notebook for running a Gradio demo app
β”‚
β”œβ”€β”€ πŸ“„ .gitignore # gitignore file for handling external files and directories
β”œβ”€β”€ πŸ“„ neuromorphic_demo.py # Python file for running the Streamlit application
β”œβ”€β”€ πŸ“„ requirements.txt # Environment details necessary to run the experiments
β”œβ”€β”€ πŸ“„ README.md # Project documentation and instructions

Live Demo

To run the Streamlit Demo simply click the link here.
Or if you prefer the Gradio App Demo in a Google Colab notebook, then simply run this notebook.

About

This repository trains a spiking neural network (SNN) classifier on the MNIST dataset using various spike encoding techniques. It explores different encoding schemes to convert images into spike trains and evaluates their impact on classification performance with the help of the SNNTorch module.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published