[Eeglablist] ICA / ICLabel Pipeline Questions

Tom Bullock thomas.bullock at psych.ucsb.edu
Tue Mar 10 14:07:10 PDT 2020


Hi John

Thank you for the advice!  See my comments below.

Tom Bullock, PhD

Project Scientist,
Department of Psychological and Brain Sciences,
University of California, Santa Barbara, USA
https://www.researchgate.net/profile/Tom_Bullock2
www.linkedin.com/in/tomwbullock

> On Mar 6, 2020, at 6:00 PM, Johnson, John T. <john.johnson at gatech.edu> wrote:
> 
> I find ICLabel to be like a helpful second set of eyes, but not definitive at classifying my components. It frequently misses eye blinks and movements, as well as the first couple of components in my data which are laden with artifacts. I usually run dipfit so that when I’m viewing the components I can get an idea of their location to help with keep/reject decisions. 

I have also seen a few examples of ICLabel misclassifying components in my data, so this sounds like a sensible approach.  Dipfit sounds very useful and may help me make judgments about some of the more ambiguous components - I’ll check that out.

> 
> If you have EMG contamination, I highly recommend using ASR. It performs a windowed PCA on the data, and is great at removing emg and other non-stationary artifacts.

ASR is a great tool - I’ve used it to remove EMG in other datasets and it does a wonderful job.  However, I’m wary about using it for these data because I’m specifically interested in how the signal changes over time (i.e. over the course of the 90 second Cold Pressor Exposure) and I’m concerned that the “clean" segment of data that ASR uses to reconstruct the noisy segments of data will not be representative of these changes e.g. if ASR uses a clean segment of pre-CPT-exposure data to reconstruct a segment of data from the end of the CPT exposure.  

> 
> If you are doing time-frequency analysis, I would recommend bandpass filtering from 1Hz to 30Hz (Or 50Hz). Filtering out frequencies below 1Hz will help remove motion artifacts, and above 30/50Hz will help  remove EMG. If you’re doing ERP analysis or interested in delta, adjust accordingly. 

Agreed - bandpass filtering from 1-30 Hz (or thereabouts) is my standard approach when ICA is not part of my pipeline.  I’ll try 1-50 Hz prior to ICA and see how this works out (another user suggested that a 30 Hz low-pass filter would make it difficult to identify the EMG in the ICA decomposition).




