FILE 04 / SIDE STUDY: EEG-CLEAR
A denoiser measured on people it never saw.
EEG-Clear is a small neural network that reads a two-second window of one scalp-EEG channel and returns it with blinks, eye movements, drift, muscle activity, mains hum and electrode artifacts removed. It was trained on public healthy-adult motor-movement recordings and judged on five held-out people against the filter that constitutes standard preprocessing.
This is the project\u2019s first measured result and it is not a Norysr device result. Public healthy-adult data, no Norysr hardware, no cerebral-palsy participant, no clinical claim. Norysr v0.1 excludes EEG from its build contract.
+14.4 dB
Band-pass filter: +7.1 dB. Mixed artifacts, five people.
5 of 5
5.0 to 7.8 dB more than the filter, each.
r = 0.991
Correlation with the target when nothing was added.
0.70 fidelity
Band-power features; untouched moderately noisy epochs score 0.83.
01 / WHY AN EEG STUDY INSIDE A GAIT PROJECT
Before any two recordings can be compared, the artifacts have to come out the same way for everyone.
The programme's long-term interest is comparing whole-body recordings across people, devices and eventually clinical groups. Any such comparison needs a cleaning step that works on people it was not trained on, does not depend on the electrode layout, and does not erase the rhythms the comparison is about. That is a testable question with public data, so it was tested first, while the gait side of the project waits for a dataset it can legitimately use.
The study was also a chance to apply the workspace's evidence rules to a real result: person-level splits, recorded manifests and hashes, classical baselines, per-person reporting, a downstream check, and an immutable run bundle.
02 / METHOD
Seven steps, all of them reproducible from a command list.
Public data, hash-verified
Twenty-four subjects of the PhysioNet EEG Motor Movement/Imagery dataset (64 channels, 160 Hz, fourteen runs each, open attribution licence). Every file was checked against the publisher’s SHA-256 list and recorded in a manifest.
Split by person
Sixteen people for training, three for choosing the training epoch, five never touched until the model was frozen. Every number below comes from those five.
Define clean
Two-second windows of the 0.5 to 40 Hz band-passed signal count as clean only if they pass an absolute amplitude cap, a cap relative to the same channel’s own median, a low-frequency cap and a flatline check.
Add known contamination
Seven synthetic artifact families (blinks, eye movements, drift, muscle bursts, mains hum, electrode pops, sensor noise) at signal-to-artifact ratios from −15 to +10 dB, so the correct answer is known for every training example.
A small residual network
A 360,081-parameter one-dimensional U-Net that sees one channel at a time and subtracts its estimate of the artifact. The same weights therefore serve a four-electrode headband and a 64-electrode cap.
Two training stages
Twenty epochs on squared error (53 minutes on a laptop CPU), then eight more with a band-power term added to the loss (22 minutes), after the first stage was found to blur movement rhythms.
Compare against the standard
A zero-phase 0.5 to 40 Hz band-pass filter, with and without clipping, on the identical windows; metrics averaged per person first, then across people, with subject-bootstrap intervals.
03 / RESULTS ON THE FIVE HELD-OUT PEOPLE
Twice the filter's gain, and the gain is where filters are powerless.
On 20,000 clean windows corrupted with the training mixture (input signal-to-noise ratio about −5 dB), the band-pass filter recovered +7.1 dB and EEG-Clear +14.4 dB. The relative error fell from 1.27 (filter) to 0.44, and the correlation with the true signal rose from 0.68 to 0.86. The advantage is concentrated on blinks, eye movements, electrode pops and in-band muscle activity, the artifacts that share their frequencies with the brain signal; it disappears, as it should, for mild slow drift, where a high-pass filter is already the right tool.
| Method | SNR out (dB) | Improvement (dB), 95% interval | Relative error | Correlation |
|---|---|---|---|---|
| No processing | −4.99 | 0.00 | 2.434 | 0.517 |
| Band-pass 0.5 to 40 Hz | +2.15 | +7.14 (+6.39 to +8.24) | 1.266 | 0.684 |
| Band-pass and clipping | +2.37 | +7.36 (+6.59 to +8.48) | 1.205 | 0.692 |
| EEG-Clear, stage 2 | +9.43 | +14.42 (+14.11 to +14.73) | 0.436 | 0.861 |
Means of per-person means over five held-out people; the interval is a 2,000-sample subject bootstrap.
Clean input passed through with a correlation of 0.991 to the target, against 0.985 for the filter. On 1,500 real frontal windows containing genuine blinks of several hundred microvolts, for which no clean reference exists, the model removed 79 percent of the power that the filter left in place while keeping the rhythm on either side of each blink. Inference runs at 2,500 to 4,800 two-second windows per second on an eight-thread laptop CPU.
04 / THE CAUTION
Waveform accuracy did not, by itself, preserve the movement rhythms.
A downstream probe took cue-locked epochs from the real left-fist and right-fist runs of each held-out person, computed mu (8 to 13 Hz) and beta (13 to 30 Hz) band power over seventeen sensorimotor electrodes, and asked two questions: how well do those features agree with the clean epochs, and can a classifier trained on clean epochs still tell left from right?
The first-stage model, trained on squared error alone, scored superbly on every waveform metric and yet made the band-power features of moderately contaminated epochs less faithful than leaving them alone (correlation 0.57 against 0.83 for the untouched epochs). Squared error rewards hedging: when the network cannot tell rhythm from artifact it shrinks both, which costs little signal-to-noise ratio but shifts every band-power feature by about the amount that separates one condition from another.
A second stage that added a band-power term to the loss raised that fidelity to 0.70, restored features that severe contamination had destroyed (0.70 against 0.52 for doing nothing), brought decoding accuracy from 0.53 back to 0.59 against a clean 0.60, and improved every other metric as well. The remaining gap at moderate contamination means that windows a screen already accepts as clean are best left alone: the rule that follows is to clean only what fails a screen, and to measure spectral fidelity explicitly whenever a cleaning step precedes a comparison across people.
05 / THE FEATURE TABLE THAT WAS ALREADY IN THE WORKSPACE
A linear projection beat a neural network, and the label never needed either.
The workspace also held a two-person table of 2,548 pre-computed EEG statistics with an emotion label, no waveforms and no participant identifiers. The same corrupt-and-restore idea was applied to it in feature space. A principal-component projection recovered 63 to 69 percent of the lost feature variance at moderate and strong corruption; a residual autoencoder trained on the 1,494 available rows recovered almost none. The emotion label was indifferent to all of it, scoring 97 percent whether the features were clean, corrupted or restored, because 2,548 columns encode the same three classes redundantly. The table cannot say anything about cleaning EEG signals, because it contains none, and it remains ineligible for every Norysr tier.
06 / WHAT THIS STUDY DOES NOT SHOW
Read the numbers with their boundary attached.
- The artifacts were synthetic; real ones were only inspected visually, and an artifact of an unmodelled shape may be handled worse.
- Every recording came from one laboratory amplifier and healthy adults. The tool accepts other devices, but the numbers do not cover them, children, or anyone with cerebral palsy.
- Five test people give wide intervals; one random seed was used; the clean-window rule was set after inspecting three training people.
- Classification accuracy in the probe was near chance even on clean epochs, so only its fidelity measure carried statistical weight.
- Seeing one channel at a time forgoes the spatial information that multi-channel methods use; it was chosen for device independence.
- It is not a Norysr device result, it did not use Norysr hardware or participants, and it changes nothing about the gait programme's stage gates.
07 / REPRODUCIBILITY
Every number traces to a sealed run bundle.
Data
PhysioNet EEG Motor Movement/Imagery Dataset v1.0.0, subjects S001 to S024, 672 files, 800 MB, each verified against the publisher's SHA-256 list; Open Data Commons Attribution licence; dataset DOI 10.13026/C28G6P.
Split
Whole subjects by seeded permutation; train S001 to S006, S008, S010 to S012, S017, S018, S020, S022 to S024; validation S007, S014, S021; test S009, S013, S015, S016, S019. Test subjects were never read by the training script.
Runs
Stage 1 run 20260917T010951Z (20 epochs, 12,500 steps, 52.7 minutes); stage 2 run 20260917T021442Z (8 epochs, 21.6 minutes, band-power loss weight 0.5). Each bundle records arguments, seed, split hash, normalization constant, model configuration, code hash, environment, metrics and figures.
Verification
Twenty-two unit tests cover the EDF reader, artifact scaling for every family, metric identities, the filter, model shape and learning behaviour, overlap-add reconstruction and split validation.
Availability
Code, run bundles, the full paper and a plain-language explainer live in the project research workspace. A public release of that workspace is a separate licensing decision that has not been made.