In many parts of the nervous system, the spike times generated by neurons are quite random. For many experimental stimuli, repeated presentations results in randomly varied spike times. While this is definitely not always the case, as spike times can be quite reliable trial-to-trial, it is useful to have statistical models of spike trains as point processes.

The spike train model can be defined by its interspike intervals, , which are the time between spikes. Different statistical models generate intervals from different distributions. Three common models (defined here in plain English, I hope) are

- Poisson spike train- This approach models the spike train as a Poisson point processes. The intervals are identically, independently distributed with an exponential distribution defined by the rate parameter in spikes per second. https://bitbucket.org/erikjohnson24/eriksresearchcode/src/master/neural/poisson_spikes.m
- Renewal spike train- A general renewal point process also has identically, independently distributed intervals. To improve over the Poisson spike train, it makes sense to use the experimental interspike interval distribution to generate the intervals independently and identically. This will provide a match to the experimental data. https://bitbucket.org/erikjohnson24/eriksresearchcode/src/master/neural/renewal_spikes.m
- Markov spike train- I originally came across these models in Dr. Ratnam and Dr. Nelson’s 2000 paper on anti-correlations in the spike trains of P-type afferents. This extends the renewal model by introducing a dependence on the previous interval. The next interval is then determined by the conditional distribution of interspike intervals given the previous interval. This can, of course, be extended to higher orders as well, although the code is only for the first order. This model can represent the statistical relationship between intervals, which are often observed experimentally. https://bitbucket.org/erikjohnson24/eriksresearchcode/src/master/neural/markov_spikes.m

Soon, I hope to get some code posted up on analyzing the statistics of spike trains, using these models as examples.