Spiking neural networks (SNNs) aim to realize brain-inspired intelligence on neuromorphic chips with high energy efficiency by introducing neural dynamics and spike properties. As the emerging spiking deep learning paradigm attracts increasing interest, traditional programming frameworks cannot meet the demands of the automatic differentiation, parallel computation acceleration, and high integration of processing neuromorphic datasets and deployment. In this work, we present the SpikingJelly framework to address the aforementioned dilemma. We contribute a full-stack toolkit for pre-processing neuromorphic datasets, building deep SNNs, optimizing their parameters, and deploying SNNs on neuromorphic chips. Compared to existing methods, the training of deep SNNs can be accelerated $11\times$, and the superior extensibility and flexibility of SpikingJelly enable users to accelerate custom models at low costs through multilevel inheritance and semiautomatic code generation. SpikingJelly paves the way for synthesizing truly energy-efficient SNN-based machine intelligence systems, which will enrich the ecology of neuromorphic computing.
翻译:脉冲神经网络(Spiking Neural Networks, SNNs)旨在通过引入神经动力学和脉冲特性,在神经形态芯片上实现高能效的类脑智能。随着新兴的脉冲深度学习范式日益受到关注,传统编程框架已无法满足自动微分、并行计算加速、神经形态数据集处理与部署的高度集成需求。本文提出了SpikingJelly框架以解决上述困境。我们贡献了一套全栈工具包,涵盖神经形态数据集预处理、深度SNN构建、参数优化及SNN在神经形态芯片上的部署。与现有方法相比,深度SNN的训练速度可提升11倍;SpikingJelly卓越的扩展性与灵活性使用户能够通过多级继承与半自动代码生成,以低成本加速自定义模型。SpikingJelly为构建真正高能效的SNN驱动机器智能系统铺平了道路,将丰富神经形态计算生态。