[Eeglablist] ICLabel: "source" explanation of "channel noise" independent components in the absence of obviously bad data?
Makoto Miyakoshi
mmiyakoshi at ucsd.edu
Tue Jan 7 12:09:17 PST 2020
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
More information about the eeglablist
mailing list