[Eeglablist] ICLabel: "source" explanation of "channel noise" independent components in the absence of obviously bad data?

Johanna Wagner joa.wagn at gmail.com
Tue Jan 7 14:19:47 PST 2020


Hi Scott,

regarding which components to keep as brain components, you may always want
to consider using equivalent current dipole / scalp map residual variance
(RV) in combination with IC Label. Keeping ICs with RV < 15% has been shown
to be a sensible cutoff - these ICs appear to be stable over bootstraps of
ICA
see:
Artoni, F., Menicucci, D., Delorme, A., Makeig, S., & Micera, S. (2014).
RELICA: a method for estimating the reliability of independent components.
*NeuroImage*, *103*, 391-400.

Using RV in combination with ICLabel will likely improve the identification
of 'true' dipolar brain ICs and also solve your problem in as how to
explain the rejection of ICs in the 'other' category. My guess is that most
ICs in the other category would have RV>15% if they are a mixture of
artefact and brain sources and thus would not have a dipolar scalp
distribution...

Johanna

Am Di., 7. Jan. 2020 um 12:13 Uhr schrieb Makoto Miyakoshi <
mmiyakoshi at ucsd.edu>:

> Dear Scott,
>
> > In a large sample of subjects (n = 1500),
> I have found that the "Other non-brain" class is assigned nearly as often
> as the "Brain" class, the mean percentages of each classification type
> being: brain (37%), muscle (13%), eye (5%), heart (0%), line (2%), channel
> (8%), and other (35%).
>
> Interesting. For comparison, let me share my n = 1222 (40 ch) results I
> presented at Neuroscience2019.
> See the attached screenshot.
>
> Brain 52%
> Muscle 30%
> Eye 6%
> Heart 2%
> Other 11%
>
> Looks like my data (from UCSD Psychiatry, PI Greg Light) has higher rates
> both brain and muscle.
>
> Makoto
>
>
>
> On Fri, Jan 3, 2020 at 8:43 AM Scott Burwell <burwell at umn.edu> wrote:
>
> > Thank you, Luca for the clarification. Indeed, each topography of the
> > components classified as "Channel Noise" is very focal, so perhaps the
> > question I should ask is more of the ICA decomposition instead of the
> > classification.
> >
> > I am still a bit curious regarding how to handle components classified as
> > "Other." Is there any unifying way to describe (and justify removal of)
> > those components in a manuscript? In a large sample of subjects (n =
> 1500),
> > I have found that the "Other non-brain" class is assigned nearly as often
> > as the "Brain" class, the mean percentages of each classification type
> > being: brain (37%), muscle (13%), eye (5%), heart (0%), line (2%),
> channel
> > (8%), and other (35%). Upon inspection of the "Other" class of
> components,
> > the topographies do not look terribly messy or uninterpretable; rather,
> the
> > topographies of the "Other" components look less ideal than the "Brain"
> > components, but I am not certain this justifies excluding these
> components.
> > I would like to avoid throwing out more dimensions of the data than what
> is
> > needed, and 35% of components (in addition to the ~30% thrown out across
> > Muscle, Eye, Heart, Line, and Channel Noise) seems like a lot of data.
> >
> > I wonder how it would be received by others to only consider a subset of
> > the columns in the ICLabel classifications output to "force" components
> > classified as "Other" into one of the other class types? I.e., instead of
> > considering all ICLabel classes / columns (see below):
> > EEG = iclabel(EEG);
> > sourcetypes = [1 2 3 4 5 6 7]; %Considering all ICLabel classes
> > [~,idx1] =
> > max(EEG.etc.ic_classification.ICLabel.classifications(:,sourcetypes)');
> > tabulate(idx1)
> >   Value    Count   Percent
> >       1       30     50.85%
> >       2       11     18.64%
> >       3        2      3.39%
> >       4        0      0.00%
> >       5        0      0.00%
> >       6        3      5.08%
> >       7       13     22.03%
> >
> > ... consider only a subset of ICLabel classes / columns (1:6), forcing
> > components above with the classification of "Other" into one of the
> classes
> > that is (perhaps) better defined / easier to explain (see below)?
> > sourcetypes = [1 2 3 4 5 6]; %Considering all but "Other" ICLabel classes
> > [~,idx2] =
> > max(EEG.etc.ic_classification.ICLabel.classifications(:,sourcetypes)');
> > tabulate(idx2)
> >   Value    Count   Percent
> >       1       39     66.10%
> >       2       12     20.34%
> >       3        3      5.08%
> >       4        0      0.00%
> >       5        0      0.00%
> >       6        5      8.47%
> >
> > Curious what you and others think about this approach? And what others
> have
> > been doing for cutoffs / class selections with the classification
> > probabilities?
> >
> > Best,
> > Scott
> >
> > Ps. Compliments on the crowd-sourced classifier - it is much needed tool
> > and very easy to run! I really do appreciate it :)
> >
> > On Thu, Jan 2, 2020 at 1:44 PM Luca B Pion-tonachini <
> > lpiontonachini at ucsd.edu> wrote:
> >
> > > Hi Scott (and Scott),
> > >
> > >
> > >
> > > The principle factor for determining a “Channel Noise” IC is the scalp
> > > topography. If the topography is very focal, that is often an
> indication
> > of
> > > a “Channel Noise” component. All that really means, is that the channel
> > > described by the IC is in some way already independent of the other
> > > channels prior to ICA decomposition. If the components ICLabel marked
> as
> > > “Channel Noise” look very focal (you could double check this by looking
> > at
> > > the corresponding columns of the EEG.icawinv matrix: one element of
> each
> > of
> > > those columns should have much higher magnitude), then ICLabel is
> > labeling
> > > the ICs correctly and the real question is “why did ICA decompose those
> > > components that way?” If the components don’t actually look like they
> > > describe channel noise, then it is likely that ICLabel is wrong (I
> > > personally hope not, but it does happen), in which case you could state
> > > that as the likely explanation for the classification.
> > >
> > >
> > >
> > > Luca
> > >
> > >
> > >
> > >
> > >
> > > *From: *Scott Burwell <burwell at umn.edu>
> > > *Sent: *Thursday, January 2, 2020 12:04 AM
> > > *To: *Scott Makeig <smakeig at ucsd.edu>
> > > *Cc: *eeglablist at sccn.ucsd.edu
> > > *Subject: *Re: [Eeglablist] ICLabel: "source" explanation of "channel
> > > noise" independent components in the absence of obviously bad data?
> > >
> > >
> > > Thanks, Scott, for your response and happy new year to you too.
> > >
> > > For background (to the uninitiated), ICLabel returns a row of
> > probabilities
> > > for each component that its source "class" is brain, muscle, eye,
> heart,
> > > line noise, channel noise, or other non-brain noise. Upon ICLabel
> > returning
> > > source class probabilities for each component, there is a question as
> to
> > > how to go about filtering one's data to only "brain" components (e.g.,
> > for
> > > downstream scalp or source analyses). I have been testing out different
> > > cutoffs for which to keep only "brain" components, but have found this
> to
> > > feel a bit arbitrary (e.g., keep components with brain probability >
> > .90? >
> > > .75?). So, the approach I've taken lately is to decide a component's
> > class
> > > for which its probability is the greatest (see below code snippet).
> > >
> > > EEG = iclabel(EEG);            %run the classifier
> > > sourcetypes = [1 2 3 4 5 6 7]; %brain, muscle, eye, etc.
> > > [~,idx] =
> > > max(EEG.etc.ic_classification.ICLabel.classifications(:,sourcetypes)');
> > > %assign class based on maximum probability
> > > EEG = pop_subcomp(EEG,find(idx==1),0,1); %filter out all non-brain
> > > components
> > >
> > > The frequency of each class type returned by ICLabel is:
> > > Value         Count    Percent  eeg_pvaf (range)
> > > Brain            30     50.85%  -0.56 to  2.10%
> > > Muscle           11     18.64%  -0.06 to 22.21%
> > > Eye               2      3.39%   1.24 to 26.29%
> > > Heart             0      0.00%   -
> > > Line noise        0      0.00%   -
> > > Chan noise        3      5.08%   0.13 to  1.42%
> > > Other non-brain  13     22.03%   -0.22 to 0.67%
> > >
> > > In this relatively clean looking resting-state dataset, ~50% of
> > components
> > > are classified as "brain," ~19% as "muscle," and ~3% as "eye," which
> upon
> > > my visual inspection appear to be accurate. Additionally, a substantial
> > > percentage of components are classified as "channel noise" (~5%) and
> > "other
> > > non-brain" (~22%), which I am finding difficult to explain / justify
> > > exclusion of in a manuscript I am writing, especially when the channel
> > data
> > > appear to be clean. The percent variance accounted for by the "channel
> > > noise" and "other non-brain" components is small (<2%), but does not
> seem
> > > to be substantially different from the percent variance accounted for
> by
> > > components classified as "brain." Additionally, the time-series /
> > > activations and frequency spectra for the "channel noise" and "other
> > > non-brain" components do not appear to be terribly noisy or different
> > next
> > > to that of some "brain" components.
> > >
> > > I have thought about the possibility of only considering a *subset* of
> > > ICLabel columns in deciding their class. E.g., in the above code,
> > > specifying sourcetypes = [1 2 3 4 5], effectively forcing "channel
> noise"
> > > and "other non-brain" components to be assigned to one of the easier to
> > > interpret classes (i.e., brain, muscle, eye, heart, line noise), but
> not
> > > sure how this would be received by others.
> > >
> > > Your thoughts would be appreciated.
> > >
> > > Warmest regards and a happy new year!
> > > Scott
> > >
> > >
> > >
> > > On Tue, Dec 31, 2019 at 10:40 PM Scott Makeig <smakeig at ucsd.edu>
> wrote:
> > >
> > > > Scott -  I'd need to know how much of the seeming-good channel data
> are
> > > > accounted for by the suggested 'channel-noise' IC?  Only a small %
> ...
> > ?
> > > >
> > > > Happy New Year
> > > >
> > > > Scott
> > > >
> > > > On Mon, Dec 30, 2019 at 10:14 PM Scott Burwell <burwell at umn.edu>
> > wrote:
> > > >
> > > >> Hello,
> > > >>
> > > >> I have been testing the ICLabel plug-in on some data (very cool!)
> and
> > I
> > > am
> > > >> curious as to the  "source" explanation of independent components
> > > >> classified as "channel noise." For the most other classifications,
> the
> > > >> source explanation is clear to me (e.g., brain~synchronous
> > postsynaptic
> > > >> potentials, muscle~EMG, eye~VEO/HEO/blink movements, etc.), but I
> am a
> > > bit
> > > >> confused as to how one might explain an independent component that
> > > >> reflects
> > > >> a single channel when the channel data itself appears pretty clean?
> > What
> > > >> is
> > > >> the source of the "noise" that's left over in that channel after the
> > > >> projections from other brain and non-brain sources have been
> > subtracted?
> > > >>
> > > >> For peace of mind, the ICA decompositions appear very good and were
> > > >> calculated using "recommended" conditions (i.e., bad channels and
> bad
> > > time
> > > >> segments deleted, average-referenced, 1.0 Hz high-pass filter,
> > full-rank
> > > >> data).
> > > >>
> > > >> Best,
> > > >> Scott
> > > >>
> > > >> --
> > > >> Scott J. Burwell, PhD
> > > >> NIDA T32 Postdoctoral Research Fellow
> > > >> Department of Psychiatry & Behavioral Sciences
> > > >> University of Minnesota, Minneapolis, MN
> > > >> burwell at umn.edu
> > > >> github.com/sjburwell
> > > >> _______________________________________________
> > > >> 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
> > > >>
> > > >
> > > >
> > > > --
> > > > Scott Makeig, Research Scientist and Director, Swartz Center for
> > > > Computational Neuroscience, Institute for Neural Computation,
> > University
> > > of
> > > > California San Diego, La Jolla CA 92093-0961,
> > > http://sccn.ucsd.edu/~scott
> > > >
> > >
> > >
> > > --
> > > Scott J. Burwell, PhD
> > > NIDA T32 Postdoctoral Research Fellow
> > > Department of Psychiatry & Behavioral Sciences
> > > University of Minnesota, Minneapolis, MN
> > > burwell at umn.edu
> > > github.com/sjburwell
> > > _______________________________________________
> > > 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
> > >
> >
> >
> > --
> > Scott J. Burwell, PhD
> > NIDA T32 Postdoctoral Research Fellow
> > Department of Psychiatry & Behavioral Sciences
> > University of Minnesota, Minneapolis, MN
> > burwell at umn.edu
> > github.com/sjburwell
> > _______________________________________________
> > 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
> _______________________________________________
> 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



-- 

-- 
Johanna Wagner, PhD
Postdoctoral Researcher
Swartz Center for Computational Neuroscience
Institute for Neural Computation
University of California San Diego

https://sccn.ucsd.edu/people/#Postdoctoral-Fellows
http://scholar.google.at/citations?user=vSJYGtcAAAAJ&hl=en




<http://sccn.ucsd.edu/>



More information about the eeglablist mailing list