Hi,
First, we have trained the BCI2000 for our users but are still experiencing significant error when attempting to spell simple words.
We are using an emotiv headset and the latest version of BCI2000. We are wondering what steps should now be taken to improve accuracy.
Additionally our group is interested in implementing a Spell Correction algorithm into the BCI2000.
Has anyone attempted this yet? If so, what sort of algorithm was used and how did you make it work inside the BCI2000 framework so the algorithm corrections could be selected from the flashing matrix speller?
Regards,
usnamindtrick team
Speller Accuracy / Spell Correction Algorithm
-
mellinger
- Posts: 1341
- Joined: 12 Feb 2003, 11:06
Re: Speller Accuracy / Spell Correction Algorithm
Hi,
I don't think the Emotiv headset allows for good performance with a P300 speller. It simply does not provide the electrode locations required for proper detection of a P300 (Cz, Pz, P3, P4). For more information about the spatial distribution of the P300 response, and about naming of electrode positions, please see
http://www.bci2000.org/wiki/index.php/U ... 0_Response and
http://www.bci2000.org/wiki/index.php/U ... ment_Setup.
There have been various approaches to improve the efficiency of a P300 speller. You might use Google Scholar to find articles about "P300 speller". All sorts of algorithms have been tried, from using a user-specific dictionary for word completion, to biasing EEG classification such that letters with larger probability to be next in the sequence will be recognized easier than other letters.
I don't think that a standard spelling correction will be of much use with a P300 speller. In case of good speller performance, necessary corrections may be done using a "backspace" symbol that allows deletion of the previous letter. In case of bad speller performance, a spelling correction algorithm will either provide a large number of possible corrections, making it necessary to select amongst a large number of symbols again, or it will not be able to provide a useful suggestion at all.
Either way, if you want to make it work with the BCI2000 P3Speller application, you would mainly need to modify P3SpellerTask::LoadMenu() such that it can dynamically build the speller matrix, using the input from the spelling correction.
Best,
Juergen
I don't think the Emotiv headset allows for good performance with a P300 speller. It simply does not provide the electrode locations required for proper detection of a P300 (Cz, Pz, P3, P4). For more information about the spatial distribution of the P300 response, and about naming of electrode positions, please see
http://www.bci2000.org/wiki/index.php/U ... 0_Response and
http://www.bci2000.org/wiki/index.php/U ... ment_Setup.
There have been various approaches to improve the efficiency of a P300 speller. You might use Google Scholar to find articles about "P300 speller". All sorts of algorithms have been tried, from using a user-specific dictionary for word completion, to biasing EEG classification such that letters with larger probability to be next in the sequence will be recognized easier than other letters.
I don't think that a standard spelling correction will be of much use with a P300 speller. In case of good speller performance, necessary corrections may be done using a "backspace" symbol that allows deletion of the previous letter. In case of bad speller performance, a spelling correction algorithm will either provide a large number of possible corrections, making it necessary to select amongst a large number of symbols again, or it will not be able to provide a useful suggestion at all.
Either way, if you want to make it work with the BCI2000 P3Speller application, you would mainly need to modify P3SpellerTask::LoadMenu() such that it can dynamically build the speller matrix, using the input from the spelling correction.
Best,
Juergen
-
gcothrel
- Posts: 3
- Joined: 20 Jun 2012, 13:27
Re: Speller Accuracy / Spell Correction Algorithm
Hello,
Our team is running into similar difficulties with the Emotiv running the P3Speller. On one of our computers, however, we have accuracy >90%. We used P300 Classifier to calibrate, and then increased Number of Sequences, and had Stimulus Duration=125ms. ISIMin and ISIMax=150ms.
Our other computer, for reasons that escape me, is horribly inaccurate, not only with Emotiv but also with BioSemi.
Our team is running into similar difficulties with the Emotiv running the P3Speller. On one of our computers, however, we have accuracy >90%. We used P300 Classifier to calibrate, and then increased Number of Sequences, and had Stimulus Duration=125ms. ISIMin and ISIMax=150ms.
Our other computer, for reasons that escape me, is horribly inaccurate, not only with Emotiv but also with BioSemi.
Who is online
Users browsing this forum: No registered users and 0 guests
