[Eeglablist] bad channel rejection - kurtosis - threshold limits default 5

Simon-Shlomo Poil poil.simonshlomo at gmail.com
Tue Feb 19 02:01:38 PST 2013


Dear Ida,

For bad channel rejection, I can recommend the plugin FASTER
http://www.mee.tcd.ie/neuraleng/Research/Faster - their rejection
methods works much better than the Kurtosis method (in my opinion).

The FASTER methods has e.g. been implemented in the cleaning approach
of the NBT toolbox: see..
http://www.nbtwiki.net/doku.php?id=tutorial:clean_data
http://www.nbtwiki.net/doku.php?id=tutorial:automatic_and_semi-automatic_methods_for_eeg_pre-processing

However, whether you need to reject bad channels depends on your
system. Many low-density EEG systems have very good signals, and it's
rare that you need to reject any channels. For these systems I would
rather recommend that you reject the bad channels manually.


Best wishes
Simon
--
Simon-Shlomo Poil

Center of MR-Research
University Children’s Hospital Zurich

Mobile number: +41 (0)76 399 5809
Office number: +41 (0)44 266 3129
Skype: poil.simonshlomo
Webpage: http://www.poil.dk/s/ and http://www.nbtwiki.net and
http://www.kispi.uzh.ch/Kinderspital/Medizin/mrzentrum_en.html

Diese Nachricht ist ausschliesslich für die Personen bestimmt, an die
sie adressiert ist. Sie kann vertrauliche und/oder nur für den/die
Empfänger bestimmte Informationen erhalten. Sollten Sie nicht der
bestimmungsgemässe Empfänger sein, kontaktieren Sie bitte den Absender
und löschen Sie die Mitteilung. Jegliche unbefugte Verwendung der
Informationen ist untersagt.

