# shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning architecture

> Architecture diagram of the GitHub repository shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-10). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning
- Repository: https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning

## Overview

This is a compact EEG/SSVEP analysis script: an analyst uploads a CSV, the script loads and imputes it, explores the data, prepares a feature/target split, trains regression and classification models, and evaluates results. It also runs an SVM pipeline and cross-validated grid search. The README describes these capabilities, and the excerpted script shows their implementation; all internal components therefore point to the same source file. The README mentions a notebook, but the supplied tree contains only the Python script and CSV.

Main entry points: [`eeg_steady_state_visual.py`](https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py) (Feature and target split), [`A001SB1_1.csv`](https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/A001SB1_1.csv) (EEG CSV)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_data["Data preparation"]
  node_colab["Colab upload"]
  node_csv["EEG CSV<br/>[A001SB1_1.csv]"]
  node_load_clean["Load and impute"]
  node_explore["Data exploration"]
  node_split["Feature and target split"]
end

subgraph group_models["Modeling"]
  node_linear["Linear regression"]
  node_ransac["RANSAC regression"]
  node_perceptron["Perceptron"]
  node_logistic["Logistic regression"]
  node_tree["Decision tree"]
  node_svm_pipeline["SVM pipeline"]
  node_svm_search["SVM grid search"]
end

subgraph group_evaluation["Evaluation"]
  node_metrics["Model evaluation"]
end

node_analyst(("Analyst"))

node_analyst -->|"uploads data"| node_colab
node_colab -->|"selects file"| node_csv
node_csv -->|"read and impute"| node_load_clean
node_load_clean -->|"visualizes"| node_explore
node_load_clean -->|"selects and splits"| node_split
node_split -->|"fits"| node_linear
node_split -->|"fits"| node_ransac
node_split -->|"fits"| node_perceptron
node_split -->|"fits"| node_logistic
node_split -->|"fits"| node_tree
node_split -->|"fits"| node_svm_pipeline
node_split -->|"fits on full data"| node_svm_search
node_linear -->|"scores predictions"| node_metrics
node_ransac -->|"scores predictions"| node_metrics
node_perceptron -->|"scores predictions"| node_metrics
node_logistic -->|"scores predictions"| node_metrics
node_tree -->|"scores predictions"| node_metrics
node_svm_pipeline -->|"scores predictions"| node_metrics
node_svm_search -->|"selects by accuracy"| node_metrics

click node_colab "https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py"
click node_csv "https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/A001SB1_1.csv"
click node_load_clean "https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py"
click node_explore "https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py"
click node_split "https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py"
click node_linear "https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py"
click node_ransac "https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py"
click node_perceptron "https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py"
click node_logistic "https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py"
click node_tree "https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py"
click node_svm_pipeline "https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py"
click node_svm_search "https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py"
click node_metrics "https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_colab,node_csv,node_load_clean,node_explore,node_split toneBlue
class node_linear,node_ransac,node_perceptron,node_logistic,node_tree,node_svm_pipeline,node_svm_search toneAmber
class node_metrics toneMint
class node_analyst toneIndigo
```

## Components

### Data preparation

- [Colab upload](https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py): `eeg_steady_state_visual.py`
- [EEG CSV](https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/A001SB1_1.csv): `A001SB1_1.csv`
- [Load and impute](https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py): `eeg_steady_state_visual.py`
- [Data exploration](https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py): `eeg_steady_state_visual.py`
- [Feature and target split](https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py): `eeg_steady_state_visual.py`

### Modeling

- [Linear regression](https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py): `eeg_steady_state_visual.py`
- [RANSAC regression](https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py): `eeg_steady_state_visual.py`
- [Perceptron](https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py): `eeg_steady_state_visual.py`
- [Logistic regression](https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py): `eeg_steady_state_visual.py`
- [Decision tree](https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py): `eeg_steady_state_visual.py`
- [SVM pipeline](https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py): `eeg_steady_state_visual.py`
- [SVM grid search](https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py): `eeg_steady_state_visual.py`

### Evaluation

- [Model evaluation](https://github.com/shaiknawazshareef/eeg-steady-state-visual-signal-analysis-using-machine-learning/blob/main/eeg_steady_state_visual.py): `eeg_steady_state_visual.py`

### Other components

- **Analyst**

## Connections

- Analyst → Colab upload: uploads data (evidence: `eeg_steady_state_visual.py`)
- Colab upload → EEG CSV: selects file (evidence: `eeg_steady_state_visual.py`)
- EEG CSV → Load and impute: read and impute (evidence: `eeg_steady_state_visual.py`)
- Load and impute → Data exploration: visualizes (evidence: `eeg_steady_state_visual.py`)
- Load and impute → Feature and target split: selects and splits (evidence: `eeg_steady_state_visual.py`)
- Feature and target split → Linear regression: fits (evidence: `eeg_steady_state_visual.py`)
- Feature and target split → RANSAC regression: fits (evidence: `eeg_steady_state_visual.py`)
- Feature and target split → Perceptron: fits (evidence: `eeg_steady_state_visual.py`)
- Feature and target split → Logistic regression: fits (evidence: `eeg_steady_state_visual.py`)
- Feature and target split → Decision tree: fits (evidence: `eeg_steady_state_visual.py`)
- Feature and target split → SVM pipeline: fits (evidence: `eeg_steady_state_visual.py`)
- Feature and target split → SVM grid search: fits on full data (evidence: `eeg_steady_state_visual.py`)
- Linear regression → Model evaluation: scores predictions (evidence: `eeg_steady_state_visual.py`)
- RANSAC regression → Model evaluation: scores predictions (evidence: `eeg_steady_state_visual.py`)
- Perceptron → Model evaluation: scores predictions (evidence: `eeg_steady_state_visual.py`)
- Logistic regression → Model evaluation: scores predictions (evidence: `eeg_steady_state_visual.py`)
- Decision tree → Model evaluation: scores predictions (evidence: `eeg_steady_state_visual.py`)
- SVM pipeline → Model evaluation: scores predictions (evidence: `eeg_steady_state_visual.py`)
- SVM grid search → Model evaluation: selects by accuracy (evidence: `eeg_steady_state_visual.py`)
