High Performance P300 Spellers Using GPT2 Word Prediction With Cross-Subject Training
<|reference_start|>High Performance P300 Spellers Using GPT2 Word Prediction With Cross-Subject Training: Amyotrophic lateral sclerosis (ALS) severely impairs patients' ability to communicate, often leading to a decline in their quality of life within a few years of diagnosis. The P300 speller brain-computer interface (BCI) offers an alternative communication method by interpreting a subject's EEG response to characters presented on a grid interface.   This paper addresses the common speed limitations encountered in training efficient P300-based multi-subject classifiers by introducing innovative "across-subject" classifiers. We leverage a combination of the second-generation Generative Pre-Trained Transformer (GPT2) and Dijkstra's algorithm to optimize stimuli and suggest word completion choices based on typing history. Additionally, we employ a multi-layered smoothing technique to accommodate out-of-vocabulary (OOV) words.   Through extensive simulations involving random sampling of EEG data from subjects, we demonstrate significant speed enhancements in typing passages containing rare and OOV words. These optimizations result in approximately 10% improvement in character-level typing speed and up to 40% improvement in multi-word prediction. We demonstrate that augmenting standard row/column highlighting techniques with layered word prediction yields close-to-optimal performance.   Furthermore, we explore both "within-subject" and "across-subject" training techniques, showing that speed improvements are consistent across both approaches.<|reference_end|>
@article{parthasarathy2024high,
    title={High Performance P300 Spellers Using GPT2 Word Prediction With
  Cross-Subject Training},
    author={Nithin Parthasarathy, James Soetedjo, Saarang Panchavati, Nitya
  Parthasarathy, Corey Arnold, Nader Pouratian and William Speier},
    journal={arXiv preprint arXiv:2405.13329},
    year={2024},
    archivePrefix={arXiv},
    eprint={2405.13329},
    primaryClass={cs.CL cs.HC cs.SY eess.SP eess.SY}
}