Epileptic Seizure Prediction using Time Series EEG Data

3 0
  • 0 Collaborators

This project builds a predictive model to forecast an onsetting epileptic seizure before 5 minutes. The two main models used for prediction are xgboost (gradient-based decision tree) and convolutional neural networks. This work achieves a ROC-AUC of 0.79. ...learn more

Project status: Under Development

Artificial Intelligence

Groups
Student Developers for AI

Intel Technologies
Other

Code Samples [1]

Overview / Usage

An epileptic seizure is a period of conditions that occur due to abnormally high or synchronous neuronal activity in the brain. The effects vary from uncontrolled shaking movements involving much of the body with loss of consciousness to shaking movements involving only part of the body with variable levels of consciousness to a subtle momentary loss of awareness. Most of the time these episodes last less than 2 minutes and it takes some time to return to normal.

Epilepsy afflicts nearly 1% of the world’s population and is characterised by the occurrence of seizures. For many patients, medications can be given at sufficiently high doses to prevent seizures, but patients frequently suffer side effects. For 20- 40% of patients with epilepsy, medications are not effective. Even after surgical removal of epilepsy, many patients continue to experience spontaneous seizures. Despite the fact that seizures occur infrequently, patients with epilepsy experience persistent anxiety due to the possibility of a seizure occurring.

The aim of this project is to come up with Machine Learning based algorithms to warn patients of seizures some time 't' (5 minutes in this case) before the occurrence. Patients could avoid potentially dangerous activities like driving or swimming, and medications could be administered only when needed to prevent impending seizures, reducing overall side effects. A word of caution to use this study is that as it is known seizures are known to cluster, or occur in groups. Patients who typically have seizure clusters receive little benefit from forecasting follow-on seizures. Seizures that are instantly triggered also cannot be accurately forecasted beforehand, hence this study does not carry any benefits for those patients.

Methodology / Approach

Human brain activity was recorded in the form of intracranial EEG (iEEG) which involves electrodes positioned on the surface of the cerebral cortex and the recording of electrical signals with an ambulatory monitoring system. iEEG was sampled from 16 electrodes at 400 Hz, and recorded voltages were referenced to the electrode group average. These are long duration recordings, spanning multiple months up to multiple years and recording large numbers of seizures in some humans.

The challenge is to distinguish between ten-minute long data clips covering an hour prior to a seizure, and ten-minute iEEG clips of interictal activity. Preictal training and testing data segments are provided covering one hour prior to seizure with a five-minute seizure horizon. (i.e. from 1:05 to 0:05 before seizure onset.) This pre-seizure horizon ensures that seizures could be predicted with enough warning to allow administration of fast-acting medications.

The whole project is divided into six parts

  1. Data Preprocessing
  2. Feature Generation by Signal Processing Techniques
  3. Building model on generated Features
  4. Applying and training CNN on EEG as a spectrogram
  5. Ensembling the two techniques
  6. Benchmarking the results

Technologies Used

Python, PyEEG, Numpy, Keras, Scikit-Learn.

Repository

https://github.com/Fenil3510/Epileptic_Seizure_Prediction

Comments (0)