cursor task

Forum for discussion on different signal processing algorithms
Locked
Shin Young Hak
Posts: 10
Joined: 06 Jul 2010, 09:00

cursor task

Post by Shin Young Hak » 13 Jul 2010, 22:20

:) Hello all~
I am a beginner in BCI2000.
I have a question about linear classifier. please reply to me anyone.
I used TDT client module and AR signal processing and cursor task module.
I set the AR filter's FirstBinCenter to 0, and BinWidth to 3Hz.
And if i design linear classifier matrix like below,

input channel input element output channel weight
------------------------------------------------------------------
cp4 12Hz 1 1

And if we have 10 amplitude of 12Hz
then, the output of the linear classifier value is 10*1 = 10 ? this is right?
Or amplitudes of 10.5~13.5Hz are used ?
If then, how many amplitudes are used?

thank you

Young Hak Shin
from South Korea

jawilson
Posts: 109
Joined: 28 Feb 2005, 16:31

Post by jawilson » 14 Jul 2010, 10:30

The linear classifier will use the bin from 10.5-13.5 Hz, which contains the mean of all of the amplitudes in this range. The number of values in a bin depends on the EvaluationsPerBin parameter. For example, if EvaluationsPerBin is 15, then the mean 15 evenly-spaced values will be calculated from 10.5 to 13.5 hz. Then, if the bin from 10.5 to 13.5 Hz has an amplitude of 10, then the output of the classifier would be 10.

Adam

Shin Young Hak
Posts: 10
Joined: 06 Jul 2010, 09:00

Post by Shin Young Hak » 14 Jul 2010, 21:46

Thank you very much wilson~
Your reply is very helpful to me.
I have another question.
In AR filter there are many parameters.

if ModelOrder =16
FirstBinCenter = 0
LastBinCenter = 30
BinWidth = 3
EvaluationsPerBin =15

EvaluationsPerBin is depends on ModelOrder?
I think 16AR coefficients in each bin. So there are 15 EvaluationsPerBin this is right?

thank you

Young Hak Shin

jawilson
Posts: 109
Joined: 28 Feb 2005, 16:31

Post by jawilson » 15 Jul 2010, 10:10

The EvaluationsPerBin and ModelOrder do not depend on each other in any way. The ModelOrder is the model order of the auto-regressive model, which is used to estimate the power. This could be 10, or it could be 120; a higher model order will provide more "bumps" in the frequency domain, but if it is too high, then the model will "overfit" the data, and actually add noise to the power estimate. This model is then used to estimate the power at arbitrary frequency locations. These frequency locations are based on the BinWidth and EvaluationsPerBin parameters. With a BinWidth of 3 Hz and 15 evaluations per bin, you estimate the power in the model every 0.2 Hz, e.g., you will calculate the power using the model at 10.5 Hz, 10.7 Hz, 10.9, etc.

Another way to think of the AR model is as a digital filter, and you want to calculate the magnitude response at arbitrary frequencies. Your filter can have a few or many coefficients, which will change how accurately your model reflects the data.

Does this make sense? You can see http://www.bci2000.org/wiki/index.php/U ... e:ARFilter for more info.
Adam

Shin Young Hak
Posts: 10
Joined: 06 Jul 2010, 09:00

Post by Shin Young Hak » 16 Jul 2010, 01:15

Thank you very much Adam for your quick response~
I under stand about ModelOrder and EvaluationPerBin.
I have another question about WindowLength.

If i set the WindowLength to 0.5s
then calaulate the mean of spectral amplitudes every 0.5s of feedback duration? this is right?
for example,
I think if feedback duration is 3s and WindowLength is 0.5s
then we have 6 mean of spectral amplitudes
And each this value is used in linear classifier every 0.5s depending on classifier matrix. this is right?

thank you


Young Hak Shin

jawilson
Posts: 109
Joined: 28 Feb 2005, 16:31

Post by jawilson » 16 Jul 2010, 08:07

The power is updated every sample block, using a signal of length WindowLength; in other words, it is a sliding window. For example, if your block size is 50 ms and your window length is 500 ms, the power will be calculated on a 500 ms window every 50 ms. You could change the block size to 100 ms, and the power would still be calculated using a 500 ms window, but every 100 ms instead. Make sense?
Adam

Shin Young Hak
Posts: 10
Joined: 06 Jul 2010, 09:00

Post by Shin Young Hak » 16 Jul 2010, 10:42

Thank you very much Adam.
your response is very helpful to me. :D

In my case,
If feedback duration is 1s, window length is 0.5s,
sampling rate is 256, block size is 32.
So we have 8 blocks.
Then every 0.125s we calculate the spectral amplitudes.
So we have 4+1=5 mean of spectral amplitudes.
And each this value is used in linear classifier every 0.125s depending on classifier matrix. this is right?

Locked

Who is online

Users browsing this forum: No registered users and 1 guest