My question is about spiking neural networks. Input of a typical spiking neuron is usually some floating point value, representing its inflow current, typically expressed in mA or similar units, like in a following simple example:
static const float
dt = 1.0/1000, // sampling period
gL = 0.999, // leak conductance
vT = 30.0; // spiking voltage threshold
float mV = 0; // membrane voltage
// Leaky integrate-and-fire neuron model step
bool step_lif_neuron(float I) { // given input current "I", returns "true" if neuron had spiked
mV += (I - mV*gL)*dt;
if( mV > vT ) { // reset? heaviside function is non-differentiable and discontinuous
mV = 0;
return true;
}
return false;
}
That is fine, if its purpose is to determine relation of input image to some class, or to turn motor or lamp on or off.. But here comes principal problem: a model does not describe neuron interconnection. We cannot connect a neuron to next neuron, as it usually happens inside brain.
How does one convert a bool isSpiked
value of preceeding neuron to float I
input value of next neuron?