수정 된 코드 및 세부 실험은 https://github.com/neuspeech/eeg-to-text를 참조하십시오. 더 혼란을 피하기 위해이 저장소를 보관했습니다.
conda env create -f environment.yml 실행하여 실험에 사용 된 콘다 환경 ( "eegtotext")을 작성하십시오.
.mat 파일을 ~/datasets/ZuCo/task1-SR/Matlab_files , ~/datasets/ZuCo/task2-NR/Matlab_files , ~/datasets/ZuCo/task3-TSR/Matlab_files 로 이동하십시오..mat 파일을 ~/datasets/ZuCo/task2-NR-2.0/Matlab_files 로 이동하십시오. bash ./scripts/prepare_dataset.sh preprocess .mat 파일로 실행하고 감정 레이블을 준비하십시오.
각 작업마다 모든 .mat 파일은 ~/datasets/ZuCo/<task_name>/<task_name>-dataset.pickle 에 저장된 하나의 .pickle 파일로 변환됩니다.
Zuco ( sentiment_labels.json )에 대한 Sentiment 데이터 세트는 ~/datasets/ZuCo/task1-SR/sentiment_labels/sentiment_labels.json 에 저장됩니다.
필터링 된 Stanford Sentiment TreeBank에 대한 감정 데이터 세트는 ~/datasets/stanfordsentiment/ternary_dataset.json 에 저장됩니다.
EEG-to-text 디코딩 모델을 훈련 시키려면 bash ./scripts/train_decoding.sh 실행하십시오.
위에서 훈련 된 EEG-to-Text 디코딩 모델을 평가하려면 bash ./scripts/eval_decoding.sh 실행하십시오.
사용 가능한 인수에 대한 자세한 구성은 /config.py 에서 get_config(case = 'train_decoding') 함수를 참조하십시오.
먼저 디코더와 분류기를 개별적으로 훈련 한 다음 Zuco Task1-Sr 데이터의 파이프 라인을 평가합니다.
전체 교육 및 평가 프로세스를 실행하려면 bash ./scripts/train_eval_zeroshot_pipeline.sh 실행하십시오.
사용 가능한 인수에 대한 자세한 구성은 /config.py 에서 get_config(case = 'eval_sentiment') 함수를 참조하십시오.
@inproceedings{wang2022open,
title={Open vocabulary electroencephalography-to-text decoding and zero-shot sentiment classification},
author={Wang, Zhenhailong and Ji, Heng},
booktitle={Proceedings of the AAAI Conference on Artificial Intelligence},
volume={36},
number={5},
pages={5350--5358},
year={2022}
}