Live Brain-to-Text Decoding hero image

Live Brain-to-Text Decoding

Streaming attempted speech from intracortical signals into text

Overview

Live Brain-to-Text Decoding

Streaming attempted speech from intracortical signals into text

I built a real-time decoder for the Brain-to-Text '25 dataset. Four implanted microelectrode arrays supply 512 neural features every 20 ms; a GRU acoustic model turns those signals into phoneme probabilities, and an n-gram WFST search produces a revisable text transcript every 80 ms. An optional GPT-2 pass re-ranks candidates after the sentence ends.

This is research on one participant's attempted speech. The accuracy figures below are exploratory results on a development split with calibrated recording-day layers and dataset-provided sentence endpoints, not independent test or clinical performance.

Watching the neural input stream

The live harness plots threshold crossings and spike-band power from selected electrodes while a trial plays at its 20 ms data cadence. The model uses 512 such features across 256 electrodes, followed by causal smoothing, recording-day calibration, and 280 ms patches. This is the actual harness electrode inspector, using the released processed features rather than raw spike times.

From phoneme probabilities to live words

A five-layer GRU predicts a distribution over 39 phonemes, a word boundary, and CTC blank every 80 ms. A 4-gram WFST search turns those probabilities into partial text that can revise earlier words. The screenshot shows one in-progress copy-task sentence, its greedy phoneme stream, and the frame-processing lag; that lag is not word latency.

Accuracy across recording sessions

The harness reports pooled word error rate, per-session variation, transcript revisions, and diagnostic phoneme error rate. The reference causal pipeline reached 8.51% WER with 4-gram search on 1,253 val-dev sentences. Checkpoints and decode settings were selected using validation data, and sentence endpoints come from the dataset, so this is exploratory development-split accuracy.

Measuring the delay instead of assuming it

A paced replay feeds the decoder every 20 ms and measures frame-window-to-output lag. In this recorded reference run the median was 9.48 ms and the 95th percentile 13.45 ms; first possible output still waits for the 280 ms input patch. These are processing measurements on a replay, not end-to-end communication or word latency.

Re-ranking after a sentence ends

The optional GPT-2 pass re-ranks the WFST's sentence-final candidates, reaching 6.87% WER on the same val-dev scope. That improvement arrives after the dataset's trial endpoint. The harness also examines when partial words can be committed without later retraction, exposing the accuracy cost of showing a word as final too early.

Additional context

Trading future context for delay

I compared causal, bidirectional, bounded-look-ahead, and sliding-window GRUs under a shared 20,000-batch schedule and decode grid. A look-ahead model using 18 future frames (1.44 s of future context) reached 7.50% val-dev WER, versus 8.71% for its zero-look-ahead capacity control at the same acoustic scale. This is an exploratory accuracy-versus-delay experiment, not a measured live deployment result; shorter look-ahead gains were smaller and less certain.

A working path from intracortical features to continuously updated text, with live decoding, sentence-end re-ranking, and future-context experiments evaluated separately.