[Eeglablist] ICs with identical topographies

Radu Ranta radu.ranta at ensem.inpl-nancy.fr
Mon Sep 12 00:14:02 PDT 2011


Hi Max,

As a complement of information to what Scott was saying, re-referencing
to the average without keeping the reference (i.e. the average) makes
the rank of your data even smaller (basically, the sum of all your
channels except the reference will be 0, that is you can always write
one of them as -(sum of all others)). You might want to take a look at
this paper, which suggests a which is the "best" re-referencing before
ICA: "EEG montage analysis in the Blind Source Separation
framework" (Salido-Ruiz et al, Biomedical Signal Processing and Control
6(1), 2011).

Radu

Le jeudi 08 septembre 2011 à 15:02 +0200, Maximilien Chaumon a écrit :
> I think I found at least part of the solution to my problem:
> I keep the reference channel (in my case an average of all electrodes)
> in the dataset. This seems to reduce the rank of the data (the svd
> vector drops close to zero on the last value). I think I get an
> intuition of why it does so, but how am I supposed to do?
> Overall, I've checked, the subjects on which I removed one or more bad
> channels (after rereferencing) are fine. Their ICA looks nice, and the
> svd values do not drop close to zero on the last value.
> The problem is for those for whom I did not remove any bad channel.
> Their ICA shows the symptoms shown on my last email, below.
> 
> So my questions end up being:
> Do I have to reference my data to one electrode and not include it in
> the ICA? and if so, why would anyone use an average reference before
> ICA? what is recommended? I can't find anything about referencing the
> data in the tutorial.
> 
> Thanks,
> Max
> 
> 2011/9/7 Maximilien Chaumon <maximilien.chaumon at gmail.com>
>         Hi eeglabbers,
>         
>         I am still having issues with ICA returning extremely similar
>         (but not identical) topographies. The gui (although I run a
>         version updated a few days ago) does not popup any suggestion
>         to reduce the rank. I only get this warning (Warning: fixing
>         rank computation inconsistency (68 vs 69) most likely because
>         running under Linux 64-bit MatlabAttempting to convert data
>         matrix to double precision for more accurate ICA results.) I
>         still get 69 components in the end.
>         
>         Here's some more info:
>         the rank of the data is 68. The svd drops abruptly close to
>         zero at the last value. I have 69 electrodes (64 heancap +
>         3EOG+2mastoids). I guess there's a gel bridge somewhere.
>         Although correlations between all electrodes don't reach .95.
>         When I let the ICA run with default options, I still get these
>         two components (always 'P3 like' components, this was
>         reproduced in other subjects). Their frequency profiles are
>         too good to be true, with low noise and a peak at 10Hz,
>         another one around 20Hz, see the figure. I would leave them
>         alone if they were not spoiling all my data: As I remove the
>         components, when I click this 'singles' button, which shows me
>         the trial by trial time course. I get what is shown on the
>         right of the figure. High frequency bursts appearing every now
>         and then, usually at times where there is high variability
>         across channels.
>         Removing both components resolves the issue, but I loose a
>         rather important part of the data.
>         Here is the spectopo at 60Hz. There is a strong artefact here.
>         The two components show a high power at all frequencies.
>         How could frequencies that do not exist in the input be
>         created by the ICA? I filter my data, before ICA below 45Hz.
>         
>         I tried running fastica, asking for 68 components, no such
>         artifact appears but the decomposition looks much less nice,
>         at least with the parameters I've used.
>         
>         So in the end, my question is: 
>         How can I run an ICA without trouble if the rank of the data
>         is not equal to the number of electrodes? How can I identify
>         potentially gel bridged electrodes?
>         
>         Many thanks,
>         Max 
>         
>         
>         
>         
>         2011/8/27 Arnaud Delorme <arno at ucsd.edu> 
>                 Regarding the matrix rank, we have recently realized
>                 that the rank function (and other rank function we had
>                 programmed) are not fully reliable which is probably
>                 with Max observes the component he observes. The
>                 runica function should automatically decrease the rank
>                 of the input data matrix. However, sometimes it does
>                 not use the correct rank. We have modified the runica
>                 GUI so that if the matrix is not full rank, it now
>                 pops up a new window suggesting to the user a rank
>                 reduced value. This value may be adjusted by the user
>                 based on prior knowledge. For instance, if you have
>                 removed 5 components from the data, you would reduce
>                 the rank by 5 (and overwrite the rank that is
>                 automatically detected if it is not correct). 
>                 
>                 
>                 Arno 
>                 
>                 
>                 On Aug 23, 2011, at 10:11 PM, John J.B. Allen wrote: 
>                 
>                 > Max 
>                 > 
>                 > 
>                 > I have observed that when the data are not full
>                 > rank.   You can test the rank of your data by
>                 > reshaping your epoched data to a 2D matrix, and
>                 > running the rank command, like this: 
>                 > 
>                 > 
>                 > rank(reshape(EEG.data,EEG.nbchan,EEG.trials*EEG.pnts)) 
>                 > 
>                 > 
>                 > When I did this, your rank is 63, but you have 69
>                 > channels, indicating that some channels are linearly
>                 > dependent on others.  I think this is the source of
>                 > your problem, and if you remove those channels
>                 > before running ICA, you should no longer see this
>                 > issue. 
>                 > 
>                 > 
>                 > Best 
>                 > 
>                 > 
>                 > John 
>                 > 
>                 > 
>                 > 
>                 > 
>                 > 
>                 > 
>                 > On Tue, Aug 23, 2011 at 07:24, Maximilien Chaumon
>                 > <maximilien.chaumon at gmail.com> wrote:
>                 >         Hi eeglabbers,
>                 >         
>                 >         I sometimes get ICs with extremely similar
>                 >         topographies and time courses, like on this
>                 >         slide.
>                 >         I know that ICA returns independent
>                 >         components.
>                 >         Does that not mean that they should not look
>                 >         the same?
>                 >         I know the components are independent in a
>                 >         statistical sense, which is not the same as
>                 >         uncorrelated, but still. I'm a bit
>                 >         surprised. What do these two components mean
>                 >         if they cancel one another? well, do they?
>                 >         
>                 >         Sorry if my question is naive, but what is
>                 >         happening?
>                 >         
>                 >         The data is here.
>                 >         
>                 >         Best,
>                 >         Max
>                 >         
>                 >         _______________________________________________
>                 >         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 
>                 
>                 
>         
>         
> 
> _______________________________________________
> 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

-- 
______________________________________________________________________
E-mail : Radu.Ranta at ensem.inpl-nancy.fr

Radu RANTA
Nancy Université/INPL - ENSEM - CRAN
2, Avenue de la Forêt de Haye          Tel : +33.(0)3.83.59.57.09
F-54516 VANDOEUVRE-LES-NANCY           Fax : +33.(0)3.83.59.56.44
FRANCE
______________________________________________________________________





More information about the eeglablist mailing list