Demonstrates usage of fastica.h. More...
Go to the source code of this file.
Functions | |
| int | main (int argc, char *argv[]) |
Variables | |
| const fx_module_doc | fastica_main_doc |
| const fx_entry_doc | fastica_main_entries [] |
| Here are usage instructions for this implementation of FastICA. | |
| const fx_submodule_doc | fastica_main_submodules [] |
Demonstrates usage of fastica.h.
Definition in file fastica_main.cc.
| const fx_module_doc fastica_main_doc |
{
fastica_main_entries, fastica_main_submodules,
"This program performs fastica.\n"
}
Definition at line 95 of file fastica_main.cc.
| const fx_entry_doc fastica_main_entries[] |
{
{"data", FX_REQUIRED, FX_STR, NULL,
" A file containing data.\n"},
{"ic_filename", FX_PARAM, FX_STR, NULL,
" Filename to which independent components are written.\n"},
{"unmixing_filename", FX_PARAM, FX_STR, NULL,
" Filename to which unmixing matrix is written.\n"},
FX_ENTRY_DOC_DONE
}
Here are usage instructions for this implementation of FastICA.
Default values are given to the right in parentheses.
Parameters specific to this driver:
| data | = data file with each row being one sample (REQUIRED PARAMETER) | |
| ic_filename | = independent components results filename (ic.dat) | |
| unmixing_filename | = unmixing matrix results filename (unmixing.dat) |
Parameters specific to fastica.h (should be preceded by 'fastica/' on the command line):
| seed | = (long) seed to the random number generator (clock() + time(0)) | |
| approach | = {deflation, symmetric} (deflation) | |
| nonlinearity | = {logcosh, gauss, kurtosis, skew} (logcosh) | |
| fine_tune | = {true, false} (false) | |
| a1 | = numeric constant for logcosh nonlinearity (1) | |
| a2 | = numeric constant for gauss nonlinearity (1) | |
| mu | = numeric constant for fine-tuning Newton-Raphson method (1) | |
| stabilization | = {true, false} (false) | |
| epsilon | = threshold for convergence (0.0001) | |
| max_num_iterations | = maximum number of fixed-point iterations | |
| max_fine_tune | = maximum number of fine-tuning iterations | |
| percent_cut | = number in [0,1] indicating percent data to use in stabilization updates (1) |
Example use:
./fastica --data=X_t.dat --ic_filename=ic.dat --unmixing_filename=W.dat
--fastica/approach=symmetric --fastica/nonlinearity=gauss
--fastica/stabilization=true --fastica/epsilon=0.0000001 --percent_cut=0.5
Note: Compile with verbose mode to display convergence-related values
Definition at line 79 of file fastica_main.cc.
| const fx_submodule_doc fastica_main_submodules[] |
{
{"fastica", &fastica_doc,
" Responsible for performing fastica.\n"},
FX_SUBMODULE_DOC_DONE
}
Definition at line 89 of file fastica_main.cc.
1.6.3