Добавил:
Sekretar
kiopkiopkiop18@yandex.ru
t.me/Prokururor I Вовсе не секретарь, но почту проверяю
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:Ординатура / Хирургия / Библиотека им академика М.И. Перельмана / Книга_5276_Библиотеки_им_академика_М_И_Перельмана
.pdf
63
extended International 10-20 System) of EEG data were recorded using the EEG cap. The data
were filtered and down-sampled and Fisher's linear discriminant analysis was used for the
classification. Using the proposed system, the participants were first required to make the robot
move to a desk light in the robot's environment. To control the robot, each command was selected
in a series of 15 sequences, and the participants were required to send 15 commands. When the
robot’s eyes detected the augmented reality marker of the desk light, a flicker panel for
controlling the appliance was displayed on the screen. Then, the participants had to use their P300
signal to operate the light in the robot's environment through the robot's eyes. To operate the desk
light, the same scenario of commands has to be followed. Online performance was evaluated, and
the mean accuracy for both robot and light control was significantly high.
Figure 4.2: Stimuli paradigm used by Kansaku et al., [44] to control the robot and the desk light
Ramírez-Cortes et al., [40] have recently studied the possibility of detecting the P300
wave in an oddball-similar paradigm using the Emotiv Epoc headset as an EEG sensor. The study
presents a non-persistent image to evoke a P300 response from the user (see figure 4.3). The
subject is resting in a comfortable position during the test while a simple graphical application
shows in the screen a starship attacking a neighborhood in a fixed time sequence not known by
the subject. Recognition of the ship by the subject, when it suddenly appears in the screen, is
expected to elicit a P300 potential in the brain. The serial port is used for sending time markers to

64
the Emotive TestBench in synchrony with the moments when the ship appears in the screen. The
TestBench application provided by Emotiv SDK is used to capture the EEG raw data from 14
electrodes. Data analysis is carried offline using band-pass filtering, ICA for source separation,
DWT as a feature extractor, and Adaptive Neuro Fuzzy Inference Systems for classification.
Eleven levels of DWT were performed. The study showed that the P300 wave can be detected in
the oddball-similar paradigm using the Emotiv headset with reasonable overall accuracy. In this
study the headset was mounted in the reversed way, although it was not proved by the developer
at that time.
Figure 4.3: Stimuli paradigm and experiment setup for Ramírez-Cortes et al., [44] study
Another study that uses the Emotiv epoc headset for the P300 detection purpose is
proposed by Campbell et al., [8]. In this study the Emotiv headset is used to control iPhone
operations (see figure 4.4). Two modes were tried for the control process, wink mode and P300
mode. In the P300 mode the phone flashes sequence of photos of contacts from the address book
and a P300 signal is elicited when the flashed photo matches the person whom the user wishes to
call. EEG signals from the headset are transmitted wirelessly to an iPhone, which natively runs a
simple classifier to discriminate P300 signals from non-P300 ones after band-pass filtering the
data. When a person’s contact-photo triggers a P300, their phone number is automatically dialed.
Although the accuracy was not high, the results after averaging over several trials of signals were
promising. In that study the headset was mounted in the default position.

65
Figure 4.4: Paradigm and experiment setup for the Neuro Phone application [8]
The above related researches show that there are many different approaches for P300
wave evoking and detection in different P300-based BCI systems that all perform well and it is
not immediately clear whether one approach is better than the rest across multiple subjects.
Additionally, they increase the feasibility of using commercial EEG sensors for research purposes.
4.3 Experimental Setup for Dataset II of BCI Competition III
Experiments were performed with the P300 datasets from the BCI competition, 2004 [12] to test
and compare the efficiency and reliability of different P300-based BCI approaches and
classification algorithms proposed in some literature for detecting the P300 wave from EEG
signals recorded by different medical sensors. The best competition results were achieved by
Rakotomamonjy et al., [6] with an accuracy of 96.5%. The competition dataset description is first
presented, and then the experiment steps are discussed; followed by data preprocessing and
feature extraction step, and classifiers training and validation step.
4.3.1 Dataset Description
The dataset represents a complete record of P300 evoked potentials recorded with BCI2000 using
the paradigm described in Chapter 2, which was developed by Donchin et al., [23] and originally
by Farwell and Donchin et al., [29] (see figure 4.5). In these experiments, a user focused on one
out of 36 different characters. The objective in this contest is to predict the correct character in
each of the provided character selection epochs. All rows and columns of the paradigm matrix

