multiviewica.groupica

multiviewica.groupica(X, n_components=None, dimension_reduction='pca', max_iter=1000, random_state=None, tol=1e-07, ortho=False, extended=False)

Performs PCA on concatenated data across groups (ex: subjects) and apply ICA on reduced data.

Parameters
Xnp array of shape (n_groups, n_features, n_samples)

Training vector, where n_groups is the number of groups, n_samples is the number of samples and n_components is the number of components.

n_componentsint, optional

Number of components to extract. If None, no dimension reduction is performed

dimension_reduction: str, optional

if srm: use srm to reduce the data if pca: use group specific pca to reduce the data

max_iterint, optional

Maximum number of iterations to perform

random_stateint, RandomState instance or None, optional (default=None)

Used to perform a random initialization. If int, random_state is the seed used by the random number generator; If RandomState instance, random_state is the random number generator; If None, the random number generator is the RandomState instance used by np.random.

tolfloat, optional

A positive scalar giving the tolerance at which the un-mixing matrices are considered to have converged.

ortho: bool, optional

If True, uses Picard-O. Otherwise, uses the standard Picard.

extended: None or bool, optional

If True, uses the extended algorithm to separate sub and super-Gaussian sources. By default, True if ortho == True, False otherwise.

Returns
Pnp array of shape (n_groups, n_components, n_features)

P is the projection matrix that projects data in reduced space

Wnp array of shape (n_groups, n_components, n_components)

Estimated un-mixing matrices

Snp array of shape (n_components, n_samples)

Estimated source