Metadata-Version: 2.1
Name: eegpp2-beta
Version: 0.1.2
Summary: EEG Phrase Predictor ver 2
Author-email: Vũ Anh Tuấn <vuanhtuan1407@gmail.com>
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.10
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: dropbox >=12.0.2
Requires-Dist: joblib >=1.4.2
Requires-Dist: numpy >=2.1.1
Requires-Dist: tqdm >=4.66.5
Requires-Dist: torchinfo >=1.8.0
Requires-Dist: scipy >=1.14.1
Requires-Dist: pyyaml >=6.0.2
Requires-Dist: pywavelets >=1.7.0
Requires-Dist: ptwt >=0.1.9
Requires-Dist: pandas >=2.2.2
Requires-Dist: lightning >=2.4.0
Requires-Dist: scikit-learn >=1.5.2
Requires-Dist: seaborn >=0.13.2

# EEG Phase Predictor ver 2

**Note: This is beta version, use for training with default dataset and inference only

## Setup

- Requirements: python >= 3.10
- Installing:

```aiignore
  pip install eegpp2-beta
```

## Train with default dataset

```aiignore
    python -m eegpp2 --mode "train" --model_type <mode_type> --lr <learning_rate> --batch_size <batch_size> --n_epochs <num_epochs> --n_splits <num_folds> --resume_checkpoint <resume_from_checkpoint>
```

ex: `python -m eegpp2 --mode "train" --model_type "stftcnn1dnc" --n_epochs 20 --n_splits 10 --resume_checkpoint False`

## Inference

1. Old version (**Recommend**)

```aiignore
    python -m eegpp2 --yaml_config_path <path_to_infer_config.yml>
```

ex: `python -m eegpp2 --yaml_config_path "data_config_infer.yml"`

2. New version

```aiignore
  python -m eegpp2 --mode "infer" --data_path <path_to_data_file> --infer_path <path_to_saving_file> --model_type <model_type>
```

ex:
`python -m eegpp2 --mode "infer" --data_path "./dump_eeg_1.pkl" --infer_path './inference_result.txt" --model_type "stftcnn1dnc"`

## Model type

- stftcnn1dnc: Multi-channels STFT-CNN
