BrainAuth 是一个基于脑电(EEG)信号的个体身份验证系统。本项目基于PhysioNet EEG Motor Movement/Imagery Dataset v1.0.0,集成了数据预处理、深度学习模型训练与超参数自动优化等完整流程。该项目提出的SiameseICAConvNet,在实验中取得了最佳效果。
- EEG 数据批量化整理与预处理(滤波、重采样、归一化、窗口切分等)
- Optuna 自动超参数调优
- 训练与评估流程可视化
- 配置化实验管理,易于复现
- 克隆本仓库
- 安装依赖(推荐使用虚拟环境)
pip install -r requirements.txt
- 准备PhysioNet EEG数据并放置于
data/raw/目录
python src/organize_file.pypython src/preprocess.py --config configs/config.yamlpython src/train.py --config configs/config.yamlpython src/hyperparameter_tuning.pyBrainAuth/
├── configs/ # 配置文件
├── data/ # 数据目录
│ ├── raw/ # 原始数据
│ ├── organized/ # 整理后的数据
│ └── processed/ # 预处理后数据
├── outputs/ # 训练与调优结果
├── src/ # 源代码
│ ├── preprocess.py
│ ├── train.py
│ ├── hyperparameter_tuning.py
│ └── ...
└── README.md
- 所有流程均通过 YAML 配置文件控制,详见
configs/config.yaml。 - 支持命令行参数覆盖配置项。
- 推荐在
dataloader.mode选择siamese,并使用 SiameseICAConvNet 结构。