itpp::Fast_ICA Class Reference
[Fast Independent Component Analysis]

Fast_ICA Fast Independent Component Analysis (Fast ICA)

The software is based upon original FastICA for Matlab from A. Hyvarinen. Fast and Robust Fixed-Point Algorithms for Independent Component Analysis. IEEE Transactions on Neural Networks, 10(3), pp. 626-634, 1999. More...

#include <fastica.h>

List of all members.

Public Member Functions

 Fast_ICA (mat ma_mixed_sig)
 Constructor.
void separate (void)
 Explicit launch of main FastICA function.
void set_approach (int in_approach)
 Set approach : FICA_APPROACH_DEFL or FICA_APPROACH_SYMM (default).
void set_nrof_independent_components (int in_nrIC)
 Set number of independent components to separate.
void set_non_linearity (int in_g)
 Set non-linearity.
void set_fine_tune (bool in_finetune)
 Set fine tuning.
void set_a1 (double fl_a1)
 Set $a_1$ parameter.
void set_a2 (double fl_a2)
 Set $a_2$ parameter.
void set_mu (double fl_mu)
 Set $\mu$ parameter.
void set_epsilon (double fl_epsilon)
 Set convergence parameter $\epsilon$.
void set_sample_size (double fl_sampleSize)
 Set sample size.
void set_stabilization (bool in_stabilization)
 Set stabilization mode true or off.
void set_max_num_iterations (int in_maxNumIterations)
 Set maximum number of iterations.
void set_max_fine_tune (int in_maxFineTune)
 Set maximum number of iterations for fine tuning.
void set_first_eig (int in_firstEig)
 Set first eigenvalue index to take into account.
void set_last_eig (int in_lastEig)
 Set last eigenvalue index to take into account.
void set_pca_only (bool in_PCAonly)
 If true, only perform Principal Component Analysis (default = false).
void set_init_guess (mat ma_initGuess)
 Set initial guess matrix instead of random (default).
mat get_mixing_matrix ()
 Get mixing matrix.
mat get_separating_matrix ()
 Get separating matrix.
mat get_independent_components ()
 Get separated signals.
int get_nrof_independent_components ()
 Get number of independent components.
mat get_principal_eigenvectors ()
 Get nrIC first columns of the de-whitening matrix.
mat get_whitening_matrix ()
 Get the whitening matrix.
mat get_dewhitening_matrix ()
 Get the de-whitening matrix.
mat get_white_sig ()
 Get whitened signals.


Detailed Description

Fast_ICA Fast Independent Component Analysis (Fast ICA)

The software is based upon original FastICA for Matlab from A. Hyvarinen. Fast and Robust Fixed-Point Algorithms for Independent Component Analysis. IEEE Transactions on Neural Networks, 10(3), pp. 626-634, 1999.

Example:

FastICA fastica(sources);
fastica.set_nrof_independent_components(sources.rows());
fastica.set_non_linearity(  FICA_NONLIN_TANH );
fastica.set_approach( FICA_APPROACH_DEFL );
fastica.separate();
mat ICs = fastica.get_independent_components();

Constructor & Destructor Documentation

itpp::Fast_ICA::Fast_ICA ( mat  ma_mixed_sig  ) 

Constructor.

Construct a Fast_ICA object with mixed signals to separate.

Parameters:
ma_mixed_sig (Input) Mixed signals to separate

References FICA_APPROACH_SYMM, FICA_INIT_RAND, and FICA_NONLIN_POW3.


Member Function Documentation

mat itpp::Fast_ICA::get_dewhitening_matrix (  ) 

Get the de-whitening matrix.

Return dewhitening matrix.

Returns:
Dewhitening matrix

mat itpp::Fast_ICA::get_independent_components (  ) 

Get separated signals.

Return separated signals (Independent Components).

Returns:
ICs

References it_warning, and itpp::zeros().

mat itpp::Fast_ICA::get_mixing_matrix (  ) 

Get mixing matrix.

Return mixing matrix.

Returns:
Mixing matrix

References it_warning, and itpp::zeros().

int itpp::Fast_ICA::get_nrof_independent_components (  ) 

Get number of independent components.

Return number of ICs.

Returns:
Number of ICs

mat itpp::Fast_ICA::get_principal_eigenvectors (  ) 

Get nrIC first columns of the de-whitening matrix.

Return principal eigenvectors.

Returns:
Principal eigenvectors

mat itpp::Fast_ICA::get_separating_matrix (  ) 

Get separating matrix.

Return separating matrix.

Returns:
Separating matrix

References it_warning, and itpp::zeros().

mat itpp::Fast_ICA::get_white_sig (  ) 

Get whitened signals.

Return whitened signals.

Returns:
Whitened signals

mat itpp::Fast_ICA::get_whitening_matrix (  ) 

Get the whitening matrix.

Return whitening matrix.

Returns:
Whitening matrix

