Anonymous repository for SkipSNN: Efficiently Classifying Spike Trains with Event-attention. This repository contains the implementation of SkipSNN.
The problem definition of efficient classification of spike trains. The spike trains are generated by an event camera, which is an imaging sensor that responds to local changes in brightness. Each pixel inside an event camera operates independently and asynchronously, reporting changes in brightness as they occur, and staying silent otherwise. Therefore, each image can be considered as binary event image.
The corresponding files contain the source code and sample data of JERS.
- main_nmnist_noise.py : Main code for SkipSNN training
- model_nmnist_noise.py : Supporting models of SkipSNN
- modules.py : Base model for the SkipNet
- NmnistLoader.py : Supporting dataloader of N-mnist dataset
- noise_base.py : Base model for adding noise to the dataset
- spikeFileIO.py : Supporting functions for SkipSNN training
Note that all public datasets used in the paper can be found here:
Raw data can be preprocessed via noise_base.py and NmnistLoader.py.
The following script is for training:
python main_nmnist_noise.py
Parameters:
- run() :
- N_CLASSES : number of classes for classification
- LEARNING_RATE : learning rate for training
- N_EPOCHS : number of epochs for training
- SEQ_LENGTH : setting of squence length
- BASE : if load base model
- PATH : path of the base model
- LENS : parameter for temperature decay
- LAMBDA : parameter for spike training
- LOC : start index of the controller
The results can be find after training.
- pred : predictions
- truth tag : ground truth values
- truth loc : start index of the controller
- state updates : state updates of the model
- time cost : inference time