66
were successively and randomly intensified at a rate of 5.7Hz. Two out of 12 intensifications of
rows or columns contained the desired character (i.e., one particular row and one particular
column). The responses evoked by these infrequent stimuli (i.e., the 2 out of 12 stimuli that did
contain the desired character) are different from those evoked by the stimuli that did not contain
the desired character and they are similar to the P300 as previously reported [23 and 29].
Figure 4.5: Example of a 6 × 6 user display in P300 Speller
Signals were collected from two subjects in five sessions each using 64 electrodes and
then band-pass filtered from 0.1 to 60 Hz and digitized at 240 Hz. Each session consisted of a
number of runs. In each run, the subject focused attention on a series of characters. For each
character epoch in the run, user display was as follows: the matrix was displayed for a 2.5 s
period, and during this time the matrix was blank. Subsequently, each row and column in the
matrix was randomly intensified for 100 ms (i.e., resulting in 12 different stimuli; 6 rows and 6
columns). After intensification of a row/column, the matrix was blank for 75 ms. Row/column
flashings were block randomized in blocks of 12. The sets of 12 flashings were repeated 15 times
for each character epoch (i.e., any specific row/column was flashed 15 times and thus there were
180 total intensifications for each character epoch). Each character epoch was followed by a 2.5 s
period, and during this time the matrix was blank. This period informed the user that this
character was completed and to focus on the next character in the word that was displayed on the
top of the screen [11 and 12]. As mentioned above, the goal in the competition is to use the

67
labeled training data of both subjects A and B to predict the character sequences in the test set of
each subject.
4.3.2 Data Preprocessing and Feature Extraction
Before learning classifiers and performing classification validation, the data were preprocessed
with methods that were similar in some steps to those used in [6]. For the feature extraction, ICA
and DWT were used instead of using the down-sampled technique as in [6]. The preprocessing
steps were as following:
Single trials extraction, labeling, and averaging: single trials of length 667 ms, starting at
stimulus onset, were extracted from the data for each character epoch, labeled and then
averaged. According to the knowledge that the P300 component appears about 300 ms after
the stimulus, this window is large enough to capture all required features for an efficient
classification. The data is labeled as a target or non-target set according to the matrices
containing the event cue onset (StimulusCode, StimulusType, and Flashing) provided with
the data sets by the developer. Then, if the averaging is applied, data sets are averaged based
on target and non-target bases. Example of averaged electrode’s signal is shown in figure 4.6.
Figure 4.6: Averaged wave on Cz channel from BCI competition III training data set for subject A
0 100 200 300 400 500 600 700
-5
0
5
10
Time (msec)
Amplitude (uv)
Target; P300 exists
Non-target; no P300

68
Filtering: When the DWT is applied alone, each electrode’s signals were filtered in the DWT
step. For the ICA approach, we filtered the single trials of each electrode to insure that only
the required band was passed. The signals were band-pass filtered with a 4
th
order Chebyshev
type I filter with cut off frequencies of 0.1 Hz and 30 Hz as in [57].
Electrodes Selection: Because when the Emotiv EEG sensor, the device was used in the
second experiment, is positioned in the reversed mount, positions of electrodes will be
approximated to the positions of the 10-20 international system placement and only 8
electrodes positions will be useful, we decided not to apply any channel selection algorithm
and use all the 8 selected channels. Therefore, different electrode subsets were tried in the
BCI competition experiment and as mentioned without applying any channel selection
algorithms; all the set of the 64 electrodes, predefined 8-electrodes subset recommended by
some of the studies in the literature (Fz, Cz, Pz, Oz, P3, P4, PO7, and PO8) [6], eight-
electrodes subset that has electrode positions close to the electrodes placement of the Emotiv
headset in the default position (F3, FC5, P7, O1, O2, P8, FC6, and F4), and finally 8-
electrodes subset that has electrodes positions close to the electrodes placement of the Emotiv
headset in the reversed position (P1, P2, P7, P8, O1, O2, C4, and C3).
ICA: The filtered EEG data is applied to the ICA algorithm to extract or separate
independent sources for each trial. The FastICA MATLAB open source package was used
[77]. Component selection strategy was not applied since it was found in [71] that applying
component-selection algorithms do not improve the accuracy of the results.

69
(a) (b)
(c)
Figure 4.7: Example of FastICA performance with data of a target set: a) Filtered EEG data; b) FastICA
output components; (c) The fourth component of the ICA output which is similar to P300 wave
DWT: A 4-level single DWT is applied to each electrode’s signal or to each extracted ICA
component to decompose the signal to the required band for the approximated coefficients.
Daubechies (Db4) wavelet was used as the mother wavelet and the approximated coefficients
0 100 200 300 400 500 600 700
-10
0
10
0 100 200 300 400 500 600 700
-20
0
20
0 100 200 300 400 500 600 700
-10
0
10
0 100 200 300 400 500 600 700
-10
0
10
0 100 200 300 400 500 600 700
-10
0
10
0 100 200 300 400 500 600 700
-5
0
5
0 100 200 300 400 500 600 700
-10
0
10
0 100 200 300 400 500 600 700
-10
0
10
0 100 200 300 400 500 600 700
-5
0
5
0 100 200 300 400 500 600 700
-5
0
5
0 100 200 300 400 500 600 700
-10
0
10
0 100 200 300 400 500 600 700
-5
0
5
0 100 200 300 400 500 600 700
-5
0
5
0 100 200 300 400 500 600 700
-5
0
5
0 100 200 300 400 500 600 700
-5
0
5
0 100 200 300 400 500 600 700
-10
0
10
0 100 200 300 400 500 600 700
-4
-3
-2
-1
0
1
2
3
4
5
Time (msec)
Amplitude (uv)

