Transfer Learning in Brain-Computer Interfaces: Language-Pretrained Transformers for Classifying Electroencephalography
This repository contains the source code accompanying my master's thesis at the Vrije Universiteit Brussel.
Contact information:
Name | Email address | GitHub | |
---|---|---|---|
Wolf De Wulf | wolf.de.wulf@ed.ac.uk | https://www.linkedin.com/in/wolf-de-wulf/ | https://github.com/wulfdewolf |
Run the setup.sh
script to create a virtual environment that has all
the required python packages installed:
./scripts/local/setup.sh
Then, activate that environment:
source env/bin/activate
To deactivate the virtual environment, use:
deactivate
Run the download.sh
script to download the data:
./data/download.sh
The raw data is downloaded to data/raw
.
Run the process.py
script to process the data:
python data/process.py
The processed data is saved in data/processed
, the features are saved in data/feature_extracted
Run the run.py
script to see what it can do:
python run.py --help
The scripts that were used to produce the results presented in the thesis can be found in the scripts/cluster
folder.
A summary of the results can be found on Weights & Biases.
Warning: The evaluations consist of hyperparameter optimisation runs, each of which run subject-wise cross-validation of a large deep learning model. Running the evaluations on a device without a GPU is highly discouraged. Even for devices with a high-end GPU, running them can take a long time and a lot of memory. During research all evaluations were ran on the VUB Hydra HPC and the VUB AI lab HPC.
If for some reason you want the results in .csv
format or if you have questions, feel free to contact me via mail.