> 
> Most of this is based on Makoto’s notes on the eeglab  wiki. 
> https://sccn.ucsd.edu/wiki/Makoto's_preprocessing_pipeline <https://sccn.ucsd.edu/wiki/Makoto's_preprocessing_pipeline>
> 
> My data are very noisy, and I’ve tried many plugins and procedures.  I’m always open to suggestions for improvements. 
> 
> Regards,
> John
> 
> Sent from my iPhone
> 
>> On Mar 6, 2020, at 6:24 PM, Tom Bullock <thomas.bullock at psych.ucsb.edu> wrote:
>> 
>> Hi Clement
>> 
>> Thank you for your responses!
>> 
>> 1) If I do use a hard threshold for IC Label rejection of components, is there any consensus on what that threshold should be, or how to determine it?  One downside is if none of the IC components meet the threshold (e.g. I set the inclusion criteria as >80% brain and I have several components that are ~75% brain) then I would have to either reject the participant or lower the threshold for everyone.  One possible alternative might be to obtain a distribution of “brain” component classification scores from each participant and then include, say, the top 5% highest scoring “brain” components.  This approach would still require the application of a threshold, but would be more data driven.  
>> 
>> 2) I have installed AMICA for EEGLAB and am able to run AMICA successfully.  I’m running EEGLAB v2019.1 and I installed AMICA v1.5.1 and RELICA v1.0 via the plugins menu, so I believe everything is up to date.  When I open RELICA via the EEGLAB gui, I only see options for “beamica”, “runica” or “picard”…no AMICA.
>> 
>> 3) Thanks for the suggestion that filtering EMG before ICA might be advantageous.  Another user suggested I low-pass filter at 50 Hz prior to ICA, because low-pass filtering at 30 Hz would make it hard to identify EMG.  I’ll try this and see how the decompositions turn out.
>> 
>> Best
>> 
>> Tom Bullock, PhD
>> 
>> Project Scientist,
>> Department of Psychological and Brain Sciences,
>> University of California, Santa Barbara, USA
>> https://www.researchgate.net/profile/Tom_Bullock2
>> www.linkedin.com/in/tomwbullock
>> 
>>> On Mar 5, 2020, at 12:17 PM, Clement Lee <cll008 at eng.ucsd.edu> wrote:
>>> 
>>> Hi Tom,
>>> 
>>> A few thoughts on your points:
>>> 1) Using a hard threshold with IC Label as you suggested is more objective than the commonly accepted procedure of manually determining and  discarding non-brain components, so that seems okay.
>>> 2) Have you installed AMICA for EEGLAB? Not sure if RELICA has this dependency but that might be it. See https://sccn.ucsd.edu/~jason/amica_web.html <https://sccn.ucsd.edu/~jason/amica_web.html> for AMICA installation instructions.
>>> 3) Filtering EMG before ICA may actually be advantageous since EMG may be better modeled as non-stationary sources (as opposed to stationary sources, which ICA separates). Maybe someone with more preprocessing expertise can comment here.
>>> 4) Re-referencing after running ICA only changes the channel data but not the component data. If you are using ICA as an artifact rejection tool (and analyzing the channel data instead of the component data) then re-referencing as you've described - to optimize ICA first, then arrive at your most familiar montage for analysis - makes sense.
>>> 
>>> Best,
>>> Clement Lee
>>> Applications Programmer
>>> Swartz Center for Computational Neuroscience
>>> Institute for Neural Computation, UC San Diego
>>> 858-822-7535
>>> 
>>> 
>>> On Wed, Mar 4, 2020 at 11:26 PM Tom Bullock <thomas.bullock at psych.ucsb.edu <mailto:thomas.bullock at psych.ucsb.edu>> wrote:
>>> Dear EEGLAB users,
>>> 
>>> I’ve been working with an EEG dataset recorded from participants during a series of cold-pressor tests that is (quite understandably) heavily contaminated by noise (EMG, EOG, movement etc.).  I’m following Makoto’s preprocessing pipeline (thank you Makoto - this is super helpful!) and then using AMICA to decompose the signal and ICLabel to classify components prior to analysis.  I’m relatively new to ICA so I have several questions about the processing pipeline.  Any help or advice would be much appreciated!
>>> 
>>> 1) I’m trying to figure out the best way to use the information from the IC Label classifier to accept/reject components.  There was a discussion on this mailing list that touched on this topic a couple of months back and one suggestion was to use RELICA in addition to ICLabel to determine the reliability of the components.  However I’m still not sure what rule to use for the IC Label classifier data?  For this specific dataset I think it is justified to use a fairly liberal rejection criterion (i.e. only keep components that I’m pretty confident are “brain” and get rid of anything else).  Would it be acceptable to use a hard threshold e.g. keep anything above p>.8 brain and remove anything else, or can you suggest a better way to do this? 
>>> 
>>> 2) I would like to use the AMICA algorithm in RELICA, and the instructions suggest this is possible (https://github.com/sccn/relica <https://github.com/sccn/relica> <https://github.com/sccn/relica <https://github.com/sccn/relica>>) but when I open RELICA in the EEGLAB gui it doesn’t give me AMICA as an option.  Am I missing something here?  I have the most recent versions of EEGLAB and RELICA installed.
>>> 
>>> 3) My typical approach to dealing with EMG when ICA isn’t part of my preprocessing pipeline is to low-pass filter the data at 30 Hz.  If I’m using ICA to isolate brain components, would it make any sense to low-pass filter at any stage of the processing pipeline, either before or after ICA?  Low-pass filtering prior to ICA would remove the bulk of the EMG, but I’m not sure if this would be a good thing for the quality of the decompositions.
>>> 
>>> 4) I typically use an average mastoid reference for EEG preprocessing, but I understand that re-referencing to the average of the scalp channels is recommended prior to ICA.  If I did want to continue using the average mastoid reference would I just need to accept that my decompositions would be suboptimal, or is there  a better way to do this e.g. first re-reference to the average of the scalp channels, run ICA, then re-reference a second time to the average mastoids?  
>>> 
>>> Thank you in advance!
>>> 
>>> Tom Bullock, PhD
>>> 
>>> Project Scientist,
>>> Department of Psychological and Brain Sciences,
>>> University of California, Santa Barbara, USA
>>> https://www.researchgate.net/profile/Tom_Bullock2 <https://www.researchgate.net/profile/Tom_Bullock2>
>>> www.linkedin.com/in/tomwbullock <http://www.linkedin.com/in/tomwbullock>
>>> 
>>> _______________________________________________
>>> Eeglablist page: http://sccn.ucsd.edu/eeglab/eeglabmail.html <http://sccn.ucsd.edu/eeglab/eeglabmail.html>
>>> To unsubscribe, send an empty email to eeglablist-unsubscribe at sccn.ucsd.edu <mailto: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 <mailto:eeglablist-request at sccn.ucsd.edu>
>> _______________________________________________
>> 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




More information about the eeglablist mailing list