يرجى الرجوع إلى 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 إلى ملفات .mat المسبقة وإعداد ملصقات المشاعر.
لكل مهمة ، سيتم تحويل جميع ملفات .mat إلى ملف .pickle واحد مخزّن في ~/datasets/ZuCo/<task_name>/<task_name>-dataset.pickle .
سيتم تخزين مجموعة بيانات المشاعر لـ Zuco ( sentiment_labels.json ) في ~/datasets/ZuCo/task1-SR/sentiment_labels/sentiment_labels.json .
سيتم تخزين مجموعة بيانات المشاعر لـ Stanford Sentiment TreeBank في ~/datasets/stanfordsentiment/ternary_dataset.json
لتدريب نموذج فك تشفير EEG إلى النص ، قم بتشغيل bash ./scripts/train_decoding.sh .
لتقييم نموذج فك تشفير EEG إلى Text المدربين من الأعلى ، قم بتشغيل bash ./scripts/eval_decoding.sh .
للحصول على تكوين مفصل للوسائط المتاحة ، يرجى الرجوع إلى الدالة get_config(case = 'train_decoding') في /config.py
نقوم أولاً بتدريب وحدة فك الترميز والمصنف بشكل فردي ، ثم نقوم بتقييم خط الأنابيب على بيانات Zuco Task1-SR.
لتشغيل عملية التدريب والتقييم بأكملها ، قم بتشغيل bash ./scripts/train_eval_zeroshot_pipeline.sh .
للتكوين التفصيلي للوسائط المتاحة ، يرجى الرجوع إلى الدالة 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}
}