修正されたコードと詳細な実験については、https://github.com/neuspeech/eeg-to-textを参照してください。さらなる混乱を避けるために、このレポをアーカイブしました。
conda env create -f environment.ymlを実行して、実験で使用されているConda環境(「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に保存されている1つの.pickleファイルに変換されます。
Zuco( sentiment_labels.json )のセンチメントデータセットは~/datasets/ZuCo/task1-SR/sentiment_labels/sentiment_labels.jsonに保存されます。
ろ過されたスタンフォードセンチメントツリーバンクのセンチメントデータセットは~/datasets/stanfordsentiment/ternary_dataset.jsonに保存されます
EEGからテキストのデコードモデルをトレーニングするには、 bash ./scripts/train_decoding.shを実行します。
上から訓練されたEEGからテキストのデコードモデルを評価するには、 bash ./scripts/eval_decoding.shを実行します。
利用可能な引数の詳細な構成については、function get_config(case = 'train_decoding')を参照してください/config.py
最初にデコーダーと分類器を個別にトレーニングし、次にZUCO Task1-SRデータのパイプラインを評価します。
トレーニングと評価プロセス全体を実行するには、 bash ./scripts/train_eval_zeroshot_pipeline.shを実行します。
利用可能な引数の詳細な構成については、function get_config(case = 'eval_sentiment')を参照してください/config.py
@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}
}