Nowotny, Thomas
Spyx: A Library for Just-In-Time Compiled Optimization of Spiking Neural Networks
Heckel, Kade M., Nowotny, Thomas
As the role of artificial intelligence becomes increasingly pivotal in modern society, the efficient training and deployment of deep neural networks have emerged as critical areas of focus. Recent advancements in attention-based large neural architectures have spurred the development of AI accelerators, facilitating the training of extensive, multi-billion parameter models. Despite their effectiveness, these powerful networks often incur high execution costs in production environments. Neuromorphic computing, inspired by biological neural processes, offers a promising alternative. By utilizing temporally-sparse computations, Spiking Neural Networks (SNNs) offer to enhance energy efficiency through a reduced and low-power hardware footprint. However, the training of SNNs can be challenging due to their recurrent nature which cannot as easily leverage the massive parallelism of modern AI accelerators. To facilitate the investigation of SNN architectures and dynamics researchers have sought to bridge Python-based deep learning frameworks such as PyTorch or TensorFlow with custom-implemented compute kernels. This paper introduces Spyx, a new and lightweight SNN simulation and optimization library designed in JAX. By pre-staging data in the expansive vRAM of contemporary accelerators and employing extensive JIT compilation, Spyx allows for SNN optimization to be executed as a unified, low-level program on NVIDIA GPUs or Google TPUs. This approach achieves optimal hardware utilization, surpassing the performance of many existing SNN training frameworks while maintaining considerable flexibility.
NeuroBench: Advancing Neuromorphic Computing through Collaborative, Fair and Representative Benchmarking
Yik, Jason, Ahmed, Soikat Hasan, Ahmed, Zergham, Anderson, Brian, Andreou, Andreas G., Bartolozzi, Chiara, Basu, Arindam, Blanken, Douwe den, Bogdan, Petrut, Bohte, Sander, Bouhadjar, Younes, Buckley, Sonia, Cauwenberghs, Gert, Corradi, Federico, de Croon, Guido, Danielescu, Andreea, Daram, Anurag, Davies, Mike, Demirag, Yigit, Eshraghian, Jason, Forest, Jeremy, Furber, Steve, Furlong, Michael, Gilra, Aditya, Indiveri, Giacomo, Joshi, Siddharth, Karia, Vedant, Khacef, Lyes, Knight, James C., Kriener, Laura, Kubendran, Rajkumar, Kudithipudi, Dhireesha, Lenz, Gregor, Manohar, Rajit, Mayr, Christian, Michmizos, Konstantinos, Muir, Dylan, Neftci, Emre, Nowotny, Thomas, Ottati, Fabrizio, Ozcelikkale, Ayca, Pacik-Nelson, Noah, Panda, Priyadarshini, Pao-Sheng, Sun, Payvand, Melika, Pehle, Christian, Petrovici, Mihai A., Posch, Christoph, Renner, Alpha, Sandamirskaya, Yulia, Schaefer, Clemens JS, van Schaik, Andrรฉ, Schemmel, Johannes, Schuman, Catherine, Seo, Jae-sun, Sheik, Sadique, Shrestha, Sumit Bam, Sifalakis, Manolis, Sironi, Amos, Stewart, Kenneth, Stewart, Terrence C., Stratmann, Philipp, Tang, Guangzhi, Timcheck, Jonathan, Verhelst, Marian, Vineyard, Craig M., Vogginger, Bernhard, Yousefzadeh, Amirreza, Zhou, Biyan, Zohora, Fatima Tuz, Frenkel, Charlotte, Reddi, Vijay Janapa
The field of neuromorphic computing holds great promise in terms of advancing computing efficiency and capabilities by following brain-inspired principles. However, the rich diversity of techniques employed in neuromorphic research has resulted in a lack of clear standards for benchmarking, hindering effective evaluation of the advantages and strengths of neuromorphic methods compared to traditional deep-learning-based methods. This paper presents a collaborative effort, bringing together members from academia and the industry, to define benchmarks for neuromorphic computing: NeuroBench. The goals of NeuroBench are to be a collaborative, fair, and representative benchmark suite developed by the community, for the community. In this paper, we discuss the challenges associated with benchmarking neuromorphic solutions, and outline the key features of NeuroBench. We believe that NeuroBench will be a significant step towards defining standards that can unify the goals of neuromorphic computing and drive its technological progress. Please visit neurobench.ai for the latest updates on the benchmark tasks and metrics.
Learning efficient backprojections across cortical hierarchies in real time
Max, Kevin, Kriener, Laura, Garcรญa, Garibaldi Pineda, Nowotny, Thomas, Senn, Walter, Petrovici, Mihai A.
Models of sensory processing and learning in the cortex need to efficiently assign credit to synapses in all areas. In deep learning, a known solution is error backpropagation, which however requires biologically implausible weight transport from feed-forward to feedback paths. We introduce Phaseless Alignment Learning (PAL), a bio-plausible method to learn efficient feedback weights in layered cortical hierarchies. This is achieved by exploiting the noise naturally found in biophysical systems as an additional carrier of information. In our dynamical system, all weights are learned simultaneously with always-on plasticity and using only information locally available to the synapses. Our method is completely phase-free (no forward and backward passes or phased learning) and allows for efficient error propagation across multi-layer cortical hierarchies, while maintaining biologically plausible signal transport and learning. Our method is applicable to a wide class of models and improves on previously known biologically plausible ways of credit assignment: compared to random synaptic feedback, it can solve complex tasks with less neurons and learn more useful latent representations. We demonstrate this on various classification tasks using a cortical microcircuit model with prospective coding.
Loss shaping enhances exact gradient learning with EventProp in Spiking Neural Networks
Nowotny, Thomas, Turner, James P., Knight, James C.
In a recent paper Wunderlich and Pehle introduced the EventProp algorithm that enables training spiking neural networks by gradient descent on exact gradients. In this paper we present extensions of EventProp to support a wider class of loss functions and an implementation in the GPU enhanced neuronal networks framework which exploits sparsity. The GPU acceleration allows us to test EventProp extensively on more challenging learning benchmarks. We find that EventProp performs well on some tasks but for others there are issues where learning is slow or fails entirely. Here, we analyse these issues in detail and discover that they relate to the use of the exact gradient of the loss function, which by its nature does not provide information about loss changes due to spike creation or spike deletion. Depending on the details of the task and loss function, descending the exact gradient with EventProp can lead to the deletion of important spikes and so to an inadvertent increase of the loss and decrease of classification accuracy and hence a failure to learn. In other situations the lack of knowledge about the benefits of creating additional spikes can lead to a lack of gradient flow into earlier layers, slowing down learning. We eventually present a first glimpse of a solution to these problems in the form of `loss shaping', where we introduce a suitable weighting function into an integral loss to increase gradient flow from the output layer towards earlier layers.
Artificial Olfactory Brain for Mixture Identification
Muezzinoglu, Mehmet K., Vergara, Alexander, Huerta, Ramon, Nowotny, Thomas, Rulkov, Nikolai, Abarbanel, Henry, Selverston, Allen, Rabinovich, Mikhail
The odor transduction process has a large time constant and is susceptible to various types of noise. Therefore, the olfactory code at the sensor/receptor level is in general a slow and highly variable indicator of the input odor in both natural and artificial situations. Insects overcome this problem by using a neuronal device in their Antennal Lobe (AL), which transforms the identity code of olfactory receptors to a spatio-temporal code. This transformation improves the decision of the Mushroom Bodies (MBs), the subsequent classifier, in both speed and accuracy.Here we propose a rate model based on two intrinsic mechanisms in the insect AL, namely integration and inhibition. Then we present a MB classifier model that resembles the sparse and random structure of insect MB. A local Hebbian learning procedure governs the plasticity in the model. These formulations not only help to understand the signal conditioning and classification methods of insect olfactory systems, but also can be leveraged in synthetic problems. Among them, we consider here the discrimination of odor mixtures from pure odors. We show on a set of records from metal-oxide gas sensors that the cascade of these two new models facilitates fast and accurate discrimination of even highly imbalanced mixtures from pure odors.