Knowledge Center
Knowledge Center

Neuromorphic Computing

A compute architecture modeled on the human brain.


Neuromorphic computing is based upon how the human brain processes data. There is a central compute center (the brain) connected to arrays of sensors—neurons in the human body—that may or may not be completely accurate.

Neuromorphic computing is the basis of artificial intelligence, deep learning and machine learning. Each of those involves a training phase and an inference phase. In the training phase, the system is presented with a large dataset and learns how to “correctly” analyze it. In supervised learning, the dataset already is labeled by human experts, and the task is to produce the “right” answer when presented with new, but related examples.

An image search algorithm might learn to place images in one of several predefined categories, for example. In unsupervised learning, the training data is not labeled, and it is up to the algorithm to determine what categories apply. In the inference phase, the system actually does whatever task it has been trained to do. It classifies unknown images, it extracts information from a video stream, it navigates an autonomous vehicle through a neighborhood.

Much of the current research on neuromorphic computing focuses on the use of non-volatile memory arrays as a compute-in-memory component for artificial neural networks (ANNs).

ANNs are being deployed commercially now. Any improvement in their performance is worth pursuing. But it’s important to remember that ANNs are significantly different from their biological antecedents. Improving the performance of a single step in a single type of algorithm does little to advance machine learning or neuromorphic computing generally.