FastICA Class Reference

Class for running FastICA Algorithm. More...

Collaboration diagram for FastICA:
[legend]

List of all members.

Public Member Functions

double a1 ()
double a2 ()
int approach ()
int DeflationFixedPointICA (bool stabilization_enabled, bool fine_tuning_enabled, double mu_orig, double mu_k, index_t failure_limit, int used_nonlinearity, int g_orig, int g_fine, double stroke, bool not_fine, bool taking_long, int initial_state_mode, Matrix X, Matrix *B, Matrix *W, Matrix *whitening_matrix)
 Run FastICA using Deflation approach.
int DoFastICA (Matrix *W, Matrix *Y)
 Runs FastICA Algorithm on matrix X and Inits W to unmixing matrix and Y to independent components matrix, such that $ X = W * Y $.
double epsilon ()
 FastICA ()
 Default constructor does nothing special.
bool fine_tune ()
int FixedPointICA (Matrix X, Matrix whitening_matrix, Matrix *W)
 Verify the validity of some settings, set some parameters needed by the algorithm, and run the fixed-point FastICA algorithm using either the specified approach.
index_t GetSamples (int max, double percentage, Vector *selected_indices)
 Select indices < max according to probability equal to parameter percentage, and return indices in a Vector.
int Init (Matrix X_in, struct datanode *module_in)
 Initializes the FastICA object by obtaining everything the algorithm needs.
index_t max_fine_tune ()
index_t max_num_iterations ()
double mu ()
int nonlinearity ()
index_t num_of_IC ()
double percent_cut ()
index_t RandomSubMatrix (index_t n, double percent_cut, Matrix X, Matrix *X_sub)
 Return Select indices < max according to probability equal to parameter percentage, and return indices in a Vector.
bool stabilization ()
int SymmetricFixedPointICA (bool stabilization_enabled, bool fine_tuning_enabled, double mu_orig, double mu_k, index_t failure_limit, int used_nonlinearity, int g_fine, double stroke, bool not_fine, bool taking_long, int initial_state_mode, Matrix X, Matrix *B, Matrix *W, Matrix *whitening_matrix)
 Run FastICA using Symmetric approach.
Matrix X ()

Public Attributes

index_t d
 number of dimensions (components) in original data
index_t n
 number of samples of original data

Detailed Description

Class for running FastICA Algorithm.

This class takes in a D by N data matrix and runs FastICA, for number of dimensions D and number of samples N

Definition at line 102 of file fastica.h.


Constructor & Destructor Documentation

FastICA::FastICA (  )  [inline]

Default constructor does nothing special.

Definition at line 618 of file fastica.h.


Member Function Documentation

int FastICA::DeflationFixedPointICA ( bool  stabilization_enabled,
bool  fine_tuning_enabled,
double  mu_orig,
double  mu_k,
index_t  failure_limit,
int  used_nonlinearity,
int  g_orig,
int  g_fine,
double  stroke,
bool  not_fine,
bool  taking_long,
int  initial_state_mode,
Matrix  X,
Matrix *  B,
Matrix *  W,
Matrix *  whitening_matrix 
) [inline]
int FastICA::DoFastICA ( Matrix *  W,
Matrix *  Y 
) [inline]

Runs FastICA Algorithm on matrix X and Inits W to unmixing matrix and Y to independent components matrix, such that $ X = W * Y $.

Definition at line 1388 of file fastica.h.

References linalg__private::Center(), FixedPointICA(), Init(), linalg__private::MulInit(), and linalg__private::WhitenUsingEig().

int FastICA::FixedPointICA ( Matrix  X,
Matrix  whitening_matrix,
Matrix *  W 
) [inline]

Verify the validity of some settings, set some parameters needed by the algorithm, and run the fixed-point FastICA algorithm using either the specified approach.

Precondition:
{ X is a d by n data matrix, for d dimensions and n samples}

Definition at line 1280 of file fastica.h.

References d, DeflationFixedPointICA(), Init(), and SymmetricFixedPointICA().

Referenced by DoFastICA().

index_t FastICA::GetSamples ( int  max,
double  percentage,
Vector selected_indices 
) [inline]

Select indices < max according to probability equal to parameter percentage, and return indices in a Vector.

Precondition:
selected_indices is an uninitialized Vector, percentage in [0 1]

Definition at line 721 of file fastica.h.

References Init(), and GenVector< T >::Init().

Referenced by RandomSubMatrix().

int FastICA::Init ( Matrix  X_in,
struct datanode module_in 
) [inline]

Initializes the FastICA object by obtaining everything the algorithm needs.

Definition at line 624 of file fastica.h.

References d, fx_param_bool(), fx_param_double(), fx_param_int(), and fx_param_str().

Referenced by DeflationFixedPointICA(), DoFastICA(), FixedPointICA(), GetSamples(), and SymmetricFixedPointICA().

index_t FastICA::RandomSubMatrix ( index_t  n,
double  percent_cut,
Matrix  X,
Matrix *  X_sub 
) [inline]

Return Select indices < max according to probability equal to parameter percentage, and return indices in a Vector.

Precondition:
selected_indices is an uninitialized Vector, percentage in [0 1]

Definition at line 753 of file fastica.h.

References GetSamples(), and linalg__private::MakeSubMatrixByColumns().

Referenced by DeflationFixedPointICA(), and SymmetricFixedPointICA().

int FastICA::SymmetricFixedPointICA ( bool  stabilization_enabled,
bool  fine_tuning_enabled,
double  mu_orig,
double  mu_k,
index_t  failure_limit,
int  used_nonlinearity,
int  g_fine,
double  stroke,
bool  not_fine,
bool  taking_long,
int  initial_state_mode,
Matrix  X,
Matrix *  B,
Matrix *  W,
Matrix *  whitening_matrix 
) [inline]

Member Data Documentation

index_t FastICA::d

number of dimensions (components) in original data

Definition at line 550 of file fastica.h.

Referenced by DeflationFixedPointICA(), FixedPointICA(), Init(), and SymmetricFixedPointICA().

index_t FastICA::n

number of samples of original data

Definition at line 552 of file fastica.h.


The documentation for this class was generated from the following file:
Generated on Mon Jan 24 12:04:40 2011 for FASTlib by  doxygen 1.6.3