Repository with several implementations of neural network models.
It's still in development.
Variation of voltage can be obtained with Runge Kutta Fourth Method or Euler Method.
Neuron | Implementation | Tests | Results |
---|---|---|---|
Hodking Huxley | HH.py | HH-test.py | HH |
Izhikevich | IZHI.py | IZHI-test.py | IZHI |
Leaky Integrate and Fire | LIF.py | LIF-test.py | LIF |
Leaky Integrate and Fire - Synapses | LIF_Synapse.py | LIF_Synapse-test.py | LIF_SYN |
The code for this model was developed using the paper written by Izhikevich with the constant variables described at the document. This is the Code for a single neuron. The threshold used was -30 mV.
The parameter used to generate these graphs were:
a = 0.1 or 0.02 # How fast the recovery is. It's proportional to the frequency of spikes for a constant input.
b = .2 # Sensitivity of the variable u to the subthreshold membrane fluctuation
c = -65 # After spike reset value of the voltage
d = 8 # After spike reset value of the u variable
This graph shows the fast and regular spiking with constant a = 0.1
This graph show the slow and regular spiking with constant a = 0.02
This is a random network taken from the Izhikevich Paper with no learning and 750 Excitatory and 250 Inhibitory neurons. The results are just as expected.
http://worldcomp-proceedings.com/proc/p2013/BIC3207.pdf
https://www.ncbi.nlm.nih.gov/pmc/articles/PMC1392413/pdf/jphysiol01442-0106.pdf
http://www.math.mcgill.ca/gantumur/docs/reps/RyanSicilianoHH.pdf
http://www.math.pitt.edu/~bdoiron/assets/ermentrout-and-terman-ch-1.pdf
https://neuronaldynamics.epfl.ch/online/Ch1.S3.html
Izhikevich Paper
Hodgkin Huxel Paper