Annals of Biomedical Engineering

, Volume 39, Issue 4, pp 1264–1277 | Cite as

1/f Neural Noise Reduction and Spike Feature Extraction Using a Subset of Informative Samples

  • Zhi Yang
  • Linh Hoang
  • Qi Zhao
  • Edward Keefer
  • Wentai Liu


This article describes a study on neural noise and neural signal feature extraction, targeting real-time spike sorting with miniaturized microchip implementation. Neuronal signature, noise shaping, and adaptive bandpass filtering are reported as the techniques to enhance the signal-to-noise ratio (SNR). A subset of informative samples of the waveforms is extracted as features for classification. Quantitative and comparative experiments with both synthesized and animal data are included to evaluate different feature extraction approaches. In addition, a preliminary hardware implementation has been realized using an integrated circuit.


Spike sorting Spike feature extraction Clustering Action potential 


Real-time extraction of information from composite neural recordings is a significant challenge in neural interfacing. Developing integrated circuit (IC) to enable portable and implantable systems is important to allow the study of complex behavior in neuroscience experiments, closed loop deep brain stimulation and cortical controlled neuromuscular prostheses. In order for a spike feature extraction algorithm to be functional as a small device with real-time low-latency processing and low-power operation, it must be efficient in both computation and IC implementation.

Implementing spike sorting before data telemetry offers many significant advantages. Spike feature extraction provides the necessary information required to sort spikes from raw sampled data. With this information, each spike event can be represented by its unique features and firing time, resulting in significant data compression. A data transceiver designed with the current semiconductor technology can simultaneously support a large number of recording channels for a microchip implementation to extract the spike feature.4,15 System integration using wireless power telemetry or a rechargeable battery as well as wireless data telemetry removes the need for tethering wires. As a result, a fully wireless operation would relieve the subjects’ overall stress factor and allow them to move freely in their natural environment.

Frequently used spike feature extraction algorithms include Principal Components Analysis (PCA),40,50 Bayesian algorithm,24 template matching,25,43,44,49 wavelets,23,30,31 Independent Component Analysis28,35,37, 38, 39 (ICA), and inter-spike interval-based algorithms.10,26,27 These all demand significant computation. Efforts to improve the efficiency of these algorithms have been reported; however, these approaches either rely on an over simplified functionality or use a hardware system that consumes too much power and space.

In part, complex algorithm procedures1,20,34 are applied to mediate the effects of noise and distortion in the recording process. Noise sources include ion channel noise,11 activity from distant neurons, low-frequency field potentials,36 thermal noise and circuit noise. Significant sampling distortion is also present since it is unrealistic to synchronize the sampling clock with individual spikes.

This article reports a new spike feature extraction algorithm which is suitable for real-time, low-latency spike sorting and enables IC implementation. “Overview of the Work” section gives overview of the work. “Similar Neurons, Noise, and Sampling Distortion” section describes spike waveform difference, noise, and distortion. “Sample Information” and “Enhancing SNR Using Noise Shaping Filter” sections focus on the selection of “informative samples.” “Experiments” section presents experimental results. “Conclusion” section concludes the work.

Overview of the Work

Variable Selection Techniques

As a complementary approach to dimensionality reduction algorithms, Jolliffe discussed a general feature extraction algorithm based on a subset of samples in a classic work.19 This concept requires only a subset of samples containing the necessary information to cluster the data, as opposed to using all of the samples. These informative samples are especially useful in the presence of single prominent sample set.

There are two challenges facing a sample selection algorithm. The first challenge is the computational burden to select informative samples. If the training procedure is as complicated as suggested in Jolliffe,19 it would prohibit microchip implementation for implant purposes. The power and area are the primary problems with the microchip implementation of other spike feature extraction algorithms. The second challenge is the availability of localized features. Improved performance compared to PCA is unlikely if localized features are not prominent.

Our Approach

We have developed a spike feature extraction algorithm based on informative samples.48 The theoretical framework includes neuronal signature, noise shaping, and informative sample selection. By evaluating neuronal geometry signatures with the compartment model, we find that improved differentiation among similar spikes can be achieved by appropriately emphasizing signal spectrum.47 Studying the noise properties has revealed that a frequency shaping filter can be used to boost the signal-to-noise ratio (SNR).46 The sample selection technique using estimated entropy identifies informative samples for sorting spikes. In addition, a preliminary IC implementation of the algorithm has been recently fabricated6 and being integrated onto a multi-channel neural recording IC.5

Similar Neurons, Noise, and Sampling Distortion

Neuronal Signature

In this section, we briefly describe an analytical model for extracellular spike, based on which we study the spike waveform difference.

Assume that both the intra- and extra-fluids are neutral, the induced voltage waveform is18
$$ V\left( {\overrightarrow {{r_{0} }} ,t} \right) = \int {{\frac{{j_{\text{m}} \left( {\overrightarrow {r} ,t} \right)}}{{4\pi \sigma_{\text{e}} \left| {\overrightarrow {r} - \overrightarrow {{r_{0} }} } \right|}}}dr} , $$
where jm is the transmembrane current and σe is the conductivity of the tissue environment; \( \overrightarrow {{r_{0} }} \) and \( \overrightarrow {r} \) represent the locations of the point electrode and the active membrane segment, respectively.
Since action potentials propagate along the axonal branches (averaged 0.5–2 ms−13,16,17), the recorded active membranes usually do not fire simultaneously. As a result, the detailed geometry of the underlying neuron may influence the shape of spikes. Following the computational model described in Greenberg et al.,12 Rattay et al.,32 Traub et al.,41 Tuckwell,42 a neuron is modeled as compartment elements. An extracellular electrode only records those membrane segments within the recording radius (measured to be tens of micrometers2) and can be modeled as one or few compartments with uniform ion channel densities. Derived from Eq. (1), the spike waveform is expressed as the convolution of the transmembrane current profile and an implicit geometry kernel function
$$ V(t) = \int\limits_{ - \infty }^{\infty } {j_{\text{m}} (\tau )W(t - \tau )d\tau } , $$
where W(t) is the geometry kernel function determined by geometry properties of the recorded membrane segments.
According to Eq. (2), the difference between two spikes is
$$ \Updelta V(t) = \int\limits_{ - \infty }^{\infty } {[j_{{m_{1} }} (\tau ) - j_{{m_{2} }} (\tau )]W_{1} (t - \tau )d\tau } + \int\limits_{ - \infty }^{\infty } {j_{{m_{2} }} (\tau )[W_{1} (t - \tau ) - W_{2} (t - \tau )]d\tau } . $$

