Biomedical Signal Processing
- Understand practical problems in objective analyses of biomedical signals.
- Understand the theoretical background underlying the use of digital signal processing and statistical techniques for biomedical applications.
- Identify the best solution for specific problems by considering the benefits and limitations of various digital signal processing approaches.
- Implement appropriate signal processing algorithms for practical problems involving biomedical signals and systems.
- Propose, carry out, orally present, and write up in conference-proceedings format, a biomedical-research mini project using signal-processing.
This is a biomedical "data-science" course covering the application of signal processing and stochastic methods to biomedical signals and systems. A "hands-on" approach is taken throughout the course (see section on required software). While an orientation to biomedical data is key to this course, the tools and concepts covered here will provide foundational skills that are useful in many domains. Topics include: overview of biomedical signals; Fourier transforms review and filter design, linear-algebraic view of filtering for artifact removal and noise suppression (e.g., frequency filtering, regression, noise-cancellation, PCA, ICA); statistical inference on signals and images; estimation theory with application to inverse imaging and system identification; spectra, spectrograms and wavelet analyses; pattern classification and diagnostic decisions (machine learning approaches and workflow).
This course is distinct from other classic offerings in ECE/MA/STAT in at least three ways:
- relevant theory in signal processing and statistical methods is covered as needed, but a major focus is on implementation/application of the fundamental techniques to real-world biomedical signals.
- Statistical methods that are typically taught with a "univariate" perspective are expanded ot topologically organized high-dimensional data such as time-series and images, and done so motivated by the needs in biomedical applications (e.g., electrophysiology, neuroimaging).
- This course uses practical applications to integrate probabilistic methods with classic linear-algebraic tools (such as Fourier transforms). These foundational areas are ofthen introduced in separate courses, but are powerful when brought together.
Fall 2021 Syllabus
|Aug 24,26||Introduction; Orientation to Python; Fourier transform and general intuitions about different signal representations (linear-space view)||PS0|
|Aug 31, Sep 02||Noise reduction (I) - Triggered averaging; Filter design & trade-offs|
|Sep 07, 09||Noise reduction (II) - Filtering beyond just frequencies using linear-space thinking, noise "cancellation" and regression||PS1 due|
|Sep14,16<.>||Noise reduction (III) - Multichannel filtering, PCA and applications|
|Sep 21,23||Statistical inference (I) - Basics, ROC curves, multiple comparisons||PS2 due|
|Sep 30||Midterm project overview - P300 brain-computer interface||PS3 due|
|Oct 05, 07||Statistical inference (III) - Review, extension of methods from 1D to images|
|Oct 12||October Break - No Class|
|Oct 14||Spectral and time-frequency analysis (I) - Auto/cross-correlation review; Spectrum estimation with preview of bias/variance tradeoff|
|Oct 19, 21||Spectral and time-frequency analysis (II) - Tapering and multitaper methods||Midterm project due|
|Oct 26, 28||Spectral and time-frequency analysis (III) - Non-stationary signals and wavelets|
|Nov 02||Modeling of biomedical signals and systems (I) - Introduction to statistical estimation (ML), bias, and variance|
|Nov 04||Modeling of biomedical signals and systems (II) - Regularization (i.e., priors, MAP) and model selection|
|Nov 09||Modeling of biomedical signals and systems (III) - Minimum norm estimation and deconvolution example, Loess regression||PS4 due|
|Nov 11, 16||Spectral and time-frequency analysis (IV) - Cross-spectrum, coherence, and phase locking||Final proposal due>|
|Nov 18, 23||Machine learning approaches (I) - ROC curve review; Linear classifiers and perceptron example; Support vector machines|
|Nov 25||Thanksgiving - No Class|
|Nov 30, Dec 02||Machine learning approaches (II) - The 'training ->Validation ->Testing" workflow and combating overfitting; unsupervised clustering|
|Dec 07||Machine learning approaches (III) - Worked examples; External resources on neural networks and deep learning||Multiple choice due|
|Dec 09||Review and consolidation with more examples|
|Dec 13-17||Final project presentations during exam week (no exam)||Final report due|
Prerequisites:ECE 301 or equivalent (Signals and Systems), ECE 302 or equivalent (Probability/Random Processes), Familiarity with Python (Python will be the default language used in class, but if you strongly prefer using MATLAB instead, that is an option too). If you have questions about whether you have the requisite background, please feel free to get in touch in advance, or within the first week of classes.
Applied / Theory:60 / 40
Projects:Midterm Project (about 2-3 weeks):
A pre-defined midterm project will apply signal processing to a brain-computer interface (BCI) dataset that is based on the so-called "P300" response measured using electroencephalography (EEG). Detailed instructions will be provided to walk through the problem at hand and specify the deliverables. The data set comes from Hoffmann et al. (2008) and includes measurements both from typical control individuals and individuals with limited muscle control.
Hoffmann, U., Vesin, J. M., Ebrahimi, T., & Diserens, . (2008). An efficient P300-based brain-computer interface for disabled subjects. Journal of Neuroscience methods, 167(1), 115-125.
Final Project (final 4 weeks or so):
An independent project will apply signal processing to a research question of interest to each student. This project can either be related to ongoing research in a lab or can replicate a published study. The final projects are intended to be extensive as they will hopefully be in an area of direct interest and familiarity to each student. Projects will be presented to the class during the final two weeks of the semester (modeled after a ~10-min conference talk) and will be written up in a final report (modeled after a brief conference proceedings paper, ~2000 words + figures + references). Grading is based on content, oral presentation, and written presentation. Note: content is judged based on waht you accomplish by submission of your written report, i.e., you are welcome to keep working after your oral presentation and include a more complete version in your written report.
Textbooks:No required textbooks. Class notes and code examples will be provided.
- Python>= 3.6 (or MATLAB if you prefer
- Any software to typeset PDF documents (e.g., Jupyter notebooks converted to PDF, or Microsoft (TM) Word -> convert/print to PDF, or LaTeX)
- Software for final project presentations (e.g., Powerpoint, LaTeXBeamer, etc. converted to PDFs)