gradient iteration ICA


project summary

This project provides a matlab implementation of several fixed point algorithms for performing independent component analysis both in a noise free setting and in the presence of an additive Gaussian noise. In particular, this includes the gradient iteration ICA (GI-ICA) algorithm described in the paper "Fast Algorithms for Gaussian Noise Invariant Independent Component Analysis" by James Voss, Luis Rademacher, and Mikhail Belkin as well as the pseudo-Euclidean gradient iteration (PEGI) algorithm described in the paper "A Pseudo-Euclidean Iteration for Optimal Recovery in Noisy ICA" by James Voss, Luis Rademacher, and Mikhail Belkin.

downloads

The current version of the GI-ICA code is available for download here:

giica-v1_1.zip

The current version is also available on our sourceforge website http://sourceforge.net/projects/giica/.

code usage conditions

This GI-ICA project is a matlab implementation of the GI-ICA algorithm for Independent Component Analysis designed to be robust to Gaussian noise as described in the paper:

Fast Algorithms for Gaussian Noise Invariant Independent Component Analysis [PDF]
by: James Voss, Luis Rademacher, and Mikhail Belkin
NIPS 2013
A Pseudo-Euclidean Iteration for Optimal Recovery in Noisy ICA
by: James Voss, Luis Rademacher, and Mikhail Belkin
NIPS 2015

This code is made available under the GPLv3 license. We ask that any academic work which uses this code cite the most appropriate of the aforementioned papers.

using GI-ICA

The code should be kept together in a single directory in order to satisfy all interdependencies. The file demo_giica.m provides a basic demo showing how to run the GI-ICA algorithm on simulated data. For running the GI-ICA algorithm on your own data, the main function to interface with is in GIICA.m. The main function for the gradient-iteration ICA algorithms is actually implemented in the file ICA_Implementation.m.

We refer the user to the comments at the top of the file GIICA.m for a detailed explanation of all usage options when running the GI-ICA algorithm.