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.
π 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
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.