3.3 Experimental setup
3.3.2 Training in-the-loop
To train the network without on-chip plasticity, we used the idea of in-the-loop training (Schmuker et al. [2014], Esser et al. [2016], Schmitt et al. [2017]; sec- tion 2.3.3). As discussed before, the analog parameters are only written once at the beginning of the experiment. During the training procedure, we only change digital parameters, namely the weights between the sampling neurons and the bias connections from the bias neurons to the samplers. This resulted in a larger experiment-repetition frequency and therefore faster training speed in terms of wall-clock time spent compared to the case if we changed the analog parameters.
For the updates, we configure the network, we execute the experiment on BSS-1 and read out the spike-trains of the sampling neurons. We turn the spike-trains into states according to LIF Sampling theory and we calculate the parameter updates with the CD rule. During training, the parameter values are stored in double precision float numbers; and for experiment execution we discretize them deterministically to the nearest available 4-bit value. In machine learning, this is called the method of “shadow weights” [Courbariaux et al., 2015]. We speed up the training using the momentum method [Rumelhart et al., 1986], but otherwise we refrained from more elaborate optimization procedures. In this study, we want to verify the implementation and demonstrate the feasibility of LIF Sampling on BSS-1. In principle, the training could be combined with any optimization
3.3 Experimental setup
Table 3.1: Neuron parameters. Parameters of the network setup specified in ta- ble 3.2. The analog parameters are shown as specified in the software setup and not as realized on the hardware. For details on the calibration procedure see, e.g., [Schmitt et al., 2017]. Legend: ∗the calibration of the membrane time constant was not available at the time of this work, and the corresponding technical param- eter was set to the smallest available value instead (fastest possible membrane dynamics for each neuron). Table taken from Kungl et al. [2019].
A Sampling neuron
Name Value Description
Vreset −35 mV reset potential
Eleak −20 mV resting potential
Vthresh −20 mV threshold potential
Einh −100 mV inhibitory reversal potential Eexc 60 mV excitatory reversal potential
τref 4 ms refractory time
τmem ca. 7 ms membrane time constant∗ Cmem 0.2 nF membrane capacity
τsynexc 8 ms excitatory synaptic time constant τsyninh 8 ms inhibitory synaptic time constant
B Bias neuron
Name Value Description
Vreset −30 mV reset potential
Eleak 60 mV resting potential
Vthresh −20 mV threshold potential
Einh −100 mV inhibitory reversal potential Eexc 60 mV excitatory reversal potential
τref 1.5 ms refractory time
τmem ca. 7 ms membrane time constant∗ Cmem 0.2 nF membrane capacity
τsynexc 5 ms excitatory synaptic time constant τsyninh 5 ms inhibitory synaptic time constant
C Neurons of the random network
Name Value Description (all analog)
Vreset −60 mV reset potential
Eleak −10 mV resting potential
Vthresh −20 mV threshold potential
Einh −100 mV inhibitory reversal potential Eexc 60 mV excitatory reversal potential
τref 4 ms refractory time
τmem ca. 7 ms membrane time constant∗ Cmem 0.2 nF membrane capacity
τsynexc 8 ms excitatory synaptic time constant τsyninh 8 ms inhibitory synaptic time constant
D Synapse
Name Value Description
wbias [0,15] synaptic bias weight in hardware values (digital) wnetwork [0,15] synaptic network weight in hardware values (digital) d on the order of 1 ms(uncalibrated) synaptic delay, estimated in [Schemmel et al., 2010]
3. Bayesian inference on BSS-1
Table 3.2: Network parameters.Parameters are shown for the three different cases described in the manuscript: (A) Target Boltzmann distribution, Poisson noise. (B) Target Boltzmann distribution, random network for stochasticity. (C) Learning from data, random network for stochasticity. Note that the in-degree, sometimes also referred to as a fan-in factor, represents a neuron’s number of pre-synaptic partners coming from some specific population. Table taken from Kungl et al. [2019].
A Probability distribution with Poisson Noise
Name Value Description
Ns 5 number of sampling neurons Nb 1 number of bias neurons Nr 0 number of random neurons
KRN - within-population in-degree of neurons in the random network Knoise - in-degree of sampling neurons from the random network wRN - synaptic weights in the random network
in hardware units
νPoissone/i 300 Hz Poisson frequency to sampling neurons per synapse type
B Probability distribution with random network
Name Value Description
Ns 5 number of sampling neurons Nb 1 number of bias neurons Nr 200 number of random neurons
KRN 20 within-population in-degree of neurons in the random network Knoise 15 in-degree of sampling neurons from the random network wRN 10 synaptic weights in the random network
in hardware units
νPoissone/i - Poisson frequency to sampling neurons per synapse type
C High-dimensional dataset
Name Value Description
Ns {207, 208} number of sampling neurons, { rFMNIST, rMNIST } Nb 1 number of bias neurons
Nr 400 number of random neurons
KRN 20 within-population in-degree of neurons in the random network Knoise 15 in-degree of sampling neurons from the random network wRN 10 synaptic weights in the random network
in hardware units
3.4 Experiments and results