metadata
license: apache-2.0
tags:
- spiking-neural-network
- neuromorphic
- loihi
- temporal-classification
- audio
datasets:
- zenke-lab/spiking-heidelberg-digits
metrics:
- accuracy
model-index:
- name: Catalyst SHD SNN
results:
- task:
type: audio-classification
name: Spoken Digit Recognition
dataset:
name: Spiking Heidelberg Digits (SHD)
type: zenke-lab/spiking-heidelberg-digits
metrics:
- name: Test Accuracy (float32)
type: accuracy
value: 85.9
- name: Test Accuracy (int16 quantized)
type: accuracy
value: 85.4
Catalyst SHD Spiking Neural Network
A recurrent spiking neural network trained on the Spiking Heidelberg Digits (SHD) benchmark, achieving 85.9% test accuracy (float) / 85.4% quantized (int16).
Trained using the Catalyst Neuromorphic SDK (neurocore) with surrogate gradient descent, and deployable directly to Loihi-compatible neuromorphic hardware via the Catalyst Cloud API.
Model Details
| Parameter | Value |
|---|---|
| Architecture | Recurrent LIF (Leaky Integrate-and-Fire) |
| Input neurons | 700 (cochlea spike channels) |
| Hidden neurons | 512 (recurrent) |
| Output classes | 20 (digits 0-9, German + English) |
| Total parameters | ~1.49M |
| Time bins | 250 (dt = 4ms, 1s duration) |
Training Configuration
| Hyperparameter | Value |
|---|---|
| Epochs | 200 |
| Batch size | 128 |
| Optimizer | AdamW |
| Learning rate | 1e-3 (cosine annealing) |
| Weight decay | 1e-4 |
| Dropout | 0.3 |
| Gradient clipping | 1.0 norm |
| Surrogate gradient | Fast sigmoid (scale=25.0) |
| Membrane decay (hidden) | 0.95 (learnable) |
| Membrane decay (output) | 0.9 (learnable) |
| Threshold | 1.0 |
| Reset mechanism | Hard reset: v = v * (1 - spike) |
Hardware Deployment
The model is quantized to int16 for direct deployment on Catalyst neuromorphic hardware (FPGA) and the Catalyst Cloud API:
- Threshold: 1000 (int16)
- Decay mapping:
decay_v = round(beta * 4096)(CUBA neurons) - Quantization accuracy loss: only 0.4% (85.9% -> 85.4%)
Benchmark Context
| Method | SHD Accuracy |
|---|---|
| Cramer et al. (2020) | 83.2% |
| Zenke & Vogels (2021) | 83.4% |
| Catalyst (this model) | 85.9% |
Checkpoint Format
PyTorch .pt file containing:
{
'epoch': int,
'model_state_dict': OrderedDict, # PyTorch model weights
'test_acc': 0.859,
'args': dict # Complete training arguments
}
Usage
import torch
checkpoint = torch.load("shd_model.pt", map_location="cpu")
print(f"Test accuracy: {checkpoint['test_acc']:.1%}")
# Load weights into your model
model.load_state_dict(checkpoint['model_state_dict'])
Or use the Catalyst Cloud API:
pip install catalyst-cloud
from catalyst_cloud import CatalystClient
client = CatalystClient(api_key="your-key")
result = client.simulate(network_config={...})
Citation
If you use this model, please cite:
@misc{shulayevbarnes2026catalyst,
title={Catalyst N1: An Open-Design Neuromorphic Processor with Full Loihi Parity},
author={Shulayev Barnes, Henry},
year={2026},
publisher={Zenodo}
}