Overview
Welcome to the home page for David Halliday, describing research in Computational Neuroscience and Neural Computing. Topics include:
- Multivariate statistical signal processing for analysis of neural signals
- Spiking neural networks (SNNs)
- Spiking astrocyte-neuron networks (SANNs)
- Neuromorphic computing
Background to Computational Neuroscience
Figure shows drawing of individual neurons by Santiago Ramón y Cajal. Different neurons types are labelled with different letters.
"Against a clear background stood black threadlets, some slender and smooth, some thick and thorny ... All was sharp as a sketch with Chinese ink on transparent Japanese paper ... A look was enough - dumfounded I could not take my eye from the microscope."
The words of Santiago Ramón y Cajal (1852-1934) in 1887, when he looked through a microscope at a section of neural tissue stained with a silver preparation which had been developed by Camillo Golgi in 1873.
Cajal was the first to propose the view that the nervous system consists of billions of independent neurons. Cajal's work resulted in the formulation of the “Neuron Doctrine”, and the founding of the modern era in neuroscience. Cajal and Golgi shared the 1906 Nobel prize in Medicine for their work.
What is Computational Neuroscience?Computational Neuroscience aims to understand the structure and function of the nervous system through mathematical analysis of neural signals, and modelling of the electrical activity in single neurons and networks of neurons. It in an interdisciplinary area involving the physical sciences (Engineering, Computing, Mathematics, Statistics) and life sciences (Neuroscience, Psychology, Neurophysiology).
"It is these boundary regions of science which offer the richest opportunities to the qualified investigator" (Norbert Wiener, In: Cybernetics, MIT 1948)
Statistical signal processing for neural signals
Figure shows 2 seconds of EEG recorded over the motor cortex of an individual making a wrist extension after 0.5s. The random nature of this signal is characteristic of neural signals, there are no obvious features in the EEG. Statistical signal processing techniques are needed to detect interesting features. We make extensive use of time and frequency methods using the discrete Fourier transform."The frequency approach, which leads to the spectrum, has been the principal method of opening the black boxes of nature." Richard Hamming.
We use a range of approaches: Spectra, coherence and phase, multivariate analysis using partial spectra and partial coherence. Non stationary analysis using analytic wavelets and single trial analysis using multiwavelets. For analysis over long time scales we have developed an efficient method for spectral tracking using Kalman filtering of spectra and coherence. Non linear analysis using higher order spectra. Time domain measures include cumulant/covariance and partial cumulant. We have developed an empirical approach for directional decomposition of coherence: Non-parametric directionality (NPD) which decomposes coherence into forward, reverse and zero lag components. Multivariate methods include graphical network analyses using partial coherence and NPD.
Applications areas include control of movement and electrophysiological signal analysis.
Spiking neural networks and neuromorphic computingMany of our statistical signal processing techniques can be applied to neural spike train data, providing a framework within which to characterise and quantify the behaviour of spiking neural networks (SNNs).
Spiking astrocyte neuron networksThe SPANNER project (Self-rePAiring spiking Neural NEtwoRk) explored how spiking-astrocyte neural networks can be used to develop fault tolerant neurmorphic computing.
An overview of the SPANNER project is here.
Results from SPANNER are available
here.
Neural signal processing:
- Invited reviews in Progress in Biophysics and Molecular Biology: DOI1, PDF1; DOI2, PDF2.
- Pooled coherence analysis: DOI1, PDF1; DOI2, PDF2.
- Partial coherence analysis: DOI1, PDF1; DOI2, PDF2.
- Invited book chapters: Citations, PDF1, PDF2.
- Non parametric directionality (NPD):
DOI1, PDF1; DOI2, PDF2; DOI3, PDF3. - Brain network inference using phase lag index (PLI): DOI, PDF.
- Wavelet methods: DOI, PDF,
- Multiwavelet single trial analysis: DOI, PDF.
- Optimal spectral tracking using Kalman filering: DOI, PDF.
Control of movement:
- Coherence analysis of single motor units during voluntary contractions: DOI, PDF.
- First publication of corticomuscular coherence in humans:
- Neurogenic components of physiological tremor: DOI, PDF.
- Functional modulation of motor unit coupling during gait: DOI, PDF.
- Developmental profile of corticospinal coherence: DOI.
- Changes in corticospinal drive following stroke: DOI.
- Relationship between arm swing and gait: DOI1, PDF1; DOI2, PDF2.
- Spinal cord injury: DOI1, PDF1; DOI2, PDF2; DOI3, PDF3.
Electrophysiological studies:
- Male-female differences in learned fear expression:
DOI1, PDF1; DOI2, PDF2. - Effects of early life adversity on cognitive-emotional interactions in adulthood: DOI1, DOI2.
- Coexistence of gamma and high-frequency oscillations in hippocampus: DOI, PDF.
- Rhythmogenesis in cortico-basal ganglia circuits of the parkinsonian rat: DOI, PDF.
SNNs and Neuromorphic computing:
PhD projects in Computational Neuroscience
If you are interested in PhD study this section gives details of potential projects and how to apply.
- Development and application of statistical signal processing techniques for multivariate neuronal recordings.
- Computer modelling of Spiking Neural Networks (SNNs) to investigate fundamental mechanisms in neural coding, neural computing and information processing in the brain.
Theme 1: Neural and statistical signal processing.
Theme 2: Neural computing with spiking neural networks.
Combined projects. Projects can readily combine aspects of both of these themes, for example simulated cortical neuron networks can provide data to validate novel statistical signal processing approaches to study neuronal interactions and neuronal connectivity.
Skills and skills development
What skills are needed and what skills will be developed by undertaking a PhD or MSc research project in this area? The field of Engineering is a key discipline in the study of the brain. Research in Computational Neuroscience will develop a range of theoretical and practical skills. Depending on your choice of project you can develop theoretical skills in statistics and statistical signal processing (for example Fourier, Wavelet, estimation and Kalman filtering, information theoretic approach, linear and non-linear techniques, stationary and non-stationary techniques) in parallel with your practical skills in designing implementing and applying signal processing algorithms to multivariate data sets (using e.g. MATLAB, C/C++, Python). Practical skills in managing and working with large data sets is important in many disciplines, research in the “data rich” world of experimental Neuroscience is an excellent way to develop and refine these data skills, which will have relevance across the digital world.
Simulation and modelling are key skills in all branches of Engineering. The ability to understand, implement and use numerical methods for simulation of SNNs or SANNs are transferable skills that can map to a wide range of applications in modelling dynamical systems described by differential equations. Modelling single neurons and SNNs/SANNs will develop your expertise in using numerical methods for solution of dynamical systems (using for example MATLAB, Python, C/C++ ) and the construction of spiking neuron models and networks of these, which represent the building blocks in Neuromorphic computing. Depending on interests the construction of custom hardware models can be included in the project, typically using FPGA systems.
Experimental skills can be developed through use of SNNs in different application areas, for example real-time control of mobile or swarm robotic systems. Facilities exist to support robotic experimentation.
Further details
Details about applying and availability of scholarships are here.
If you have any queries - please get in touch.
Software and Downloads
NeuroSpec is an archive of MATLAB routines for multivariate Fourier analysis of time series point process data. It has been designed for analysis of neural time series, including EEG, MEG, EMG, Local Field Potential (LFP), kinematic (e.g. tremor) and single unit data. The techniques have broad applicability, so will be suited to other types of time series or event data. Neurospec (previously at https://www.neurospec.org/) is at: https://github.com/dmhalliday/NeuroSpec Modeling in the NeurosciencesThe data that accompanies chapter 20 of the book "Modeling in the Neurosciences" is available as MATLAB and text files.
MATLAB file is here (ZIP, 921Kb)
Text file is here (ZIP, 1492Kb)
Citation: Halliday, DM (2005) Spike-train analysis for neural systems. In: Modeling in the Neurosciences (2nd edition), Eds: Reeke GN et al. CRC Press, Ch 20, pp 555-579, ISBN 0415328683.