Equations (1)–(3) can be used to evaluate the spectrum properties of ΔV(t), which is helpful for designing an appropriate filter passing band. In the cases the ion channel populations are similar, ΔV(t) can have a useful spectrum at a higher frequency point, which helps to differentiate similar spike waveforms. In “Appendix” section, an analytical approach of exploring the spectrum of ΔV(t) is included.


The recorded neural spikes are superimposed with noise that exhibits non-Gaussian characteristics. Usually, the noise spectrum magnitude reduces as frequency increases, which can be approximated by 1/fα family noise. The frequency dependency of noise is dictated by multiple sources. Identified noise sources include 1/fx neuron noise,9 electrode–electrolyte interface noise, and electronic noise, which are illustrated in Fig. 1 using lumped circuit model. Except tissue thermal noise that has a flatten spectrum, the rest ones show frequency dependency. Specifically, 1/fx neuron noise that characterizes the superimposed background activities from distant neurons is debatably induced from stochastic variation of neuron’s activation.9 Numeric simulations based on simplified neuron models suggest that x can vary in a range depending on parameters. For the electrode–electrolyte interface noise, non-faradaic type in particular, an effective distributed resistance (Ree) can be defined and generates thermal noise that is attenuated quadratically to frequency by the interface capacitance (Cee). For electronic noise, there are two major components: one is thermal noise (~kT/gm) and the other is called flicker noise (or 1/f noise) that dominates at lower frequency range and is heavily dependent on fabrication process.
Figure 1

Noise illustration for extracellular spikes. As reported in a recent conference paper,48 the dominant noise is neural noise (INeu2) circled by red box (high importance), followed by electrode–electrolyte interface noise (Iee) circled by yellow box (medium importance). Circuit noise alone \( \left( {\gamma {\frac{4kT}{{g_{m} }}} + {\frac{K}{{C_{\text{ox}} WL}}}\frac{1}{f}} \right) \) contributes less than 5% of the total noise (low importance)

1/fx Neuron Noise

Background spiking activities of the vast distant neurons (e.g., spike, synaptic release11,29) overlap the spectrum of the recorded spike signal. They usually have small magnitudes and are noisily aggregated. Analytically, the background activities are described as
$$ V_{\text{neu}} (t) = \sum\limits_{i} {\sum\limits_{s} {V_{{i.{\text{neu}}}} (t - t_{i,s} ),} } $$
where Vneu(t) represents the superimposed background activities of distant neurons; i and ti,s represent the object identification and its activation time, respectively, and Vi.neu is the spiking activity template of the ith object. Based on Eq. (4), the power spectrum of Vneu is
$$ P\{ V_{\text{neu}} \} = \sum\limits_{i} {\sum\limits_{s} {{\frac{{|X_{i} (f)|^{2} f_{i} }}{2}}\left\langle {\left. {e^{{2\pi jf(t_{{i,s_{0} + s}} - t_{{i,s_{0} }} )}} } \right\rangle } \right.} } , $$
where 〈 〉 represents the average over the ensemble and over s0, P{} is the spectrum operation, Xi(f) is the Fourier transform of Vi.neu, and fi is the frequency of spiking activity Vi.neu (the number of activations divided by a period of time). The spectrum of a delta function spike pulse train \( \left( {\sum\nolimits_{\text{s}} {\left\langle {\left. {e^{{2\pi jf(t_{{i,s_{0} + s}} - t_{{i,s_{0} }} )}} } \right\rangle } \right.} } \right), \) according to Davidsen and Schuster9, features a lower frequency and exhibits a 1/fα frequency dependency. As this term multiplies |Xi(f)|2, the unresolved spiking activities of distant neurons contribute a spectrum of 1/fx within the signal spectrum.

Electrode Noise

Assume the electrode–electrolyte interface is the non-faradaic type where charges such as electrons and ions cannot pass across the interface. In a typical in vivo recording environment that involves several different ionic particles, e.g. Na+, K+,…, the current flux of any ith charged particle Ji(x) at location x assuming spatial concentration ni(x) is described by the Nernst equation
$$ J_{i} (x) = - D_{i} \nabla n_{i} (x) + n_{i} (x)w - {\frac{{z_{i} Q}}{kT}}D_{i} n_{i} \nabla \Upphi (x), $$
where Di is the diffusion coefficient, Φ electrical potential, zi charge of the particle, Q the charge of one electron, k the Boltzmann constant, T the temperature, and w the convection coefficient. In a steady state, Ji(x) is zero with the boundary condition of maintaining about 1 V drop from metal to electrolyte. In such a case, the electrode interface can be modeled as a lumped resistor Ree in parallel with a lumped capacitor Cee. This naturally forms a low-pass filter for the interface noise. As a result, the induced noise from Ree at the input of the amplifier is
$$ N_{\text{ee}} = {\frac{4kT}{{R_{\text{ee}} }}}|R_{ee} |\left| {{\frac{1}{{j\omega C_{\text{ee}} }}}} \right|\left| {(R_{\text{b}} + j\omega C_{i} )} \right|^{2} = {\frac{4kT}{{R_{\text{ee}} }}}\left| {{\frac{1}{{1/R_{\text{ee}} + j\omega C_{\text{ee}} + 1/(R_{\text{b}} + 1/j\omega C_{i} )}}}} \right|^{2} . $$
Referring to the hypothesis that the amplifier input capacitance (Ci) is sufficiently small, introducing negligible waveform distortion, the integrated noise by electrode interface satisfies
$$ \int\limits_{{f_{{{\text{c}}1}} }}^{{f_{{{\text{c}}2}} }} {N_{\text{ee}} df} \approx \int\limits_{{f_{{{\text{c}}1}} }}^{{f_{{{\text{c}}2}} }} {{\frac{{4kTN_{\text{ee}} }}{{|1 + 2\pi jfR_{\text{ee}} C_{\text{ee}} |}}}df < {\frac{kT}{{C_{\text{ee}} }}}} . $$

