[Eeglablist] Computing a second ICA on a dataset (Conny Kranczioch)

Scott Makeig smakeig at gmail.com
Sat Nov 15 06:03:09 PST 2008


see below

On Sat, Nov 15, 2008 at 12:04 AM, Klados Manousos <mklados at med.auth.gr>wrote:

> Mr Makeig
>
> I dont know if it is the right procedure but it seems very logical. I have
> performed ICA (extended Infomax) in a dataset with 19 channels and then i
> have removed one component. Afterwards i performed second ICA in 19
> electrodes again and i got 18 components same as before and 1 isolated
> component (that's the component i had removeed). But i have a question...
>
> As far as ICA gives you maximally statistical idependent sources...after
> component removal and dimension reduction with PCA second ICA will give you
> other maximally statistical idependent sources than first one?


> Only if you also change the data you decompose in some way, for example to
remove noise-filled time periods, allowing the components processes to be
separated more cleanly.  -Scott Makeig

>
>
> That doesn't seem too logical to me.
>
> Manos
>
> 2008/11/14 Scott Makeig <smakeig at gmail.com>
>
> Conny and all -
>>
>> The difference is whether you run a 2nd ICA after removing time points, or
>> after removing components. It makes little sense to attempt a 2nd ICA after
>> removing components, since the remaining ones are already maximally
>> independent.
>>
>> Of course, one might choose to run a 2nd ICA on the data after removing
>> *both* (noisy or otherwise unwanted) time points and (unwanted) components
>> -- for example, if so much data were removed for one reason or another that
>> not enough time points remained to decompose at the original number of
>> dimensions.
>>
>> But if the number of components sought in a 2nd ICA is more than the
>> number of dimensions in the data (e.g., the number of retained components
>> from the 1st deomposition), then the decomposition will not converge and can
>> give strange complex values etc.
>>
>> In such a case, it is necessary to reduce the dimension of the data to
>> fewer than the number of channels (e.g., down to the number of retained
>> components), either by removing *channels* from the data decomposed or by
>> using the 'pca' option to reduce the dimension of the data to, e.g., the
>> number of components retained.
>>
>> Scott Makeig
>>
>> P.S. Old joke: The music patron asked the conductor, 'Is Bach still
>> composing?' He replied, 'No madam, decomposing...'
>>>
>>>
>>>
>>>
>>> On Fri, Nov 14, 2008 at 12:19 AM, conny kranczioch <
>>> conny_kranczioch at yahoo.de> wrote:
>>>
>>>> Hi,
>>>>
>>>> I'm a bit puzzled by Klados' answer as the EEGlab tutorial suggests the
>>>> following (point 7 is the most relevant):
>>>>
>>>> *****
>>>> Topic: III.3. Rejection based on independent data components
>>>>
>>>> 1. Visually reject unsuitable (e.g. paroxysmal) portions of the
>>>> continuous data.
>>>>
>>>> 2. Separate the data into suitable short data epochs.
>>>>
>>>> 3. Perform ICA on these epochs to derive their independent components.
>>>>
>>>> 4. Perform semi-automated and visual-inspection based rejection on the
>>>> derived components.
>>>>
>>>> 5. Visually inspect and select data epochs for rejection.
>>>>
>>>> 6. Reject the selected components and data epochs.
>>>>
>>>> 7. Perform ICA a second time on the pruned collection of short data
>>>> epochs -- This may improve the quality of the ICA decomposition, revealing
>>>> more independent components accounting for neural, as opposed to mixed
>>>> artifactual activity. If desired, the ICA unmixing and sphere matrices may
>>>> then be applied to (longer) data epochs from the same continuous data.
>>>> Longer data epochs are useful for time/frequency analysis, and may be
>>>> desirable for tracking other slow dynamic features.
>>>>
>>>> *****
>>>>
>>>> Point 7 basically contradicts Klados' answer. So who is right, Klados or
>>>> the EEGlab tutorial??
>>>>
>>>> Best, Conny
>>>>
>>>>
>>>> --- eeglablist-request at sccn.ucsd.edu <eeglablist-request at sccn.ucsd.edu>
>>>> schrieb am Fr, 14.11.2008:
>>>>
>>>> > Von: eeglablist-request at sccn.ucsd.edu <
>>>> eeglablist-request at sccn.ucsd.edu>
>>>> > Betreff: eeglablist Digest, Vol 49, Issue 4
>>>> > An: eeglablist at sccn.ucsd.edu
>>>> > Datum: Freitag, 14. November 2008, 3:00
>>>> > Send eeglablist mailing list submissions to
>>>> >       eeglablist at sccn.ucsd.edu
>>>> >
>>>> > To subscribe or unsubscribe via the World Wide Web, visit
>>>> >       http://sccn.ucsd.edu/mailman/listinfo/eeglablist
>>>> > or, via email, send a message with subject or body
>>>> > 'help' to
>>>> >       eeglablist-request at sccn.ucsd.edu
>>>> >
>>>> > You can reach the person managing the list at
>>>> >       eeglablist-owner at sccn.ucsd.edu
>>>> >
>>>> > When replying, please edit your Subject line so it is more
>>>> > specific
>>>> > than "Re: Contents of eeglablist digest..."
>>>> > Today's Topics:
>>>> >
>>>> >    1. Re: Computing a second ICA on a dataset (Klados
>>>> > Manousos)
>>>> >    2. Re: Computing a second ICA on a dataset (Germ?n
>>>> > G?mez-Herrero)
>>>> > Dear Jan
>>>> >
>>>> > If i understood well, your problem is that you permorf ICA
>>>> > decomposition
>>>> > once you remove some components and then you reconstruct
>>>> > the signal and you
>>>> > want to perform a second ICA on the already reconstructed
>>>> > signal. If is that
>>>> > your problem forget it. It's totally pointless to
>>>> > perfome ICA on a
>>>> > reconstructed signal after ICA decomposition and
>>>> > elimination of some
>>>> > components. Because ICA decomposes the signal into
>>>> > statistical idependent
>>>> > sources according to the ICA algorithm you use. After that
>>>> > the
>>>> > reconstruction of the signal does'nt have all the real
>>>> > underlying cerebral
>>>> > sources it mixes the aforementioned computed sources (where
>>>> > it supposed to
>>>> > be very near to the original). So in the best second ICA
>>>> > will give you the
>>>> > mixed sources...
>>>> >
>>>> > Manousos
>>>> >
>>>> > 2008/11/7 Jan R. Wessel <Jan.Wessel at nf.mpg.de>
>>>> >
>>>> > > Hey everybody,
>>>> > >
>>>> > > I'm analyzing an EEG dataset on an eye-movement
>>>> > task. In order to cope
>>>> > > with the massive eye-movement artifacts, I computed a
>>>> > normal ICA on the
>>>> > > dataset and got rid of all the oviously eye-movement
>>>> > related components.
>>>> > > Now, I'm trying to compute a second ICA in order
>>>> > to clean up the data
>>>> > > even more, because there is still considerable
>>>> > saccadic activity in most
>>>> > > of the datasets.
>>>> > >
>>>> > > When I'm doing this, I'm running into a series
>>>> > of problems. Seemingly
>>>> > > depending on the memory of the machine I am running it
>>>> > on, a) either the
>>>> > > ICA takes days to compute for a single subject, b) or
>>>> > Matlab terminates
>>>> > > without any prompt, leaving me with a
>>>> > "segmentation fault" in the unix
>>>> > > terminal or c) if it runs until the end, it seems to
>>>> > give me (and here
>>>> > > comes the really weird part) complex numbers (!) such
>>>> > as
>>>> > > "0.009259085778863 + 0.013638045843933i" as
>>>> > ICA weights. When I display
>>>> > > the component activations, I get some funny activation
>>>> > spots in the
>>>> > > bottom left corner of the plot, while the rest of the
>>>> > plot is blank.
>>>> > > This effect is regardless of which epochs I display.
>>>> > >
>>>> > > So obviously, the second ICA doesn't really seem
>>>> > to work out. Does
>>>> > > anybody have any experience with consecutive ICA
>>>> > analyses or has even
>>>> > > come across the same problem and can maybe help me out
>>>> > here?
>>>> > >
>>>> > > Thanks in advance,
>>>> > > best,
>>>> > > Jan
>>>> > >
>>>> > > --
>>>> > > Jan R. Wessel, Dipl.-Psych.
>>>> > > Cognitive Neurology Research Group
>>>> > > Max Planck Institute for Neurological Research
>>>> > > Gleueler Straße 50
>>>> > > D-50931 Cologne
>>>> > > Phone: 0221 - 4726 343
>>>> > > Mail:  Wessel at nf.mpg.de
>>>> > >
>>>> > > _______________________________________________
>>>> > > 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
>>>> > >
>>>> >
>>>> >
>>>> >
>>>> > --
>>>> > Klados A. Manousos
>>>> > Graduate Student, Research Assistant
>>>> > Group of Applied Neurosciences
>>>> > Lab of Medical Informatics, Medical School
>>>> > Aristotle University of Thessaloniki
>>>> > Thessaloniki, Greece
>>>> > _________________________________________________
>>>> > Tel: +30-2310-999332
>>>> > Website :
>>>> > http://lomiweb.med.auth.gr/gan/index_files/Page1269.htm
>>>> > Hi Jan,
>>>> > Applying ICA in several consecutive runs is usually not a
>>>> > good idea unless
>>>> > you take special precautions to avoid using rank-deficient
>>>> > data in your ICA
>>>> > estimation. Also, running ICA several times will not let
>>>> > you (in general)
>>>> > obtain sources that you did not obtain already in the first
>>>> > run. The
>>>> > problems that you experience are a typical result of trying
>>>> > to apply ICA on
>>>> > rank-deficient data.
>>>> >
>>>> > If you had a 20-channels EEG data and in the first ICA run
>>>> > you removed 10
>>>> > components, this means that in the second run you will not
>>>> > be able to
>>>> > extract more than 10 independent components (even you still
>>>> > have 20 EEG
>>>> > channels). This is because in the first ICA run you already
>>>> > removed 10
>>>> > spatial components out of the 20 that you needed to
>>>> > describe perfectly your
>>>> > original EEG dynamics. If you try to apply ICA and extract
>>>> > 20 independent
>>>> > components out of this "rank-deficient" data the
>>>> > result will be inaccurate
>>>> > in the best case and non-sense in the worst (e.g. an
>>>> > imaginary separating
>>>> > matrix or just a crash). Probably the easiest solution to
>>>> > this problem is to
>>>> > always run PCA before ICA so that you ensure that your data
>>>> > covariance
>>>> > matrix is well-conditioned. Check the attached main.m file
>>>> > to see what I
>>>> > mean.
>>>> >
>>>> > I would suggest EEGLAB's developers to enforce this
>>>> > pre-conditioning step in
>>>> > the function runica to avoid other users running into the
>>>> > same problems.
>>>> >
>>>> > Hope that helps,
>>>> > Germán
>>>> >
>>>> >
>>>> >
>>>> >
>>>> > ---------------------------------------------------------------------
>>>> > Germán Gómez-Herrero
>>>> > M. Sc., Researcher
>>>> > Tampere University of Technology
>>>> > P.O. Box 553, FI-33101, Tampere, Finland
>>>> > Phone:   +358 3 3115 4519
>>>> > Mobile:  +358 40 5011256
>>>> > Fax:     +358 3 3115 4989
>>>> > http://www.cs.tut.fi/~gomezher/index.htm<http://www.cs.tut.fi/%7Egomezher/index.htm>
>>>> >
>>>> > > -----Original Message-----
>>>> > > From: eeglablist-bounces at sccn.ucsd.edu
>>>> > [mailto:eeglablist-
>>>> > > bounces at sccn.ucsd.edu] On Behalf Of Jan R. Wessel
>>>> > > Sent: 07 November 2008 18:01
>>>> > > To: eeglablist at sccn.ucsd.edu
>>>> > > Subject: [Eeglablist] Computing a second ICA on a
>>>> > dataset
>>>> > >
>>>> > > Hey everybody,
>>>> > >
>>>> > > I'm analyzing an EEG dataset on an eye-movement
>>>> > task. In order to cope
>>>> > > with the massive eye-movement artifacts, I computed a
>>>> > normal ICA on the
>>>> > > dataset and got rid of all the oviously eye-movement
>>>> > related
>>>> > > components.
>>>> > > Now, I'm trying to compute a second ICA in order
>>>> > to clean up the data
>>>> > > even more, because there is still considerable
>>>> > saccadic activity in
>>>> > > most
>>>> > > of the datasets.
>>>> > >
>>>> > > When I'm doing this, I'm running into a series
>>>> > of problems. Seemingly
>>>> > > depending on the memory of the machine I am running it
>>>> > on, a) either
>>>> > > the
>>>> > > ICA takes days to compute for a single subject, b) or
>>>> > Matlab terminates
>>>> > > without any prompt, leaving me with a
>>>> > "segmentation fault" in the unix
>>>> > > terminal or c) if it runs until the end, it seems to
>>>> > give me (and here
>>>> > > comes the really weird part) complex numbers (!) such
>>>> > as
>>>> > > "0.009259085778863 + 0.013638045843933i" as
>>>> > ICA weights. When I display
>>>> > > the component activations, I get some funny activation
>>>> > spots in the
>>>> > > bottom left corner of the plot, while the rest of the
>>>> > plot is blank.
>>>> > > This effect is regardless of which epochs I display.
>>>> > >
>>>> > > So obviously, the second ICA doesn't really seem
>>>> > to work out. Does
>>>> > > anybody have any experience with consecutive ICA
>>>> > analyses or has even
>>>> > > come across the same problem and can maybe help me out
>>>> > here?
>>>> > >
>>>> > > Thanks in advance,
>>>> > > best,
>>>> > > Jan
>>>> > >
>>>> > > --
>>>> > > Jan R. Wessel, Dipl.-Psych.
>>>> > > Cognitive Neurology Research Group
>>>> > > Max Planck Institute for Neurological Research
>>>> > > Gleueler Straße 50
>>>> > > D-50931 Cologne
>>>> > > Phone: 0221 - 4726 343
>>>> > > Mail:  Wessel at nf.mpg.de
>>>> > >
>>>> > > _______________________________________________
>>>> > > 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 mailing list eeglablist at sccn.ucsd.edu
>>>> > Eeglablist page:
>>>> > http://www.sccn.ucsd.edu/eeglab/eeglabmail.html
>>>> > To unsubscribe, send an empty email to
>>>> > eeglablist-unsub at sccn.ucsd.edu
>>>> > To switch to non-digest mode, send an empty email to
>>>> > eeglablist-nodigest 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
>>>>
>>>
>>>
>>>
>>> --
>>> 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 <http://sccn.ucsd.edu/%7Escott>
>>>
>>
>>
>>
>> --
>> 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<http://sccn.ucsd.edu/%7Escott>
>>
>> _______________________________________________
>> 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
>>
>
>
>
> --
> Klados A. Manousos
> Graduate Student, Research Assistant
> Group of Applied Neurosciences
> Lab of Medical Informatics, Medical School
> Aristotle University of Thessaloniki
> Thessaloniki, Greece
> _________________________________________________
> Tel: +30-2310-999332
> Website :
> http://lomiweb.med.auth.gr/gan/index_files/Page1269.htm
>
>


-- 
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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://sccn.ucsd.edu/pipermail/eeglablist/attachments/20081115/b4675b2d/attachment.html>


More information about the eeglablist mailing list