Continual Learning for Adaptive EEG Monitoring in Epileptic Seizure Detection
- Type: Master/Semester Thesis
- Professor: Prof. Dr. L. Benini
In this project, the student will focus on using Continual Learning to improve EEG-based Seizure Detection models.
The study of neural activity in the human brain is a crucial area of research with various applications, including the detection and prediction of epileptic seizure activity. Electroencephalography (EEG) is a non-invasive technique widely used to record brain activity, however, conventional EEG systems are often large, cumbersome, and stigmatizing for the user. To overcome these limitations, small and energy-efficient wearable long-term EEG monitoring devices are preferred. These devices must be robust to different noises or artifacts, which can be either external disturbances or movement of the patient that taints the EEG signal.
Epilepsy is a central nervous system disorder characterized by abnormal brain activity, causing seizures or periods of unusual behavior, sensations, and sometimes loss of awareness. Systems trained to detect and predict epileptic seizure activity are usually trained on data gathered through an epilepsy monitoring unit (EMU), where conditions are controlled, and data is seldom tainted with artifacts. However, when patients leave the EMU, the wearable EEG monitoring devices may not have the same good conditions as those experienced in the EMU, resulting in EEG data that is often tainted with artifacts or differs significantly from the data the original seizure prediction model was trained on.
This presents an interesting problem, as models trained with clean, reliable EEG data may not perform well when brain activity, data quality, etc. change. One possible solution is to get the patient to come back to the EMU, but this is often a cumbersome operation that is not preferred. A more suitable approach is to continuously fine-tune the deployed models on the edge monitoring device they were deployed on, using feedback from the patient. This approach allows for the model to adapt to changes in brain activity and data quality, resulting in more accurate and reliable predictions of epileptic seizure activity.
The process of continuous refinement of a pre-trained neural network is known as continual/incremental learning (CL). We distinguish here two categories of CL, Class CL, and Domain CL. The former assumes that the number of classes a model should recognize increases over time, whilst the latter considers a fixed number of classes, yet the environment in which the samples are acquired changes with time. Note that, if information over the target domain is available for the system (e.g., user ID), we define a third category, namely Task CL. Given the aforementioned variance in the acquired EEG data, we target the Domain CL scenario. In such a context, the proposed system must adapt to the characteristics of its current user, whilst not forgetting the properties of previous users that might re-use the system; thus, our model must mitigate the "catastrophic forgetting" phenomenon.
In recent years, various methodologies were proposed for Class Incremental Learning (https://github.com/mmasana/FACIL), whilst significantly fewer techniques were employed for Domain Incremental Learning (https://github.com/GMvandeVen/continual-learning, https://www.nature.com/articles/s42256-022-00568-3, https://arxiv.org/abs/2204.08817). The goal of this project is to propose and evaluate Domain CL methods to accommodate intra- and inter-patient variability in the context of EEG data acquisition. Whilst doing so, the proposed system must abide by the TinyML constraints, thus, the adaptation process must be computationally efficient, and the memory and storage requirements must be minimized.
- 30% Literature research
- 30% Evaluation
- 40% Software implementation and optimization
- Must be familiar with Python.
- Knowledge of deep learning basics, including some deep learning framework like PyTorch or TensorFlow from a course, project, or self-taught with some tutorials.
The main tasks of this project are:
Task 1 - Familiarise yourself with the project specifics (3-4 Weeks)
Learn about DNN training and PyTorch, how to visualize results with TensorBoard.
Familiarize yourself with seizure detection and the state-of-the-art models employed for this task.
Read up on Domain CL. Together with the supervisors, propose the data split methodology.
Measure the baseline accuracy, including the upper (i.e., all data available at pretraining stage) and lower (i.e., only target data available at pretraining stage) bounds on the proposed split.
Task 2 - Implement Domain CL state-of-the-art methods (3-4 Weeks)
Implement and evaluate Domain CL techniques, tackling intra- and inter-patient variability.
(Optional) Task 3 Integrate domain-specific knowledge (2-3 Weeks)
Make use of domain-specific information, such as the user ID, to improve the accuracy over new domains.
Task 4 - Optimize the existing Domain CL methods (3-4 Weeks)
Improve the existing methods with respect to TinyML constraints (e.g., minimise the model size, reduce the computational effort, decrese the memory requirements).
Considering a few-shot learning context, reduce the number of input samples needed to learn a new domain.
Task 5 - Gather and Present Final Results (2-3 Weeks)
Gather final results.
Prepare presentation (15 min. + 5 min. discussion).
Write a final report. Include all major decisions taken during the design process and argue your choice. Include everything that deviates from the very standard case - show off everything that took time to figure out and all your ideas that have influenced the project.
The student shall meet with the advisor(s) every week in order to discuss any issues/problems that may have persisted during the previous week and with a suggestion of next steps. These meetings are meant to provide a guaranteed time slot for mutual exchange of information on how to proceed, clear out any questions from either side and to ensure the student’s progress.
Documentation is an important and often overlooked aspect of engineering. One final report has to be completed within this project. Any form of word processing software is allowed for writing the reports, nevertheless the use of LaTeX with Tgif (See: http://bourbon.usc.edu:8001/tgif/index.html and http://www.dz.ee.ethz.ch/en/information/how-to/drawing-schematics.html) or any other vector drawing software (for block diagrams) is strongly encouraged by the IIS staff.
A digital copy of the report, the presentation, the developed software, build script/project files, drawings/illustrations, acquired data, etc. needs to be handed in at the end of the project. Note that this task description is part of your report and has to be attached to your final report.
At the end of the project, the outcome of the thesis will be presented in a 15-minutes talk and 5 minutes of discussion in front of interested people of the Integrated Systems Laboratory. The presentation is open to the public, so you are welcome to invite interested friends. The exact date will be determined towards the end of the work.