Learn R Programming

e1071 (version 1.6-8)

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.