Equation (8) suggests reducing electrode interface noise by increasing double layer capacitance (Cee). Without increasing the size of electrodes, carbon-nanotube (CNT) coating21 can dramatically increase electrode surface area, thus, reducing the interface noise. “Enhancing SNR Using Noise Shaping Filter” section will compare conventional electrodes and CNT-coated electrodes from a noise point of view.

In regions away from the interface boundary, ∇ni(x) = 0 results in a flattened noise spectrum. Here, we use a lumped bulk resistance Rb in series with the double-layer interface for modeling noise
$$ N_{\text{eb}} = 4kTR_{\text{b}} = 4kT\chi {\frac{{\rho_{\text{tissue}} }}{{\pi r_{\text{s}} }}}, $$
where Rb is the bulk resistance, ρtissue is the electrolyte resistivity, rs is the radius of the electrode, and χ is a constant that relates to the electrode geometry. As given in Wiley and Webster45, χ ≈ 0.5 for a plate electrode.

Electronic Noise

Noise generated by electronics can be predicted by circuit design tools and validated through measurements. At the frequency of interest, there are two major components: thermal noise of transistors and flicker noise
$$ N_{\text{electronic}} = N_{\text{cthermal}} + N_{\text{cflickter}} = \gamma {\frac{4kT}{{g_{m} }}} + {\frac{K}{{C_{\text{ox}} WL}}}\frac{1}{f}, $$
where Ncthermal is the circuit thermal noise, Ncflicker the flicker noise, gm the transconductance of the amplifier (∂iout/∂vin), γ a circuit architecture-dependent constant typically <4, K a process-dependent constant on the order of 10−25 V2,33Cox the transistor gate capacitance density, and W and L the transistor width and length, respectively. Thermal noise can be reduced by increasing transconductance (gm), which is linearly proportional to power consumption. Flicker noise can be reduced using design techniques such as large size input transistors and chopper modulations. In a sense, circuit noise can be used to trade off circuit power and area.

Total Noise

The noise sources as shown in Fig. 1 include unresolved neuron activities (Nneu), electrode–electrolyte interface noise (Nee), thermal noise from the electrolyte bulk (Neb) and active circuitry (Ncthermal), and flicker noise (Ncflicker). The noise spectrum is empirically fitted by
$$ N(f) = N_{\text{neu}} + N_{ee} + N_{\text{eb}} + N_{\text{cthermal}} + N_{\text{cflicker}} \approx {\frac{{N_{1} }}{{f^{x} }}} + N_{0} $$
where N1/fx and N0 represent the frequency dependent and flat terms, respectively. Equation (11) describes a combination of both colored noise (1/fx) and broad band noise.

Sampling Distortion

The difficulty of synchronizing the sampling clock of the analog-to-digital converter with neuron’s random firing causes sampling distortion. To illustrate this point, a toy example is shown in Fig. 2, where the black square curve is sin(t) and the red traces are sin(t + Δt) with random deviation Δt ∈ [−1/16π, 1/16π]. Using the black square curve to represent an ideal neural spike, a red trace is then a recorded spike which deviates from the ideal spike. Such deviation referring as sampling distortion introduces spike sorting errors, especially when sampling distortion is comparable to the spike difference from different neurons.
Figure 2

Sampling distortion illustration for extracellular spikes

Intuitive methods to reduce sampling distortion include increasing the sampling frequency of the ADC or performing interpolation and template matching in the digital domain.

Both approaches require additional power, computation, and storage space, which are not favorable to microchip implementation. As shown in Fig. 2, the amount of distortion varies at different samples, which is intuitive since sampling distortion is related to the waveform slope. Inspired by this property, we use a density function-based procedure to select good samples, from which the spike features are derived. The algorithm for selecting samples is efficient in both computation and storage space, and targeting hardware implementation. The details are shown in sections “Sample Information” and “Enhancing SNR Using Noise Shaping Filter.”

Sample Information

Methods to quantify information carried by individual spike samples are discussed in this section. Intuitively, a sample is considered to be informative if the superimposed spikes can be classified into multiple clusters by evaluating that sample alone. The method used to quantify the sample information is outlined below.


Sample Information Estimation


M peak aligned spike segments {vi, i = (1,2,…,M)} with N samples for each segment


Information infoj carried by spike samples {vi(j), i = (1,2,…,M)}

  • j = 1, construct one-dimensional data set X = {vi(j), i = (1,2,…,M)}

  • Obtain a nested cluster configuration based on X

  • Estimate the probability pq that a sample being partitioned into the qth cluster. Use the entropy to estimate the information infoj = −Σpq > p0pqln(pq), where p0 is a threshold of the cluster size.

  • Repeat the procedures to a different sample, e.g. j = j + 1.

As illustrated in Fig. 3, sample information is calculated based on histograms. Some histograms (e.g., Figs. 3a–e) are similar to Gaussian distributions, while some other histograms (e.g., Figs. 3f–j) exhibit multiple peaks and valleys, which are useful for grouping waveforms. The principle of sample selection is to identify those informative samples (histograms of multiple peaks and valleys), based on which to construct feature space for classification. In the next section, emphasis is made on sample information calculation.
Figure 3

