Hypothesis test on spike trains with IOCANE
IOCANE is an open source project I recently started. It is a set of MATLAB code that implements various divergence measures for spike train observation. Currently, I am focusing on multi-trial observation scenario where some external stimulus is given to the neural system, and trial-to-trial variability (noise) is observed. The question is whether we can tell if two sets of spike train observations are distinct. One can use summarizing statistics such as mean firing rate, PSTH, Fano factor, inter-spike interval distribution, etc and compare these. However, these methods implicitly assume a model, hence they are parametric.
I have recently developed a non-parametric divergence measure based on finite point process model (presented at SfN). The following table compares the performance in terms of statistical power (= 1- type II error given fixed type I error) on a hypothesis test to distinguish between two conditions. As you can see, for different artificial data sets I – IV, most methods don’t universally work; they are sensitive to what they are designed to be sensitive to. On the other hand, my proposed method (HL100 and HL10, the number denotes the smoothing bandwidth) are sensitive to all situation though sometimes it doesn’t perform the best.
Non-parametric method is a generalist, while each of the parametric method is a specialist. One needs a generalist when the change is subtle or unknown. When large dataset with various possibility is given, a generalist would be a good choice to use in detecting changes. Given infinite number of samples, the proposed method is guaranteed to detect the change if there is a change. If you have a spike train dataset that defies standard analysis methods, why not try iocane? 😀
P.S.1. I have updated iocane today to include the experiments that generated the above table.
P.S.2. Yes, iocane is the (fictional) toxin from princess bride. I was laughing so hard on that scene, that I had to have my next project named after it.