Mapping small-world connecitivty to a memristive multi-core neuromorphic architecture using a graph theoretical approach

Type: Master Thesis project at the Insistute of Neuroinformatics, University of Zurich and ETH Zurich.

Keywords: Memristive neuromorphic hardware, small-world graphs
Motivation
The connectivity of the neurons in the brain is mostly local, with neurons primarily connecting to their neightbors, with only sparse connectivity to non-neighboring neurons. This connectivity pattern is known as “small-world “. Inspired by this local connectivity, we have recently proposed a hardware architecture, called Mosaic, using distributed computing nodes, which are densely locally connected [1]. The sparse connectivity between them is enabled by distributed routers. This is shown in Fig. 1.

We have shown that imposing the small-world connectivity does not harm the accuracy of the network on sensory processing tasks such as anomaly detection and speech processing [1], but it saves more than 66% in energy and power consumption compared to a fully-connected recurrent network.

Task Description
The task is to map a connectivity matrix learned by PyTorch onto the Mosaic hardware architecture. Specifically, we would like to answer the question on how to configure the state of the memory devices in the Mosaic architecture to match the trained connectivity matrix. The code implementing the Mosaic architecture is available. The student will use graph theoretical tools, e.g. Python networkx to analyze the connectivity of the Mosaic architecture and match it to the optimal connectivity matrix for a family of sensory processing tasks.

Start: June/July 2022

[1] Dalgaty, et al, “The neuromorphic Mosaic: re-configurable in-memory small-world graphs”, 2021

Requirements

Proficiency in Python is required. Knowledge on Graphs/Spiking Neural Networks is recommended.

Contact

Please contact Melika Payvand (melika (at) ini.uzh.ch), sending your CV and a short description of motivation and background (<0.5 page).

© 2022 Institut für Neuroinformatik