(a), (b) The histogram and estimated density function at sample (#8) and (#27). As comparisons, (c), (d) display the histogram and estimated density function of the waveform derivative at sample (#8) and (#27). Sample (#8) is recognized as a non-informative sample in original waveform, but it is an informative sample in the waveform derivative; sample (#27) is a relative informative sample in original waveform, however, it is non-informative in the waveform derivative

Probability Function Estimation

The probability that a sample being partitioned into the qth cluster, pq, is obtained by locating peaks and valleys of an estimated density function of variable vi. In this section, a density function estimation method using convex kernels is introduced.

Kernel density estimation is a non-parametric way of estimating the probability density function of a random variable.7 Given x1,x2,…,xM are independent and identically distributed samples of a random variable, the kernel density estimate to approximate the probability density function is
$$ f(x) = {\frac{1}{{h^{\text{d}} }}}\sum {G\left( {{\frac{{x - x_{j} }}{h}}} \right)} , $$
where G(x) is an arbitrary isotropic kernel with a convex profile g(x), i.e., it satisfies G(x) = g(|x|2) and g(xi) − g(xj) ≥ g′(xj)(xi − xj), d is the dimension of the data (“1” here), h is the kernel bandwidth, and d is the dimension of the data space. Compared with the histogram that also approximates a probability density function, the kernel density estimate defined in Eq. (12) is a smoothed one avoiding artificial peaks/valleys due to insufficient samples. As an example, density functions of spike samples approximated by the histogram and convex kernels are displayed in Fig. 3. It is intuitive to see that kernel scope h is a sensitive parameter that affects the estimated density function. In this study, we use the local kernel bandwidth scheme, which is reported to be robust by many authors.8,13

Discussions on Sample Selection

The computation required to accurately quantify the entropy of an underlying data set is typically high. However, only a rough estimation is required to select informative samples. Therefore, the amount of spikes to compute information can be reduced to a relatively small number, which should allow hardware implementation in terms of storage space and computation complexity. With the synthesized spike data we used, each sequence contains three neuronal sources with similar firing rate. As a result, the possible information scores should be 0, \( \frac{1}{3}\ln 3 + \frac{2}{3}\ln 1.5, \) or ln 3. When we increase the amount of training events to M = 300, the information scores approximately settle to the expected values, as shown in Fig. 4.
Figure 4

Information carried by samples from spikes and their derivatives. Horizontal axis is the sample number and vertical axis is the estimated entropy. The black solid line and red dotted line represent estimated sample information from spikes and their derivatives, respectively

Investigation of informative samples in noisy spikes has been carried out. Results using synthesized spikes with recordings from neocortex and basal ganglia31 are shown in Fig. 4. There are two clear observations. First, the amount of information carried by each sample varies, indicating a non-uniform signal-to-noise plus distortion ratio. Second, it is necessary to create informative samples if due to severe noise, distortion and similarity of spike clusters, few of the samples is informative. As a constraint to create informative samples, the computation and storage space have to be feasible for microchip implementation.

Enhancing SNR Using Noise Shaping Filter

As mentioned in “Similar Neurons, Noise, and Sampling Distortion” section, a noise shaping filter can be used to enhance SNR. The fundamentals of noise shaping are straightforward. Instead of equally amplifying the spectrum, a noise shaping filter allocates more weight to high-SNR regions while reducing weight at low-SNR regions. This results in an increased ratio of the integrated signal power over the noise power. In this section, we use derivative operation as an example to illustrate the usefulness of the frequency shaping filter and further demonstrate that the filter creates additional informative samples.

In a discrete time spike sequence, the frequency response of taking derivative is
$$ H(f) = e^{{j2\pi f/f_{\text{s}} }} - 1 = 2je^{{j\pi f/f_{\text{s}} }} \sin \left( {{\frac{\pi f}{{f_{\text{s}} }}}} \right), $$
where fs is the sampling frequency of the ADC.
The noise power spectrum is modified by taking derivative. Intuitively, low-frequency noise is reduced and the high-frequency thermal noise is amplified. The quantitative impact of a noise shaping filter is affected by the recording system and biological environment. To use f−2 noise profile for illustration, the filter’s influence on noise could be quantified by λ
$$ \lambda \approx {\frac{{f_{{{\text{c}}1}} f_{{{\text{c}}2}} }}{{2f_{\text{spike}}^{2} }}} \le \frac{1}{2}, $$
where fc1 and fc2 are the lower and higher corner frequencies of the digital filter, respectively. In case λ is less than 1, SNR further increases, which favors spike sorting from the noise perspective.

The sampling distortion distribution among samples is altered after taking the derivative. In the original waveforms, samples close to peaks suffer less distortion compared with those in transition. After taking the derivative, samples initially suffering from large distortion become less distorted, because V″(t) has at least one zero crossing point during the transition. Quantitative experiments to demonstrate the creation of informative samples have been carried out and shown in Fig. 4. In these data, the black solid lines represent information carried by the samples from spikes and the dotted red lines represent the derivatives. The spike data are eight challenging sequences from Quian Quiroga et al.31 They are compiled from recordings in the neocortex and basal ganglia with superimposed noise. All eight sequences contain three neuronal sources.

The corresponding feature extraction results using the most informative samples from spikes as well as their derivatives are shown in Figs. 6a–h, which clearly presents a 3-cluster configuration.

Spike Detection and Feature Extraction Hardware Implementation

A custom neural signal processing prototype is shown in Fig. 5. The recorded neural signal is digitalized and buffered through a National Instruments PCI card and stored for further processing. The dedicated DSP chip interfaced with the PC is shown in the middle. The DSP hardware reads the neural signal through the NI card, performing spike detection and feature extraction in real-time with latency less than 2 ms. A detected spike is encoded with extracted features and the firing time. A block diagram description of the DSP hardware is shown in the upper right of Fig. 5, where blocks enclosed in the redline envelope have been integrated. In our study, spikes are detected with the nonlinear energy operator (NEO) described in Kim and Kim22. The NEO-based spike detector calculates the energy function for waveforms inside a slicing window. Once it reaches the threshold, a spike event is detected and stored for further feature extraction.
Figure 5

A custom chardware for spike detection and feature extraction

The “Noise shaping filter” serves a twofold purpose. First, it sets the low-pass and high-pass corner frequency fc1 and fc2. Second, the filter outputs the derivative of the spike waveforms to identify neurons’ kernel signatures. To handle a variety of noise profiles and spike widths, 32 filter coefficients are programmable to perform different orders of noise shaping (>30 dB attenuation of low-frequency field potential and 60 Hz noise) and achieve a flexible fc2 in kHz range. When sampling frequency is below 25 kHz, the filter can induce additional 30 dB out-of-band rejection at frequency close to DC through high-pass filtering. As shown in Fig. 6a, fs = 25 kHz, fc1 ≈ 600 Hz, and in band ripple <1 dB. It is worth mentioning that an increase of the sampling frequency fs would increase fc1 proportionally (unless using a higher order filter). An example of applying the filter to a spike sequence recorded at 40 kHz is shown in Fig. 6b, where near-DC field potentials, 60 Hz noise, and its harmonics are severely attenuated to be less than the integrated signal power.
Figure 6

Performance illustration of a high-pass digital filter with 32 coefficients. (a) Filter frequency response at 25 kHz sampling frequency, where more than 30 dB signal attenuation at near DC frequency is obtained. (b) Estimated neural signal (signal + noise) power spectrum before (the upper trace in blue color) and after the high-pass filter (the lower trace in black color), where >30 dB attenuation at near DC frequency is obtained. Notice that the field potential and 60 Hz noise and its harmonics become much smaller than the integrated signal power after high-pass filtering

In this implementation, samples including the positive and negative peaks of the spike derivative and spike heights are the features chosen for classification. The choice of this subset is made due to the small cost on computation and storage space. A NEO-based spike detector, noise shaping filter, feature extractor, the corresponding storing device, and control units described in Fig. 5 are implemented with a custom digital IC with 0.35 μm CMOS process, which consumes 1.62 × 1.62 mm2 and 93 μW.


Comparative Results on Synthesized Data

Synthesized spike sequences used in Fig. 4 are applied to compare the sorting accuracies of different approaches. Comparative feature extraction results using competing algorithms, e.g., PCA, wavelets, spike peaks, and widths, are also shown in Fig. 7. The extracted spike features are clustered on a PC. The proposed feature extraction algorithm including the most informative samples (corresponding to Figs. 7a–h) achieves the highest average accuracy (97.0%). The hardware using the pre-specified subset (as mentioned in “Spike Detection and Feature Extraction Hardware Implementation” section) gives similar accuracy (96.1%), as shown in Figs. 7i–p. The counterpart algorithms include PCA, wavelets and spike peaks and width give 78.4, 73.6, and 35.4%, respectively. The sorting accuracy comparisons are listed in Table 1.
Figure 7

Feature extraction results using the proposed algorithm and competing algorithms. (a)–(h) The extracted features using the most informative samples of spikes and their derivatives (proposed). (i)–(p) The extracted features using a subset of samples include the peaks of the spike derivative and spike height implemented on chip, proposed. (q)–(x) The PCA-based feature extraction. (y)–(af) The wavelet-based feature extraction. (ag)–(an) Spike peaks-based feature extraction. (All the algorithms are tested without performing interpolation. Overlapping spikes within 600 ms are ignored. Haar wavelet is used to perform wavelets based feature extraction, and features are obtained from the variance peaks after the wavelet transform. Two-dimensional features are projected from a higher-dimensional space)

Table 1

Accuracy comparison of using different spike feature extraction algorithms

Sequence Number









Informative Sample




































Spike Peaks









Informative samples are harvested from both spikes and their derivatives. Hardware uses peaks of spikes and their derivatives. Synthesized data are from Quiroga et al.31

Comparative Results on In Vivo Data

In this subsection, data recorded from in vivo preparations are used to evaluate the performance of PCA and the proposed algorithm.

In Vivo Data Testing A—From a Monkey Preparation

In the first example, data recorded from hippocampus of a monkey preparation is used. The testing results are summarized in Fig. 8. In Fig. 8a, detected spikes are superimposed. PCA is applied to extract features, which are shown in Fig. 8b.
Figure 8

Comparative feature extraction and sorting results. (a) Detected spikes are superimposed. (b) Extracted features using PCA. (c)–(f) display comparative results using informative sample set. (c) and (f) display unprocessed histograms of sample 20 and sample 28 after noise shaping. (d) Displays detected spikes after noise shaping. A classification is color coded and based on the feature space in (e). (e) The feature extraction results using the two informative samples, sample 20 and sample 28. Compared with PCA-based feature extraction shown in (b), (e) provides improved feature space isolation

As a comparison, spike sorting results using the informative sample selection and noise shaping are shown in Figs. 8c–f. Specifically, in Figs. 8c and f, the histograms of sample 20 and sample 28 from noise-shaped spike waveforms are plotted. Figure 8d displays detected spikes after noise shaping. A classification is color-coded and based on the feature space in (e). Figure 8e displays the feature extraction results using the two informative samples, sample 20 and sample 28. When tested with PCA, the feature space shows a one-cluster configuration (Fig. 8b). When tested with the proposed algorithm, the feature space shows a two-clustering configuration (Fig. 8e), suggesting improved feature space isolation.

In Vivo Data Testing B—Simultaneous Intra- and Extra-Cellular Recording in Anesthetized Rats

A high-quality spike database containing simultaneously intra- and extra- cellular recordings is made publicly accessible at The recording protocols of generating the database is described in Harris et al.14 In this subsection, comparative testing results on PCA and the proposed algorithm are reported in Fig. 9.
Figure 9

Comparison between PCA and informative sample-based feature extraction. (a) Detected spikes are superimposed. (b) Extracted features using PCA. (c)–(i) Comparative results using informative sample set. (c) and (f) display unprocessed histograms of sample 10 and sample 18 after noise shaping. (d) Detected spikes after noise shaping. (e) The feature extraction results using the two informative samples, sample 10 and sample 18. (g)–(i) classified spike templates based on feature space shown in (e)

Figure 9a display detected spikes. Figure 9b extracted features using PCA. Figures 9c–i display comparative results using informative sample set. Figures 9c and f display unprocessed histograms of sample 10 and sample 18 after noise shaping. Figure 9d displays detected spikes after noise shaping. Figure 9e displays the feature extraction results using the two informative samples, sample 10 and sample 18. Compared with PCA-based feature extraction (Fig. 9b), the proposed algorithm gives a clear 3-cluster configuration (Fig. 9e). To visually examine the validity of the 3-cluster configuration, classified spike templates are individually plotted in Figs. 9g–i.

The data set provides intracellular recordings as bench markers. In Fig. 10a, the firing pattern of “a classified neuron” is displayed. As a comparison, the corresponding firing pattern reported by the intracellular recording is displayed in Fig. 10b. With PCA, the algorithm fails to isolate any spiking neuron (shown in Fig. 9b). With the proposed algorithm, the positive classification rate achieves >90% and false alarm ratio is 5–20%, sensitive to spike detection threshold. This is because a neuron sometimes fires a train of spikes and latter spikes have noticeably reduced amplitude (according to the intracellular recordings). An increase in spike detection threshold reduces the positive classification rate (missing some small amplitude spike), while lowering the threshold increases the false alarm rate (bringing in a large amount of noise events).
Figure 10

Comparison of intra- and extra-spike events

In Vivo Data Testing C—From a Cat Preparation

Another example with overlapped spike clusters is selected for demonstration. The sequence is recorded from the cat cerebral cortex. The sorting results are displayed in Fig. 11. In Fig. 11a, the detected 1,210 spikes are superimposed. Extracted spike features using informative samples are shown in Fig. 11b. The discrete points in feature space are grouped into eight clusters with colors using off-line clustering. More than 90% of the superimposed spike events in Fig. 11a are classified and plotted in Fig. 11c. To further quantify the validity of the classified spike clusters, superimposed clusters in Fig. 11c are individually plotted in Figs. 11d–k. To clearly display the difference among spike clusters, Figs. 11d–g are plotted using a smaller scale (−0.3, 0.15), Figs. 11h–j are plotted in scale (−0.5, 0.3), and Fig. 11i in scale (−0.5, 0.5).
Figure 11

(a) Recorded spikes from cat cerebral cortex are superimposed, (b) the extracted spike features consist of spike height and peaks of the spike derivative are plotted and grouped with a clustering algorithm implemented on PC. (c) The classified spike clusters are superimposed. (d)–(k) Individual spike clusters superimposed in (c) are displayed. Spike clusters in (d)–(g) are plotted in a smaller scale (−0.3, 0.15) compared with (h)–(j) in (−0.5, 0.3) and (k) in (−0.5, 0.5)


A sample selection-based spike feature extraction algorithm is reported in this article. The theoretical framework includes neuronal signature, frequency shaping filter, and informative sample selection. Unlike PCA which uses correlated features, the sample selection algorithm focuses on localized and uncorrelated features which are strengthened by the frequency shaping filter. With simulated spike waveforms from a public database, the algorithm demonstrates an improved sorting accuracy compared with many competing algorithms. The algorithm is designed for integrated microchip implementation and performs real-time spike sorting. A preliminary hardware implementation has been realized using an IC chip interfaced with a personal computer.



The authors acknowledge the founding provided by the USA National Science Foundation through BMES-ERC and UC Lab Fee Program. The authors acknowledge the start-up grant provided by National University of Singapore. The authors are grateful to Dr. Victor Pikov, Eric Basham, Plexon, and BMES-ERC Cortical Testbed for providing in vivo neural data and suggestions. The authors acknowledge the in vivo database contributed by Gyorgy Buzsáki lab ( and synthesized database contributed by Quian Quiroga (


  1. 1.
    Blanche, T. J., and N. V. Swindale. Nyquist interpolation improves neuron yield in multiunit recordings. J. Neurosci. Methods 155(1):207–216, 2006.CrossRefGoogle Scholar
  2. 2.
    Buzsaki, G. Large-scale recording of neuronal ensembles. Nat. Neurosci. 7(5):446–451, 2004.PubMedCrossRefGoogle Scholar
  3. 3.
    Buzsaki, G., M. Penttonen, Z. Nadasdy, and A. Bragin. Pattern and inhibition-dependent invasion of pyramidal cell dendrites by fast spikes in the hippocampus in vivo. Proc. Natl. Acad. Sci. USA 93(18):9921–9925, 1996.PubMedCrossRefGoogle Scholar
  4. 4.
    Chae, M., W. Liu, Z. Yang, T. Chen, J. Kim, M. Sivaprakasam, and M. R. Yuce. A 128 channel 6mw wireless neural recording IC with on-the-fly spike sorting and UWB transmitter. IEEE ISSCC Dig. Tech. Papers 7(6):241–261, 2008.Google Scholar
  5. 5.
    Chae, M., Z. Yang, M. R. Yuce, L. Hoang, and W. Liu. A 128-channel 6mw wireless neural recording IC with spike feature extraction and uwb transmitter. IEEE Trans. Neural. Syst. Rehabil. Eng. 17:312–321, 2009.PubMedCrossRefGoogle Scholar
  6. 6.
    Chen, T., K. Chen, Z. Yang, K. Cockerham, and W. Liu. A biomedical multiprocessor soc for closed-loop neuroprosthetic applications. IEEE ISSCC Dig. Tech. Papers 25(4):434–435, 2009.Google Scholar
  7. 7.
    Cheng, Y. Z. Mean shift, mode seeking, and clustering. IEEE Trans. Pattern Anal. Mach. Intell. 17(8):790–799, 1995.CrossRefGoogle Scholar
  8. 8.
    Comaniciu, D., V. Ramesh, and P. Meer. The variable bandwidth mean shift and data-driven scale selection. IEEE Int. Conf. Comput. Vis. I:438–445, 2001.Google Scholar
  9. 9.
    Davidsen, J. and H. Z. Schuster. Simple model for 1/f α noise. Phys. Rev. Lett. E 65:026120, 2002.Google Scholar
  10. 10.
    Delescluse, M., and C. Pouzat. Efficient spike-sorting of multistate neurons using inter-spike intervals information. J. Neurosci. Methods 150(1):16–29, 2006.PubMedCrossRefGoogle Scholar
  11. 11.
    Fall, C., E. Marland, J. Wagner, and J. Tyson. Computational Cell Biology. Berlin: Springer, 2002.Google Scholar
  12. 12.
    Greenberg, R. J., T. J. Velte, M. S. Humanyun, G. N. Scarlatis, and E. De Juan, Jr. A computational model of electrical stimulation of the retinal ganglion cell. IEEE Trans. Biomed. Eng. 46(5):505–514, 1999.PubMedCrossRefGoogle Scholar
  13. 13.
    Hall, P., T. C. Hui, and J. S. Marron. Improved variable window kernel estimate of probability densities. Ann. Stat. 23(1):1–10, 1995.CrossRefGoogle Scholar
  14. 14.
    Harris, K. D., D. A. Henze, J. Csicsvari, H. Hirase, and G. Buzsaki. Accuracy of tetrode spike separation as determined by simultaneous intracellular and extracellular measurements. J. Neurophysiol. 84:401–414, 2000.PubMedGoogle Scholar
  15. 15.
    Harrison, R. R. The design of integrated circuits to observe brain activity. Proc. IEEE 96:1203–1216, 2008.CrossRefGoogle Scholar
  16. 16.
    Hausser, N., G. Schiller, G. Stuart, and B. Sakmann. Activity dependent action potential invasion and calcium influx into hippocampal CA1 dendrites. Science 268(5208):297–300, 1995.CrossRefGoogle Scholar
  17. 17.
    Hausser, M., N. Spruston, and G. Stuart. Diversity and dynamics of dendritic signaling. Science 290(5492):739–744, 2000.PubMedCrossRefGoogle Scholar
  18. 18.
    Holt, G. R., and C. Koch. Electrical interactions via the extracellular potential near cell bodies. J. Comput. Neurosci. 6(2):169–184, 1999.PubMedCrossRefGoogle Scholar
  19. 19.
    Jolliffe, I. T. Principal Component Analysis. New York: Springer-Verlag, 2002.Google Scholar
  20. 20.
    Jung, H. K., J. H. Choi, and T. Kim. Solving alignment problems in neural spike sorting using frequency domain PCA. Neurocomputing 69(7–9):975–978, 2006.CrossRefGoogle Scholar
  21. 21.
    Keefer, E. W., B. R. Botterman, M. I. Romero, A. F. Rossi, and G. W. Gross. Carbon nanotube-coated electrodes improve brain readouts. Nat. Nanotechnol. 3:434–439, 2008.PubMedCrossRefGoogle Scholar
  22. 22.
    Kim, K. H., and J. K. Kim. Neural spike sorting under nearly 0-dB signal-to-noise ratio using nonlinear energy operator and artificial neural-network classifier. IEEE Trans. Biomed. Eng. 47(10):1406–1411, 2000.PubMedCrossRefGoogle Scholar
  23. 23.
    Letelier, J. C., and P. P. Weber. Spike sorting based on discrete wavelet transform coefficients. J. Neurosci. Methods 101:93–106, 2000.PubMedCrossRefGoogle Scholar
  24. 24.
    Lewicki, M. S. Bayesian modeling and classification of neural signals. Adv. Neural Inform. Process. Syst. 6:590–597, 1994.Google Scholar
  25. 25.
    Lewicki, M. S. Bayesian modeling and classification of neural signals. Neural Comput. 6:1005–1030, 1994.CrossRefGoogle Scholar
  26. 26.
    Liu, X., D. B. McCreery, L. A. Bullara, and W. F. Agnew. Evaluation of the stability of intracortical microelectrode arrays. IEEE Trans. Neural. Syst. Rehabil. Eng. 14(1):91–100, 2006.PubMedCrossRefGoogle Scholar
  27. 27.
    Liu, X., D. B. McCreery, R. R. Carter, L. A. Bullara, T. G. H. Yuen, and W. F. Agnew. Stability of the interface between neural tissue and chronically implanted intracortical microelectrodes. IEEE Trans. Neural Syst. Rehabil. Eng. 7(3):315–326, 1999.Google Scholar
  28. 28.
    Mamlouk, A. M., H. Sharp, K. M. L. Menne, U. G. Hofmann, and T. Martinetz. Unsupervised spike sorting with ICA and its evaluation using genesis simulations. Neurocomputing 65–66:275–282, 2005.CrossRefGoogle Scholar
  29. 29.
    Manwani, A., P. N. Steinmetz, and C. Koch. Channel noise in excitable neural membranes. Adv. Neural Inform. Process. Syst. 12:142–149, 2000.Google Scholar
  30. 30.
    Pavlov, A., V. A. Makarov, I. Makarova, and F. Panetsos. Sorting of neural spikes: when wavelet based methods outperform principal component analysis. Nat. Comput. 6(3):269–281, 2007.CrossRefGoogle Scholar
  31. 31.
    Quian Quiroga, R., Z. Nadasdy, and Y. Ben-Shaul. Unsupervised spike detection and sorting with wavelets and superparamagnetic clustering. Neural Comput. 16(8):1661–1687, 2004.PubMedCrossRefGoogle Scholar
  32. 32.
    Rattay, F., P. Lutter, and H. Felix. A model of the electrically excited human cochlear neuron. I. Contribution of neural substructures to the generation and propagation of spikes. Hear. Res. 153:43–63, 2001.PubMedCrossRefGoogle Scholar
  33. 33.
    Razavi, B. Design of Analog CMOS Integrated Circuits. Boston, MA: McGraw-Hill, 2001.Google Scholar
  34. 34.
    Sahani, M. Latent Variable Models for Neural Data Analysis. Ph.D. Dissertation, California Institute of Technology, 1999.Google Scholar
  35. 35.
    Sakurai, Y., H. Tamura, and S. Takahashi. Dynamic synchrony of firing in the monkey prefrontal cortex during working-memory tasks. J. Neurosci. 26(40):10141–10153, 2006.PubMedCrossRefGoogle Scholar
  36. 36.
    Scherberger, H., M. R. Jarvis, and R. A. Andersen. Cortical local field potential encodes movement intentions in the posterior parietal cortex. Neuron 46:347–354, 2002.CrossRefGoogle Scholar
  37. 37.
    Snellings, A., D. Anderson, and J. Aldridge. Improved signal and reduced noise in neural recordings from close-spaced electrode arrays using independent component analysis as a preprocessor. J. Neurosci. Methods 150(2):254–264, 2006.PubMedCrossRefGoogle Scholar
  38. 38.
    Takahashi, S., and Y. Sakurai. Real-time and automatic sorting of multi-neuronal activity for sub-millisecond interactions in vivo. Neuroscience 134:301–315, 2005.PubMedCrossRefGoogle Scholar
  39. 39.
    Takahashi, S., and Y. Sakurai. Coding of spatial information by soma and dendrite of pyramidal cells in the hippocampal CA1 of behaving rats. Eur. J. Neurosci. Methods 26(7):2033–2045, 2007.CrossRefGoogle Scholar
  40. 40.
    Thakur, P. H., H. Lu, S. S. Hsiao, and K. O. Johnso. Automated optimal detection and classification of neural action potentials in extra-cellular recordings. J. Neurosci. Methods 162(1):364–376, 2007.PubMedCrossRefGoogle Scholar
  41. 41.
    Traub, R. D., R. K. S. Wong, R. Miles, and H. Michelson. A model of a CA3 hippocampal pyramidal neuron incorporating voltage-clamp data on intrinsic conductances. J. Neurophysiol. 66(2):635–650, 1991.PubMedGoogle Scholar
  42. 42.
    Tuckwell, H. C. Introduction to Theoretical Neurobiology. Cambridge: Cambridge University Press, 1988.CrossRefGoogle Scholar
  43. 43.
    Vargas-Irwin, C., and J. P. Donoghue. Automated spike sorting using density grid contour clustering and subtractive waveform decomposition. J. Neurosci. Methods 164(1):1–18, 2007.PubMedCrossRefGoogle Scholar
  44. 44.
    Vollgraf, R., and K. Obermayer. Improved optimal linear filters for the discrimination of multichannel waveform templates for spikesorting applications. IEEE Signal Process. Lett. 13(3):121–124, 2006.CrossRefGoogle Scholar
  45. 45.
    Wiley, J. D., and J. G. Webster. Analysis and control of the current distribution under circular dispersive. IEEE Trans. Biomed. Eng. 29:381–385, 1982.PubMedCrossRefGoogle Scholar
  46. 46.
    Yang, Z., Q. Zhao, E. Keefer, and W. Liu. Noise characterization, modeling, and reduction for in vivo neural recording. Adv. Neural Inform. Process. Syst. 22:2160–2168, 2010.Google Scholar
  47. 47.
    Yang, Z., Q. Zhao, and W. Liu. Improving spike separation using waveform derivative. J. Neural Eng. 6(4):046006, 2009.PubMedCrossRefGoogle Scholar
  48. 48.
    Yang, Z., Q. Zhao, and W. Liu. Spike feature extraction using informative samples. Adv. Neural Inform. Process. Syst. 21:1865–1872, 2009.Google Scholar
  49. 49.
    Zhang, P., J. Wu, Y. Zhou, P. Liang, and J. Yuan. Spike sorting based on automatic template reconstruction with a partial solution to the overlapping problem. J. Neurosci. Methods 7(5):446–451, 2004.Google Scholar
  50. 50.
    Zumsteg, Z. S., C. Kemere, S. O’Driscoll, G. Santhanam, R. E. Ahmed, K. V. Shenoy, and T. H. Meng. Power feasibility of implantable digital spike sorting circuits for neural prosthetic systems. IEEE Trans. Neural Syst. Rehabil. Eng. 13(3):272–279, 2005.PubMedCrossRefGoogle Scholar

Copyright information

© Biomedical Engineering Society 2010

Authors and Affiliations

  • Zhi Yang
    • 1
    • 2
  • Linh Hoang
    • 1
  • Qi Zhao
    • 3
  • Edward Keefer
    • 4
  • Wentai Liu
    • 1
  1. 1.Department of Electrical EngineeringUniversity of California at Santa CruzSanta CruzUSA
  2. 2.Department of Electrical and Computer EngineeringNational University of SingaporeSingaporeSingapore
  3. 3.Division of BiologyCalifornia Institute of TechnologyPasadenaUSA
  4. 4.Plexon Inc.DallasUSA

Personalised recommendations