2013/2/18 Makoto Miyakoshi <mmiyakoshi at ucsd.edu>:
> Dear Ida,
>
>> 1. Highpass 0.1 Hz FIR filter (the frequency of my interest is very low
>> breathing frequency 0.13 - 0. 35 Hz)
>
> OK, I noticed that filter is very important for you. Make sure that you used
> pop_eegfiltnew() or firfilt(). See also
> http://sccn.ucsd.edu/wiki/Firfilt_FAQ. Please let me know if the latest
> version of EEGLAB DOES NOT have pop_eegfiltnew().
>
>> 2. Notch short bandpass IIR 48 – 52 Hz filter for line noise removal
>
> Do not use notch since we have much better solution. Check this out.
>
> http://www.nitrc.org/projects/cleanline/
>
>> 3. Automatic rejection of bad channels (Kurtosis,5) --> Is it a problem if
>> the automatic rejection is done on continuous data?
>
> It depends on how clean the data need to be. In general, kurtosis is easily
> affected by outliers. If no data rejection is done, kurtosis may not be the
> best choise. I would start with simple code such as
>
> stdData = std(EEG.data,0,2);
>
> figure; bar(stdData)
>
> If you find bad channel in this bargraph you may wan to check them visually
> to make decision. If you have too many data to eyeball, you may need to
> write a code to loop this.
>
>> 4. re-referencing data to the average reference
>
> This seems fine.
>
>> 5. Epoching data around the markers of interest in segment [-3 2],
>> baseline removal -3000 -2000 (ms).
>
> If your freq of intrest is 0.13-0.35, then you should have at least 7.7 sec
> long (longer is better) for a epoch to obtain spectra at 0.13 Hz (I could be
> wrong in guessing what you want to do).
>
>> What is wrong with rejecting componenets by map after first ICA?
>
> http://sccn.ucsd.edu/eeglab/eeglabfaq.html
>
> Re-running ICA
>
> Question: While trying within EEGLAB to remove artifacts using ICA, I had
> trouble in recalculating an ICA decomposition after removing components. I
> tried to follow the guidelines in the tutorial, thinking that with fuzzy
> components it might work better to remove some clear artifact components
> first and the run a new ICA. When I tried to do that, the second ICA always
> took much longer and I got also some error message in the end telling me,
> that there was something wrong with the result.
>
> Answer: The standard procedure we advise is first to perform ICA on the data
> and to remove bad trials using the ICA component activities. If you remove
> ICA components, the rank of the data will decrease (to <nchans). If the data
> have n channels, the rank of the data is (most probably) n. If you remove
> one component it will become n-1, and ICA will not be able to find n
> components in the pruned data). Thus, as a first step, you should only
> remove bad trials. This procedure will not alter the dimensionality of the
> data. As a second step, recompute ICA and remove bad components (the second
> run of ICA should result in clearer artifact components (for instance muscle
> at high frequencies), not contaminated by strong outlier trials. If you
> remove ICA components and want to re-run ICA, you must decompose the data
> with the 'pca' option to reduce the dimensionality of the decomposition to
> match the data rank (see below).
>
>> I performed this rejection (step 3) and among 121 channels, around 10
>> (+-2) of them were rejected. Is it too much?
>
> I think that' fine.
>
>> Here, you mean to adjust the threshold value of the Kurtosis to end up
>> with around 10% of the data to be rejected by this automatic method?
>
> No. I meant in epoch rejection around 10% would be ok, not the number of
> channels.
>
>> Could you please help me with what would be functions/commands for this in
>> EEGLAB and would this be acceptable on contiuous channel or only epoched?
>
> In the current EEGLAB continuous data can be rejected only by eyes. If you
> don't mind chopping up your data into epochs, check out eeg_regepochs().
>
>> Somehow I have troubles finding it...could you please mail me the link to
>> it?
>
> Delorme, A., Sejnowski, T., Makeig, S. (2007) Improved rejection of
> artifacts from EEG data using high-order statistics and independent
> component analysis. Neuroimage, 34, 1443-1449.
>
>> Thank you for these encouraging words. If I understood you correctly, you
>> are suggesting me to try run ICA after this automatic bad channels (in your
>> case epochs) rejection but with thresholds of the Kurtosis 5, 10, 15? If
>> not, what do you mean by rejection rate of the data?
>
> Again I mean the number of epochs. In the guideline paper (Picton et al.,
> 2000) it is stated that rejecting more than 30% of epochs may be a bad idea
> if the data were recorded from healthy adults.
>
> Makoto
>
> 2013/2/17 ida miokovic <ida.miokovic at gmail.com>
>>
>> Dear Makoto,
>>
>> thank you very much for your response.
>>
>> Actually, I performed Automatic rejection of bad channels on continuous
>> data. The steps that lead to ICA decomposition were:
>>
>> 1. Highpass 0.1 Hz FIR filter (the frequency of my interest is very low
>> breathing frequency 0.13 - 0. 35 Hz)
>>
>> 2. Notch short bandpass IIR 48 – 52 Hz filter for line noise removal
>>
>> 3. Automatic rejection of bad channels (Kurtosis,5) --> Is it a problem if
>> the automatic rejection is done on continuous data?
>>
>> 4. re-referencing data to the average reference
>>
>> 5. Epoching data around the markers of interest in segment [-3 2],
>> baseline removal -3000 -2000 (ms).
>>
>> 6. Run ICA for the first time, reject bad ICs (by rejecting componenets by
>> map), run ICA for the second time. --> I found your answer regarding the
>> same issue:
>>
>> If you want to obtain better ICA solution, what you should actually do
>>
>> > is to click 'Tools - Reject data using ICA - Reject data (all
>> > methods)' and not 'Reject components by map'. You may have run epoch
>> > rejection before running ICA. Similarly, you can run the same epoch
>> > rejection after ICA on IC activities. If you want to know why and how
>> > epoch rejection on IC activity is effective compared to raw EEG data,
>>
>> What is wrong with rejecting componenets by map after first ICA?
>>
>> > Start with 5 and see the results. If it catches too many epochs, then
>>
>>
>> > increase the value. I would use 8-10.
>>
>> I performed this rejection (step 3) and among 121 channels, around 10
>> (+-2) of them were rejected. Is it too much?
>>
>> > Adjust them so that the sum of epochs suggested by your rejection
>> > methods ends up with around 10 % of the data.
>>
>> Here, you mean to adjust the threshold value of the Kurtosis to end up
>> with around 10% of the data to be rejected by this automatic method? I
>> obtained that with Kurtosis threshold 5 (max 12 channels out of 121 were
>> rejected).
>>
>> > I would recommend that you simply threshold the data by amplitude
>>
>>
>> > first (+/- 150-200 microvolt, for example) to exclude undoubtedly
>> > wrong epochs due to loose channel etc (select up to 1% of data- but be
>> > careful not to catch eye blinks), then apply probability method
>> > (select up to 3-5% of data). You may think the data is not clean yet,
>> > but apply ICA anyway, and do rejections on IC activities to select
>> > another up to 5% of epochs if you want.
>>
>> Could you please help me with what would be functions/commands for this in
>> EEGLAB and would this be acceptable on contiuous channel or only epoched?
>>
>> > Delorme et al. 2007 NeuroImage for epoch rejection using EEGLAB tools.
>>
>> Somehow I have troubles finding it...could you please mail me the link to
>> it?
>>
>>
>> > My general impression is that people spend too much time on data
>> > cleaning (especially psychologists; I've seen this because I'm a
>> > psychologist).   > ICA decomposition is in many cases more robust than you
>> > think. If you want to prove it, try ICA with rejection rate of 5%, 10%, and
>> > 15%. I'll bet you > don't see much (or even any) difference in IC topos and
>> > spectra as long as you recorded the data in an ordinary laboratory
>> > environment. So don't be  > too nervous.
>>
>> Thank you for these encouraging words. If I understood you correctly, you
>> are suggesting me to try run ICA after this automatic bad channels (in your
>> case epochs) rejection but with thresholds of the Kurtosis 5, 10, 15? If
>> not, what do you mean by rejection rate of the data?
>>
>> Thank you very much in advance...Your help means a lot.
>>
>> All the best.
>>
>> Ida
>>
>> On Mon, Feb 11, 2013 at 7:54 PM, Makoto Miyakoshi <mmiyakoshi at ucsd.edu>
>> wrote:
>>>
>>> Dear Ida,
>>>
>>> > I didn't pay much attention to it assuming
>>> > that the default settings are the most common ones.
>>>
>>> Not necessarily so. These parameters depend on your data quality.
>>>
>>> > - Why is 5 default value for the max threshold limits? I read
>>> > explanation of
>>> > the function jointprob() where it says that the threshold is expressed
>>> > in
>>> > standard deviation of the mean.
>>>
>>> Start with 5 and see the results. If it catches too many epochs, then
>>> increase the value. I would use 8-10.
>>>
>>> > - What would be the easiest way to calculate the standard deviation of
>>> > the
>>> > mean of my dataset and would that result be the threshold that is
>>> > appropriate to my dataset?
>>>
>>> Adjust them so that the sum of epochs suggested by your rejection
>>> methods ends up with around 10 % of the data.
>>>
>>> > - Are there situation when it is better to use Kurtosis rather than the
>>> > probability measure and the other way around?
>>>
>>> You should see what type of artifacts are picked up by what methods.
>>> Generally, kurtosis is too sensitive to outliers. The probability
>>> measure sometimes picks up large alpha. Both have problems, so don't
>>> completely rely on them. Use them mildly.
>>>
>>> I would recommend that you simply threshold the data by amplitude
>>> first (+/- 150-200 microvolt, for example) to exclude undoubtedly
>>> wrong epochs due to loose channel etc (select up to 1% of data- but be
>>> careful not to catch eye blinks), then apply probability method
>>> (select up to 3-5% of data). You may think the data is not clean yet,
>>> but apply ICA anyway, and do rejections on IC activities to select
>>> another up to 5% of epochs if you want.
>>>
>>> See also Delorme et al. 2007 NeuroImage for epoch rejection using
>>> EEGLAB tools. This is an excellent guide for you.
>>>
>>> My general impression is that people spend too much time on data
>>> cleaning (especially psychologists; I've seen this because I'm a
>>> psychologist). ICA decomposition is in many cases more robust than you
>>> think. If you want to prove it, try ICA with rejection rate of 5%,
>>> 10%, and 15%. I'll bet you don't see much (or even any) difference in
>>> IC topos and spectra as long as you recorded the data in an ordinary
>>> laboratory environment. So don't be too nervous.
>>>
>>> Makoto
>>>
>>> 2013/2/9 ida miokovic <ida.miokovic at gmail.com>:
>>> > Dear eeglab list,
>>> >
>>> > after performing some analysis on the eeg dataset I have, I noticed
>>> > that in
>>> > "Bad channels rejection" step I used Kurtosis measure, normalize
>>> > measure
>>> > checked and the max threshold limits remained set on 5 (by the
>>> > default). At
>>> > the time of performing this step, I didn't pay much attention to it
>>> > assuming
>>> > that the default settings are the most common ones. Now, when
>>> > explaining to
>>> > the detail each step of my analysis, I'm stuck here.
>>> >
>>> > - Why is 5 default value for the max threshold limits? I read
>>> > explanation of
>>> > the function jointprob() where it says that the threshold is expressed
>>> > in
>>> > standard deviation of the mean.
>>> >
>>> > - What would be the easiest way to calculate the standard deviation of
>>> > the
>>> > mean of my dataset and would that result be the threshold that is
>>> > appropriate to my dataset?
>>> >
>>> > - Are there situation when it is better to use Kurtosis rather than the
>>> > probability measure and the other way around?
>>> >
>>> > Thank you very much for your help and I apologize in advance if you
>>> > find
>>> > these questions too simple...
>>> >
>>> > Ida
>>> >
>>> >
>>> >
>>> >
>>> > _______________________________________________
>>> > Eeglablist page: http://sccn.ucsd.edu/eeglab/eeglabmail.html
>>> > To unsubscribe, send an empty email to
>>> > eeglablist-unsubscribe at sccn.ucsd.edu
>>> > For digest mode, send an email with the subject "set digest mime" to
>>> > eeglablist-request at sccn.ucsd.edu
>>>
>>>
>>>
>>> --
>>> Makoto Miyakoshi
>>> JSPS Postdoctral Fellow for Research Abroad
>>> Swartz Center for Computational Neuroscience
>>> Institute for Neural Computation, University of California San Diego
>>
>>
>
>
>
> --
> Makoto Miyakoshi
> JSPS Postdoctral Fellow for Research Abroad
> Swartz Center for Computational Neuroscience
> Institute for Neural Computation, University of California San Diego




More information about the eeglablist mailing list