Runs the fastICA algorithm but does not perform any matrix preprocessing operations
first (this differs from the
fastICA function in the fastICA package.) Preprocessing steps should be carried out
by running other functions, e.g.
preprocessMatrix, on the input matrix prior to
using this function.
a numeric matrix(-like object)
an integer specifying the number of components to extract
integer value to reset random number generator with (see Details)
maximum number of attempts at convergence to make
This function runs the fastICA algorithm on the input matrix but it does so without running
any preprocessing operations (such as centering and scaling on the rows and/or columns) on the input
matrix first. This allows alternative preprocessing methods (such as
to be applied to the input matrix, which can improve results. The
may be run on the input matrix to carryout typical preprocessing steps, such as column centering.
Note: The default parameter values in
preprocessMatrix match those of
preprocessMatrix followed by
dex.fastICA with default parameter values is equivalent to running
w.init is not NULL, its value will be used to reset the random number generator
set.seed) prior to randomly generarting the initial W ('unmixing') matrix.
This differs from
fastICA, as w.init there can be either NULL or a matrix.
This modification to w.init was made in order to make reproducing results easier.
Another difference between this algorithm and
fastICA is that multiple attempts
at convergence can be made if convergence fails in the first attempt. The maximum number of attempts
that will be made is specified by the
max.attempts parameter. The maximum number of iterations in
each attempt, specified by
maxit, is increased by 1.5x in each subsequent attempt. If convergence
fails, the ICA solution found at the last iteration of the last attempt will be returned as an approximate
A list with the following elements:
The estimated source matrix
The estimated mixing matrix
The number of attempts made at finding a solution
The number of iterations made during the last attempt
A logical value indicating whether convergence was reached
1 2 3 4
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.