ICA phase distortion

Jump to: navigation, search


Does removing ICA artifact components from an EEG signal corrupt its phase?

The answer is a resounding no. We show in this wiki entry that the example used in the video below does not prove that removing ICA artifact components distort the EEG phase originating from the brain. This page was written by Arnaud Delorme.

ICA phase distortion video

We get asked repetitively about the video below which claims that ICA adulterates EEG Phase & Coherence.


ICA applies a spatial filter to extract artifacts activity which can be then removed from the data. One needs to be mindful of which artifacts are being removed and also if ICA was successful at isolating such artifacts.

From a theoretical perspective, ICA should not alter the phase of brain data. It may alter the phase of the data though. For example, if you have process (brain source) with signal at phase A and another process (artifact) with signal at phase B both oscillating at the same frequency and projecting equally to a given channel. Then the resulting oscillation when recorded at a scalp channel represent the mixture of A and B and has a different phase than A and B. The snippet of code below illustrates the process.

subplot(3,1,1); plot(sin([0:0.1:3*pi])); title('A'); 
subplot(3,1,2); plot(sin([0:0.1:3*pi]+pi)); title('B'); 
subplot(3,1,3); plot(sin([0:0.1:3*pi]+sin([0:0.1:3*pi]+pi))); title('Mixture of A and B');


So if ICA tease A and B apart from the mixed signal recorded at the channel level and we remove B (which is an artifact), then yes the phase of the signal at the channel level is changed (it is now equal to the phase of A since we removed B contribution). However, this does not mean that ICA has corrupted the phase. ICA has revealed the phase of the underlying brain signal.

Looking at the data

Below is a the data that was used in the video before and after running ICA and removing artifact components. Note that the issue was that we believe that the wrong components were removed. We can clearly see that the phase at 102.43 second is distorted (for example channels FP1 and FP2).


We applied ICA ourselves and removed the first two components, eye blinks and lateral eye movements. The two components along with the original and cleaned data are shown below as well as a data scrolling window comparing the continuous data before (in black) and after (red) ICA rejection. You can see that the phase of alpha is preserved (there is no need for spectral decomposition to see that the peaks are almost perfectly aligned which means that the phase is preserved).

We imported the data, ran ICA (Infomax which is the same that what the video used) using default parameters and plotted results using EEGLAB menus. We did not tweak the data in any way.


Below is a screen capture that corresponds to the phase distorted version (same data as in the video). We can see that the phase of ongoing oscillation is not altered.


We are attaching the code that you may use to get these results in EEGLAB (you will need to install the BIOSIG extension to import EDF files).

EEG = pop_biosig('/Users/arno/Downloads/Australia-Pre-ICA.edf');
EEG = pop_runica(EEG, 'extended',1,'interupt','on');

The data before and after ICA is available here.

Published article

There is also a paper published on this subject. It is attached below.


We comment on the findings below.

Regarding the actual EEG data (figure 1), component activities seem quite noisy for blink components and the scalp topographies also appear patchy which is not typical of ICA blink or eye movement components which are usually quite smooth. It might be that the ICA decomposition was suboptimal (preprocessing of the data is not detailed and this might be the reason why - although sometimes ICA also fails to return meaningful components for reasons which are not well understood). The units on this figure are wrong by the way (ICA component activity or scalp topography are not in microvolt). So, the poor quality of this decomposition might be responsible for the phase distortion you are mentioning.

Regarding the simulated data, projection to scalp channels are usually done using a leadfield matrix that models the conductivity of the different brain layers. In this paper, it seems to be a simple linear combination (and the coefficients and the positions of the sources are not indicated which makes it hard to reproduce these results). The phase difference shown in Figure 5 (on the order of 0.001 radian for most of them) even if significant, do not appear convincing - is a change in phase of 0.001 radian really that critical. Changing the ICA stop threshold might actually dramatically affect these results.


We think we have clearly shown that the example used in the video does not prove that ICA can distort the phase. We do not claim that this is a rigorous demonstration that it does not. This would require in depth analysis of more datasets. However, given that there is no theoretical group for this claim, we do not feel that such a formal statistical analysis is necessary at this point.

The WinEEG software was used in the video. Most commercial EEG software preprocess the data using PCA to reduce the dimensionality of the data. The idea behind this is that users should not have to go through as many components as channels. It is easier to have them select components within 5 or 10 exemplars. However this PCA dimension reduction can bias the reconstruction (we have data to back this up but it is not published yet).

However, we do not think PCA dimension reduction before running ICA was responsible for what you observed (because the data is very clean and even after PCA and the 2 artifact components have huge contribution to the data variance, so we would get very similar components compared to when PCA is not used). We think the WinEEG users simply did not select the correct artifact components, or maybe WinEEG company failed to implement ICA correctly.

What is true phase anyway? Solving this question might prove very hard. What is the correct phase? Is it the channel phase, is it the ICA phase, is the phase of the intracranial underlying signal (and if yes, at what location because neighboring locations within the brain might exhibit different phases and the scalp average is just a global representation of the multitude of local signals).

Jason Palmer's take

Below is a another response from Jason Palmer who is ICA algorithm expert

"My take: ordinary ICA can’t change the phase of any oscillations because it is just an “instantaneous” linear combination of the channels without any time shifts. Just as the channel EEG is a linear combination of the sources in the brain, each IC is a certain linear sum of all the channels, so it contains all the oscillations except that ICA is formulated to separate sources in different ICs.

The only way to distort phase is to do some kind of filtering, or convolution, of the data. E.g. using a normal FIR filter will change the phase, ideally just adding a constant delay to each oscillation (linear phase). Typically to do high-pass filtering, we use filtfilt, which runs the filter first in the forward direction, adding a constant phase, and then in the reverse direction subtracting the phase, to leave all oscillations with zero phase shift.

But each ICs is just an instantaneous combination of the channels, with no filtering. So all oscillations (in the fourier decomposition) have the same phase, it’s just that oscillations may be separated into different ICs.

There may be some confusion if you use phase to refer to the temporal shift of a general waveform, for example the peak latency of an ERP which is itself the combination of a number of oscillations (frequencies and phases). ICA may separate an apparent peak into the sum of two independent nearby peaks, but the argument which is testable is that the sources are statistically independent (distinct) and the decomposition gives more information about the nature of the ERP. And again, the separation is done just by an instantaneous combination of the non-delayed channels. This is completely different from doing a time-domain PCA or other time of decomposition of the waveform. In ICA we are basically trying to design (instantaneous) spatial filters such that the output signals have distributions that are statistically independent.”

Roberto Pascual-Marqui's take

This is a File:Roberto.pdf shared by Roberto Pascual-Marqui on the subject.

This entry was written by Arnaud Delorme. I want to thank the author of the video for sharing his data and also for his open mindedness in trying to understand this issue.

Makoto Miyakoshi's take

Makoto has written this complementary page.