11 KiB
Electroencephalography Signal Processing: A Comprehensive Review and Analysis of Methods and Techniques
https://pmc.ncbi.nlm.nih.gov/articles/PMC10385593/ published july 2023 Review of articles related to eeg signal processing. This paper discusses the entire process from acquisition, denoising, feature extraction, classification and application. Presents a table of EEG applications and references to papers where it was researched.
Denoising Methods to suppress strong signals caused by eye movement, blinking, heart activity.
- Regression method - During acquisition electro-oculogram is recorded concurrently with eeg signal. Using regression we can assume which signals are noise. Not good enough.
- Blind source separation - Technique that separates source signals from mixed signals without prior knowledge of the original signals. Uses an BSS algorithm to decompose the eeg signal into its sources. The noise sources are then identified and eliminated. Harder to separate emg signals from source. PCA can be used, has good results.
- Canonical correlation analysis - Good with signals contaminated with muscle artifacts. More effective than ICA. Possible to use to distinguish brain activity and muscle activity.
- Wavelet transform - Data often contain irregularities. Wavelet transform to analyze non-stationary signals. Divides EEG signal into wavelet components. Noisy components are removed and signal is reconstructed from other components. Can be combined with ICA, had success.
- Empirical mode decomposition - Decompose signal into a set of intristic mode functions and a monotonic residual. One of the advantages of EMD is its ability to extract local amplitude, phase, and frequency content from the resulting components. EMD is also adaptive and efficient and, when combined with other techniques, it can lead to new advancements in the denoising of EEG signals.
Table with different techniques and their results, Table 2. Metrics for denoising: mean squared error (MSE), root mean squared error (RMSE), signal-to-noise ratio (SNR), and percentage root mean square difference (PRD).
Feature engineering Deep NN, adversarial generative networks (GAN) have been tried. Problem is interpretability. XAI based Smooth-Grad used to recognize emotions, seizures.
- Time-frequency analysis - Establish link between time and frequency domain. Sliding window of signal is analyzed using techniques of signal processing such as analysis of variance, waveform parameter analysis, wave identification, histogram analysis, correlation analysis. Used SVD to predict seizures. Or CNN to optimize Wigner-Ville distribution as an input without parameters. Falls short in analyzing high-order information.
- High-Order spectral analysis - Good to analyze high-order information. Capable of suppressing gaussian noise and producing spectral structures that reflect more information. Principal component features are extracted using PCA on the 15 high-order spectra(HOS) features. Also uses SVM with gaussian kernel. This method achieved accuracy of 95%
- Nonlinear dynamics analysis - Usage of non-linear techniques such as Lyapunov exponent. Interesting algorithm equal symbolic entropy
Classification
Traditional methods like Bayesian, decision tree, k-nearest neighbors, support vector machine, random forest, etc. Those methods sort of work. Mainly classifying epilepsy, motor imagery and stroke prediction. In motor imagery adding Gaussian noise to improve recognition rates. KNN achieved best score in such tasks, used linear discrimination analysis to reduce dimensions. Later combining SVM, LDA and ANN in voting mechanism to improve accuracy. Decision trees, random forests, and multi-layer perceptron are popularly used to predict gender from the obtained data. Random forest classifier performs best with the EEG of negative emotions.
Deep Learning Data is denoised, extracted features and on that is Deep learning model trained. Used for stroke detection, pretty promising they say, better than logistic regression. Models like GoogleNet and AlexNet have been used, where AlexNet outperformed GoogleNet in detecting sleep disorders.
Challenges
- Denoise from sources like eye blink, muscle movement
- EEG signals are non stationary, their statistical properties change over time
- Hard to locate exact source of specific signal
- The data vary depending on placement of reference electrode
- Deep NN have problem with interpretability
- Differences between different people
A generic framework for adaptive EEG-based BCI training and operation
https://arxiv.org/abs/1707.07935
EEG Data Augmentation Method for Identity Recognition Based on Spatial–Temporal Generating Adversarial Network
https://www.mdpi.com/2079-9292/13/21/4310
Authors propose end-to-end EEG data augmentation method based on spatial-temporal generative adversarial(STGAN) network. Discriminator uses temporal feature encoding (todo learn about it more here) and a spatial feature encoder in parallel. Good for global dependencies across channels and time of EEG. GAN improves quality and diversity of augmented EEG data. Conducted on BCI-IV2A dataset. Frechet inception distance was used to evaluate data quality. Compared with deep learning models: EEGNET, ShalowConvNet and DeepConvNet. Approach with STGAN was better in terms of data quality.
Enhancing the decoding accuracy of EEG signals by the introduction of anchored-STFT and adversarial data augmentation method
https://www.nature.com/articles/s41598-022-07992-w
Article consults using EEG for BCI. Authors propose method called anchored Short Time Fourier Transform (anchored-STFT) to mitigate impact of noise coming from EEG by design. Proposed method is advancement of STFT, minimizes the trade-off between temporal and spectral resolution presented by STFT. They also propose data augmentation method derived from l2-norm fast gradient sign method, called gradient norm adversarial augmentation (GNAA). Also proposed CNN architecture, named SkipNet for classification of EEG signals. This paper proposes complete pipeline to process EEG to BCI. This solution outperforms current SOTA methods. Trained on BCI Competition IV dataset 2b and 2a. Comparison algorithms for feature extraction were used common spatial pattern (CSP), short time fourier transform (STFT), wavelet transform(WT). Algorithms for classification were compared with linear discriminant analysis(LDA), Bayesian classifier and SVM. It was noted that CNN should be invariant to translation, like images. What is interesting thought. The introduction mentions articles about image representation of EEG data. The transform to images can be done using wavelet transform in article 'A novel simplified convolutional neural network classification algorithm of motor imagery EEG signals based on deep learning'.
Proposed anchored-STFT uses multiple windows of variable size for the transformation. Authors solve challenge with not enough data by leveraging generative model-based data augmentation method called Gradient Norm adversarial augmentation (GNAA). Uses shallow CNN called SkipNet with fewer trainable parameters and skip connections.
GNAA is developed in a way to pick most pivoting features. It calculates gradient, which is direction to decision boundary. Training input is then perturbed towards the direction of decision boundary. Used on datasets: BCI competition IV 2a, BCI competition IV 2b, BCI competition II dataset III
A novel deep learning approach for classification of EEG motor imagery signals
https://iopscience.iop.org/article/10.1088/1741-2560/14/1/016003 BCI usage of EEG data. They used CNN and stacked autoencoders(SAE) to classify EEG motor imagery signals. Input which combines time, frequency and location is fed into 1D convolutional and one-max pooling. Somehow EEG data are converted to images. Usage of STFT on floating window of 2 seconds. Output of CNN is fed to SAE Good results were shown. Somehow we could leverage methods proposed here.
Data augmentation for deep-learning-based electroencephalography
https://www.sciencedirect.com/science/article/pii/S0165027020303083?via%3Dihub Authors try to augment EEG data for better results using them in deep learning. It is only review. This papers discusses methods for DA:
- noise addition
- GAN
- sliding window
- sampling
- fourier transform
- recombination of segmentation Then it is tested on various tasks, such as: seizure detection, sleep stages, motor imagery etc.
Data Augmentation with Manifold Exploring Geometric Transformations for Increased Performance and Robustness
https://arxiv.org/abs/1901.04420 Authors propose novel augmentation technique that improves robustness to random transformations, both affine and projective. Inspired by ManiFool, the augmentation is performed by a line-search manifold-exploration method that learns affine geometric transformations that lead to the misclassification on an image, while ensuring that it remains on the same manifold as the training data. This augmentation method populates any training dataset with images that lie on the border of the manifolds between two-classes and maximizes the variance the network is exposed to during training. In 2019 it outperformed GANs. TODO research ManiFool. Augmented data were used to train ResNet, VGG16 and InceptionV3. ManiFool augmentation led to significant increase in performance. Very perspective.
Data Augmentation for Deep Neural Networks Model in EEG Classification Task: A Review
https://www.frontiersin.org/journals/human-neuroscience/articles/10.3389/fnhum.2021.765525/full A really good review.
Improving classification performance of motor imagery BCI through EEG data augmentation with conditional generative adversarial networks
https://www.sciencedirect.com/science/article/pii/S0893608024005896?via%3Dihub
Authors propose novel data augmentation framework using conditional generative adversarial networks (cGAN). They tested it on datasets BCI comptetition IV IIa and III IVa. They then used SOTA classifiers and three other different data augmentation methods. It was shown that data augmentation positively impact classification performance.
Note difference between augmenting raw EEG data and features. Where augmentation of raw data can lead to superior results because it includes complex temporal dynamics and hidden patterns which may not be represented in features.
This paper nicely explains usage of GAN in EEG data.
Methods of EEG Signal Features Extraction Using Linear Analysis in Frequency and Time-Frequency Domains
https://pmc.ncbi.nlm.nih.gov/articles/PMC4045570/ Review of methods used to extract features from EEG data. Algorithmic methods, not much of neural is described.
TODO:
- find augmentation methods worth of trying
- find example architecture for classification BCI
- find metrics to evaluate feature quality and their semantic