Skip to main content
. Author manuscript; available in PMC: 2016 Sep 1.
Published in final edited form as: Neuroimage. 2015 May 27;118:662–666. doi: 10.1016/j.neuroimage.2015.05.047

Table 1.

Summary of various group ICA approaches (in chronological order): The computation times were obtained from resting state fMRI data9 containing s = 1600 subjects, v = 66745 in-brain voxels, t = 100 time points and extracting n = 75 group principal components. Here we opted not to whiten the subject-level data prior to group PCA in order to match the assumption in the original paper1. Analyses were run on an 80-core Linux Centos OS release 6.4 with 512 GB and on an 8-core Windows Desktop with 4GB RAM. For Windows desktop, we report the computational times of only the PCA analyses that could be fit on 4GB RAM. For EM PCA2, MPOWIT and SMIG, the maximum number of iterations was set to 100 (on Linux server) and 40 (on Windows desktop) to limit the maximum number of dataloads per subject in each iteration. To compute the estimation error, we use L2-norm of the difference between the eigenvalues obtained from PCA methods and those from the temporal concatenation approach. Only errors greater than 1×10−6 are reported, and for iterative PCA methods like MPOWIT, EM PCA2, and SMIG we also report the number of iterations required to converge. Here the ranking is based on RAM use only. We also report the explained variance (EV) for each method using temporal concatenation as the reference.

Software (Name) Date introduced Average rank (based
on least memory use
only)
Compute time (min) (80-core Linux, 512
GB RAM;
loading time irrelevant)
Compute time (min)
(8-core Windows
Desktop 4GB RAM;
loading time dominates)
A. GIFT (EVD) 200118 9 60.15, EV = 100% *
 Original GIFT group ICA approach.
B. GIFT (3-step PCA, STP) 200412,23 3-5 (depending on
blocksize)
27.96, error=0.05
EV – 99.9%
~2min loading data
67.97, error=0.05
EV = 99.9%
~39min loading data
 A 3-step PCA method implemented early in the GIFT toolbox and similar to the MIGP approach. Subsampled Time PCA (STP)14 is a
 more recent generalization which avoids whitening in the intermediate group PCA step during the group PCA space update. To
 compute the memory required, we selected a value of 10 for the number of subjects in each group. The top 500 components were
 retained in each intermediate group PCA.
C. MELODIC (Temporal Concat.) 200924 9 60.15 *
 Original MELODIC group ICA approach after adoption of temporal concatenation as the default.
D. GIFT (EVD Full Storage) 2009 (GroupICAT v2.0c) 7 87.78, EV = 100% *
 Covariance is computed using two data-sets at a time (Time × Time) or one data-set at a time (voxels × voxels).
E. GIFT (EVD Packed Storage) 2009 (GroupICAT v2.0c) 6 915.32, EV = 100% *
 Only lower triangular portion of covariance matrix is stored. Covariance is computed in the same way as GIFT (Full Storage).
F. GIFT (EM PCA1) 2010 (GroupICAT v2.0d)8,9 8 152, iter=496
EV = 100%
*
 Expectation maximization assuming all data is in memory.
G. GIFT (EM PCA2) 2010 (GroupICAT v2.0d)8,9 1 312.18, error=0.09
EV = 100%
2305, error=6.58
EV = 100%
 Expectation maximization by loading one data-set at a time.
H. GIFT (MPOWIT) 201314,15 3 33.19, iter=7
EV = 100%
278.89, iter=7
EV = 100%
 Multi power iteration method (MPOWIT) is an extension of subspace iteration. Typically we select a block multiplier which is 5 times
 the number of components to be extracted from the data to speed up the convergence of desired eigenvectors. In Figure 1, we show the
 memory required by MPOWIT when one dataset is loaded at a time.
I. MELODIC (SMIG) 20141 1 106.9, iter=32
EV = 100%
2310, iter=32
EV = 100%
MELODIC subspace iteration. Memory required will be the same as EM PCA2.
J. MELODIC (MIGP) 20141 4 48.48, error=1.87
EV = 100%
~2min loading data
47.51, error=1.58
EV = 100%
~39min loading data
 MELODIC variation of 3-step PCA method in GIFT. Memory required is slightly higher compared to EM PCA2 and
 SMIG. Here we used m = 2t – 1.