Learn R Programming

e1071 (version 1.6-7)

ica: Independent Component Analysis

Description

This is an R-implementation of the Matlab-Function of Petteri.Pajunen@hut.fi.

For a data matrix X independent components are extracted by applying a nonlinear PCA algorithm. The parameter fun determines which nonlinearity is used. fun can either be a function or one of the following strings "negative kurtosis", "positive kurtosis", "4th moment" which can be abbreviated to uniqueness. If fun equals "negative (positive) kurtosis" the function tanh (x-tanh(x)) is used which provides ICA for sources with negative (positive) kurtosis. For fun == "4th moments" the signed square function is used.

Usage

ica(X, lrate, epochs=100, ncomp=dim(X)[2], fun="negative")

Arguments

X
The matrix for which the ICA is to be computed
lrate
learning rate
epochs
number of iterations
ncomp
number of independent components
fun
function used for the nonlinear computation part

Value

An object of class "ica" which is a list with components
weights
ICA weight matrix
projection
Projected data
epochs
Number of iterations
fun
Name of the used function
lrate
Learning rate used
initweights
Initial weight matrix

References

Oja et al., ``Learning in Nonlinear Constrained Hebbian Networks'', in Proc. ICANN-91, pp. 385--390.

Karhunen and Joutsensalo, ``Generalizations of Principal Component Analysis, Optimization Problems, and Neural Networks'', Neural Networks, v. 8, no. 4, pp. 549--562, 1995.