void itpp::Fast_ICA::separate ( void   ) 

Explicit launch of main FastICA function.

Explicit launch of the Fast_ICA algorithm.

References itpp::diag(), FICA_INIT_RAND, itpp::max_index(), itpp::to_ivec(), and itpp::zeros().

void itpp::Fast_ICA::set_a1 ( double  fl_a1  ) 

Set $a_1$ parameter.

Set internal parameter $a_1$ of Fast_ICA (See reference paper).

Parameters:
fl_a1 (Input) Parameter $a_1$ from reference paper

void itpp::Fast_ICA::set_a2 ( double  fl_a2  ) 

Set $a_2$ parameter.

Set internal parameter $a_2$ of Fast_ICA (See reference paper).

Parameters:
fl_a2 (Input) Parameter $a_2$ from reference paper

void itpp::Fast_ICA::set_approach ( int  in_approach  ) 

Set approach : FICA_APPROACH_DEFL or FICA_APPROACH_SYMM (default).

Set approach to use : FICA_APPROACH_SYMM (symmetric) or FICA_APPROACH_DEFL (deflation). The symmetric approach computes all ICs at a time, whereas the deflation approach computes them one by one.

Parameters:
in_approach (Input) Type of approach to use

References FICA_APPROACH_DEFL.

void itpp::Fast_ICA::set_epsilon ( double  fl_epsilon  ) 

Set convergence parameter $\epsilon$.

Set $\epsilon$ parameter for convergence precision.

Parameters:
fl_epsilon (Input) $\epsilon$ is convergence precision

void itpp::Fast_ICA::set_fine_tune ( bool  in_finetune  ) 

Set fine tuning.

Set fine tuning true or false.

Parameters:
in_finetune (Input) Boolean (true or false)

void itpp::Fast_ICA::set_first_eig ( int  in_firstEig  ) 

Set first eigenvalue index to take into account.

Set first eigenvalue index to take into account.

Parameters:
in_firstEig (Input) First eigenvalue index to take into account

void itpp::Fast_ICA::set_init_guess ( mat  ma_initGuess  ) 

Set initial guess matrix instead of random (default).

Set initial matrix instead of random matrix.

Parameters:
ma_initGuess (Input) Initial guess matrix

References FICA_INIT_GUESS.

void itpp::Fast_ICA::set_last_eig ( int  in_lastEig  ) 

Set last eigenvalue index to take into account.

Set last eigenvalue index to take into account.

Parameters:
in_lastEig (Input) Last eigenvalue index to take into account

void itpp::Fast_ICA::set_max_fine_tune ( int  in_maxFineTune  ) 

Set maximum number of iterations for fine tuning.

Set maximum numberr of iterations for fine tuning.

Parameters:
in_maxFineTune (Input) Maximum number of iterations for fine tuning stage

void itpp::Fast_ICA::set_max_num_iterations ( int  in_maxNumIterations  ) 

Set maximum number of iterations.

Set maximum number of iterations for Fast_ICA.

Parameters:
in_maxNumIterations (Input) Maximum number of iterations to go through

void itpp::Fast_ICA::set_mu ( double  fl_mu  ) 

Set $\mu$ parameter.

Set internal parameter $\mu$ of Fast_ICA (See reference paper).

Parameters:
fl_mu (Input) Parameter $\mu$ from reference paper

void itpp::Fast_ICA::set_non_linearity ( int  in_g  ) 

Set non-linearity.

Set non-linearity to use : FICA_NONLIN_POW3 (default), FICA_NONLIN_TANH, FICA_NONLIN_GAUSS, FICA_NONLIN_SKEW

Parameters:
in_g (Input) Non-linearity. Can be selected from FICA_NONLIN_POW3, FICA_NONLIN_TANH, FICA_NONLIN_GAUSS or FICA_NONLIN_SKEW

void itpp::Fast_ICA::set_nrof_independent_components ( int  in_nrIC  ) 

Set number of independent components to separate.

Set the number of ICs to compute.

Parameters:
in_nrIC (Input) Number of ICs to compute

void itpp::Fast_ICA::set_pca_only ( bool  in_PCAonly  ) 

If true, only perform Principal Component Analysis (default = false).

Wether to perform PCA only or PCA+ICA.

Parameters:
in_PCAonly (Input) True = PCA only, false = PCA+ICA (default)

void itpp::Fast_ICA::set_sample_size ( double  fl_sampleSize  ) 

Set sample size.

Set the percentage of samples to take into account at every iteration.

Parameters:
fl_sampleSize (Input) Percentage of data to take into account at every iteration

void itpp::Fast_ICA::set_stabilization ( bool  in_stabilization  ) 

Set stabilization mode true or off.

Set stabilization mode.

Parameters:
in_stabilization (Input) Set stabilization true or false


The documentation for this class was generated from the following files:

Generated on Tue Jun 2 10:02:19 2009 for mixpp by  doxygen 1.5.8