Computing with Artificial Spiking Neurons

I wrote an article in the September 2015 issue of Microsoft’s MDN Magazine titled “Computing with Artificial Spiking Neurons”. See

An artificial spiking neuron is a small software component that loosely models a real biological neuron. Spiking neurons are related to, but quite different from, regular artificial neurons used in standard neural networks.

There are several different types of artificial spiking neurons. The MSDN Magazine article describes one of the simplest variations, which is called a leaky integrate and fire spiking neuron. Spiking neurons accept inputs which can be just 0 or 1. Internally, each input is multiplied by a weight constant, which is then added to the current neuron value (equivalent to electrical potential). Then a leak value is subtracted from the neuron’s value. If the accumulated value exceeds some constant called the spike threshold, the neuron emits a 1 and then enters a temporary sleep state, otherwise the neuron emits a 0 and waits for the next input.

When a neuron’s value is graphed over time, you see a characteristic spiking-reset pattern.


Artificial spiking neurons are very simple which means they can be simulated in software very efficiently, or they can be fabricated in hardware very cheaply. The DARPA (the U.S. Department of Defense research organization) is funding a project called SyNAPSE to explore the possibility of designing computers based on artificial spiking neurons.

This entry was posted in Machine Learning. Bookmark the permalink.