Buffer length for Cursor task

This forum deals with BCI2000 configuration issues.
Locked
Ryan
Posts: 29
Joined: 27 Aug 2010, 15:03

Buffer length for Cursor task

Post by Ryan » 05 Nov 2010, 12:36

Hi, all,
I got several questions about the buffer length in Normalizer, and here they are.

Is the buffer length in Normalizer determined by ITI duration in the Application?

I noticed its using the ring buffer caculating the mean of data to get Normalizer offset. So, my second question is, does this offset represent the condition for 'rest', so that control signals are computed by comparing to it.

In this case, if I only use one feature, let's say C4, and set the weight to be 1 for horizontal control, will the cursor either move left or stand still for the successful experiment?

Thank you in advance!

Sincerely,
Ran

mellinger
Posts: 1341
Joined: 12 Feb 2003, 11:06

Post by mellinger » 08 Nov 2010, 07:56

Ryan,
Is the buffer length in Normalizer determined by ITI duration in the Application?
The buffer length in the Normalizer is determined by the BufferLength parameter, and independent of any settings in the application module.
So, my second question is, does this offset represent the condition for 'rest', so that control signals are computed by comparing to it.
The offset is the mean of data over all buffer conditions specified, and does typically not represent the "rest" condition. Rather, it represents the mean over all conditions.
In this case, if I only use one feature, let's say C4, and set the weight to be 1 for horizontal control, will the cursor either move left or stand still for the successful experiment?
In case of a successful experiment, with the Normalizer adapted to the signal, the cursor should move left for imagined movement of the left hand, and should move right for relaxation (rest).

HTH,
Juergen

Ryan
Posts: 29
Joined: 27 Aug 2010, 15:03

Post by Ryan » 12 Nov 2010, 14:29

Thank you, Juergen.
I have read more about the normalizer. Here is my understanding. If its right, hope can help others too.

For left-hand against rest condition 1-D Horizontal movement, the buffer has two parts, i.e. buffer for lefthand and buffer for rest condtion.
the buffer will update the feedback trial data to its respective part , when the triggers targetCode =1 and targetCode = 2 are sensed.

The adaption will be performed after each trial, if it's set at feedback = 0.
When feedback = 0 is sensed, the normalizer will calculated the mean in each part of the buffer, and then calculate the total mean. this value is the Normalizer offset, which serves as the boundary value for moving left and right.

The normalizer gain is calculated by the application window width divided by FeedbackDuration, which tells how fast the cursor should move.

Above is just my understanding, hope somebody could correct me.

I still got one blur about classifier. How big should I set the weight? e.g. For Lefthand against rest experiment, should I set the weight '1' or '0.5' or else, what does it depend on?

Best regards,
Ryan

mellinger
Posts: 1341
Joined: 12 Feb 2003, 11:06

Post by mellinger » 15 Nov 2010, 06:00

The normalizer gain is calculated by the application window width divided by FeedbackDuration, which tells how fast the cursor should move.
No, the Normalizer gain is determined by signal variance (computed across all conditions) such that the Normalizer's output is unit variance. The application module then scales it according to window size and FeedbackDuration.
I still got one blur about classifier. How big should I set the weight? e.g. For Lefthand against rest experiment, should I set the weight '1' or '0.5' or else, what does it depend on?
Set the weight to 1. If you have only one feature, the weight value doesn't matter because the output will be scaled by the Normalizer.

Locked

Who is online

Users browsing this forum: No registered users and 0 guests