RLcapstone.ai

ADHD Classification from Pediatric EEG

A multi-channel 1D convolutional neural network that classifies children's EEG recordings by study group (ADHD vs. control). Training and evaluation use a strict subject-level split, so the reported performance reflects genuine generalization to previously unseen individuals.

Not a diagnostic tool. ADHD is a clinical diagnosis made by professionals, never from a brief EEG. This project classifies research-cohort group membership and is strictly educational. Read the full disclaimer.

Try it in your browser →
Classifies real EEG recordings on your device — nothing is uploaded.

Android application
EEG Explorer · Android (arm64) · ~23 MB · v1.0.0

A native application running the same on-device model as the browser demonstration — offline, with no data uploaded.

Download APK →
Installation (sideloading)
  1. On an Android phone, open this page and tap Download APK.
  2. When prompted, permit your browser to install from unknown sources (Android requests this once, for safety).
  3. Open the downloaded file and tap Install.

Educational application — not a medical device and not a diagnosis. Distributed outside the Play Store and signed with a debug key, so Android displays a warning before installation; this is expected for a sideloaded educational build. Built for arm64 devices. Android only at present — an iOS build can be produced from the same codebase.

📄 Read the full capstone reportPDF, opens in your browser

Summary

TaskClassify a 2-second EEG window by study group (ADHD vs. control)
DatasetNasrabadi ADHD/Control EEG — 61 ADHD + 60 control children, ages 7–12
Signal19 scalp electrodes (10–20 system), 128 Hz, recorded during a visual attention task
ModelMulti-channel 1D CNN — 193k parameters (775 KB)
ResultOn 24 unseen subjects: 91.7% subject-level accuracy, ROC-AUC 0.965
DeploymentONNX in the browser demonstration; TensorFlow Lite in the Android application

The decisive methodological choice

The dataset contains only 121 children but hundreds of thousands of EEG windows. If the windows are shuffled and split randomly, the same child appears in both training and test partitions, and the model can achieve near-perfect scores simply by learning to recognize each child's individual EEG signature — learning nothing about ADHD. A substantial body of published work on this dataset does exactly that.

Accordingly, the split here is performed by subject: the 24 test children share no data with training, and even the validation set used during training is a separate group of children. Every figure below therefore measures generalization to new individuals.

Training progression

The chart tracks validation accuracy (on held-out children) across training. It rises from chance toward ~90% and stabilizes — and, critically, the held-out test subjects fall in the same range, indicating that the model captures a genuine group-level signal rather than memorizing individuals.

Interpreting the 92% result

On the 24 unseen test subjects the model attains 91.7% subject-level accuracy and a 0.965 ROC-AUC. This is a strong result — and, unlike the ECG project, it exhibits no dramatic collapse from validation to test, which suggests the ADHD-vs-control EEG signature in this task genuinely transfers across children.

Two caveats maintain a balanced interpretation. First, 91.7% of 24 subjects corresponds to 22 of 24 — a small denominator with a wide confidence interval, so the true accuracy could be meaningfully higher or lower. Second, and more important, the model classifies research-group membership. It is not a diagnosis; the cohort is small and specific; and real-world attention difficulties are far more varied than any single study can represent.

Next iteration (v2)

The most valuable follow-ups concern trust rather than headline accuracy: band-limiting the input to identify which frequency bands carry the signal, ablating electrodes to determine which scalp regions are informative, and running subject-level cross-validation so the headline figure rests on all 121 children rather than a single 24-subject split. These results will appear in the table above.