Skip to content

Navidfoumani/EEG2Rep

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

49 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

EEG2Rep: Enhancing Self-supervised EEG Representation Through Informative Masked Inputs

KDD 2024

News: This work has been accepted for publication in KDD24

✨ 🏆 1st Place in the Audience Appreciation Awards!

Geoffrey Mackellar, Soheila Ghane, Saad Irtza, Nam Nguyen, Mahsa Salehi

This work follows from the project with Emotiv Research, a bioinformatics research company based in Australia, and Emotiv, a global technology company specializing in the development and manufacturing of wearable EEG products.

EEG2Rep Paper: PDF

This is a PyTorch implementation of EEG2Rep: Enhancing Self-supervised EEG Representation Through Informative Masked Inputs

Datasets

  1. Emotiv: To download the Emotiv public datasets, please follow the link below to access the preprocessed datasets, which are split subject-wise into train and test sets. After downloading, copy the datasets to your Dataset directory.

    Download Emotiv Public Datasets

  2. Temple University Datasets: Please use the following link to download and preprocess the TUEV and TUAB datasets.

    Download Temple University Datasets

(Note: You’ll need to register before accessing the data.)

After downloading the raw files, use the provided Python scripts in the dataset directory to process and convert them into the NumPy format used in this project. First, run TUEV.py and TUAB.py to extract the data, and then execute numpy_maker.py to generate the final NumPy-formatted datasets.

Setup

Instructions refer to Unix-based systems (e.g. Linux, MacOS).

This code has been tested with Python 3.7 and 3.8.

pip install -r requirements.txt

Run

To see all command options with explanations, run: python main.py --help In main.py you can select the datasets and modify the model parameters. For example:

self.parser.add_argument('--epochs', type=int, default=100, help='Number of training epochs')

or you can set the parameters:

python main.py --epochs 100 --data_dir Dataset/Crowdsource

Citation

If you find EEG2Rep useful for your research, please consider citing this paper using the following information:

```
@inproceedings{eeg2rep2024,
  title={Eeg2rep: enhancing self-supervised EEG representation through informative masked inputs},
  author={Mohammadi Foumani, Navid and Mackellar, Geoffrey and Ghane, Soheila and Irtza, Saad and Nguyen, Nam and Salehi, Mahsa},
  booktitle={Proceedings of the 30th ACM SIGKDD Conference on Knowledge Discovery and Data Mining},
  pages={5544--5555},
  year={2024}
}

```

About

KDD24 - EEG2Rep: Enhancing Self-supervised EEG Representation Through Informative Masked Inputs

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages