16. An apparatus for learning using a spiking neural network, comprising: (a) means for delaying an input spike in an artificial neuron according to a current delay associated with an input to the artificial neuron, wherein the input spike occurs at an input spike time relative to a reference time for the artificial neuron; (b) means for emitting an output spike from the artificial neuron based, at least in part, on the delayed input spike; (c) means for determining an actual time difference between the emission of the output spike from the artificial neuron and the reference time for the artificial neuron; and (d) means for adjusting the current delay associated with the input based on a difference between a target time difference and the actual time difference, the current delay, and an input spike time for the input spike.
16. An apparatus for learning using a spiking neural network, comprising: (a) means for delaying an input spike in an artificial neuron according to a current delay associated with an input to the artificial neuron, wherein the input spike occurs at an input spike time relative to a reference time for the artificial neuron; (b) means for emitting an output spike from the artificial neuron based, at least in part, on the delayed input spike; (c) means for determining an actual time difference between the emission of the output spike from the artificial neuron and the reference time for the artificial neuron; and (d) means for adjusting the current delay associated with the input based on a difference between a target time difference and the actual time difference, the current delay, and an input spike time for the input spike. 19. The apparatus of claim 16 , further comprising: means for determining a scalar value based on the adjusted current delay, wherein the scalar value is an inverse of an exponential value of a coefficient of change of a membrane potential for the artificial neuron, the exponential raised to a power of the adjusted current delay before taking the inverse.