epodium / EEG_age_prediction

Deep learning for age prediciton using EEG data
Apache License 2.0
4 stars 5 forks source link

EEG_age_prediction

Deep learning for age prediciton using EEG data.

Structure of files

Notebooks

The main content of this project can be found in the Notebooks/ folder. The following notebooks can be found here:

Initial experiments:

Preprocessing:

Model training:

Model validation:

Weights inspection:

Configuration file

The config_template.py file should be renamed to config.py. Here the paths of the file locations can be stored. The ROOT folder can be the ROOT folder of this repository as well.

The Data folder contains the following folder/files:

We made use of a SECOND_ROOT, which was an external harddisk. On this harddisk the raw EEG data (.cnt files) was stored.

Helper files

The main folder of this repository also contains a few helper files, for example DataGenerators.

Scripts

The scripts were used to train the models on an external cluster (Surfsara Lisa). This was done using the reduced DL data set and was only used for hyperparameter search of the DL models. The final models were trained using the full DL data set.

Data set

The data set of this project is not publicly available as it contains privacy-sensitive information. NLeSC employees can download the data from surfdrive. Contact Pablo Lopez-Tarifa (p.lopez@esciencecenter.nl) for access to the data, or Sven van der Burg (s.vanderburg@esciencecenter.nl)

Getting started

How to get the notebooks running? Assuming the raw data set and metadata is available.

  1. Install all Python packages required, using conda and the environment.yml file.
  2. Update the config_template.py file and rename to config.py.
  3. Use the preprocessing notebooks to process the raw data to usable data for either the ML or (reduced) DL models (separate notebooks).
  4. The 'model training' notebooks can be used the train and save models.
  5. The 'model validation' notebooks can be used to assess the performance of the models.