70
were used as the features for the classifier and were concatenated into feature vectors. The
dimensionality of the feature vectors was N
e
× N
f
, where N
e
denotes the number of
components or electrodes and N
f
denotes the number of features in one trial. Due to the trial
duration of 667 ms and the down-sampling in the 4-level DWT, N
f
is always equal to 16.
Depending on the chosen electrodes, Ne is equal to 8 or 64. The Matlab wavelet toolbox was
used to perform the single DWT. The wavedec function was used to perform multi-level
DWT, the appcoef function was used to extract approximated coefficients and the detcoef
function was used to extract detailed coefficients.
Scaling: The extracted features were scaled to zero mean and unity variance to be fed to the
classifier. Scaling constants were computed for each channel from all trials in the training set
and then applied to the validation and testing data. Note that scaling was not done on a trial
by trial basis. Instead the same scaling constants were used for all trials. This is important
since scaling each trial individually could potentially destroy important amplitude
information characterizing the P300.
4.3.3 Machine Learning
After preprocessing the training data sets of both subjects and extracting distinct P300 wave
features, the classifier is trained and validated using these features. Two types of classifiers were
used; neural network and support vector machine. Prior to training, all features from a given
training set have been normalized to zero mean and unit variance as mentioned above. The
validation set has also been transformed according to the resulting normalization parameters from
the training set.
For the neural network, a feed-forward artificial neural network with back-propagation
was used. The structure of the network consists of one input layer, one hidden layer with different
number of neurons, and one output layer with one neuron. Tan sigmoid function was used for the

71
output node and it returns a floating-point value used as the detection criterion. More precisely, as
recommended by Martin et al., [52], values greater or equal to 0.76 (zero in some other studies
such as in [28, 30]) indicated the recognition of the P300. Otherwise, the P300 is considered
absent. The neural network algorithm was implemented with Matlab.
For the support vector machine, the Libsvm open source was used. A kernel function with
a second order polynomial was used for the single classifier mode, while a linear function was
used for the ensemble mode. Different values of hyperparameter C were tried as mentioned in [6].
The study proposed in [6], the competition winner, introduced the use of the ensemble classifiers
method and showed the best results for the BCI competition. Therefore, we decided to apply both
schemes; the traditional one classifier method and the ensemble classifiers method and compare
their results.
For the one classifier method, the training data set has 30 target sets and 150 non-target
sets for each character epoch. Averaging over each five trials was performed which leads to 6
target sets and 30 non-target sets. Two sets out of the 6 targets were randomly chosen to be
included in the classifier validation and the other 4 sets were included in the training of the
classifier. For the non-target sets for each character epoch, eight data sets out of the 30 non-
targets were randomly chosen to be included in the classifier validation and the other 22 sets were
included in the training of the classifier. The total number of sets for training is (4+22)*85 = 2210
and the total number of validation sets is (2+8)*85 = 850.
For the ensemble classifiers method, we have decided to use the same data partitioning
scheme process used in [6] which is as follows:
Single character spelling corresponds to 180 post-stimulus signals. Each training partition
is then composed of signals associated to 5 characters in a row, resulting 17 different partitions.
Because time chronology of signals has not been provided intentionally, the 5 characters

72
composing each partition are every 5 consecutive characters as provided by the organizer.
According to this procedure, for each subject A or B, K = 17 different partitions have been built.
Each partition is then composed of 900 training sets; 150 target sets and 750 non-target sets.
In our strategy, we have designed a multiple classifier system for each single subject
similar to the strategy described in [6]. Each single classifier of the system is a linear support
vector machine trained on one of the 17 partitions. SVM has been used since it is a powerful
approach for pattern recognition especially for high-dimensional problems. Consequently, eight
sets out of the 30 targets for each character were randomly chosen to be included in one classifier
validation and the other 22 sets were included in the training of the same classifier. For the non-
target sets for each character epoch out of the five characters applied to one classifier, thirty eight
data sets of the 150 sets were randomly chosen to be included in one classifier validation and the
other 112 sets were included in the training of the same classifier. The total number of sets for
training one classifier out of the 17 classifiers is (22+112)*5 = 670 and the total number of
validation sets is (8+38)*5 = 230.
4.3.4 Process of Characters Prediction in the Test Set
Test sets have been processed similarly to the training set and then fed to a classifier or ensemble
of classifiers. In the ensemble classifiers method, the averaging was applied in the classifier
outputs. For the competition, performances have been evaluated based on the correctness of
predicted characters in the test sets. Hence, we are considering the 36-class classification problem,
and each predicted character has been obtained according to the method described above.
For the traditional method (one classifier), after the 12 rows/columns intensifications of
the first trial, twelve data sets correspond to the 12 stimuli are extracted, processed as described
above and then fed to the classifier. The row and column with the largest value of the classifier
output is the winner and this is done after each trial with averaging trials data as mentioned above.
Соседние файлы в папке Библиотека им академика М.И. Перельмана
