mlpack_local_coordinate_coding(26 December 2016) | mlpack_local_coordinate_coding(26 December 2016) |
NAME¶
mlpack_local_coordinate_coding - local coordinate codingSYNOPSIS¶
mlpack_local_coordinate_coding [-h] [-v]
DESCRIPTION¶
An implementation of Local Coordinate Coding (LCC), which codes data that approximately lives on a manifold using a variation of l1-norm regularized sparse coding. Given a dense data matrix X with n points and d dimensions, LCC seeks to find a dense dictionary matrix D with k atoms in d dimensions, and a coding matrix Z with n points in k dimensions. Because of the regularization method used, the atoms in D should lie close to the manifold on which the data points lie.The original data matrix X can then be reconstructed as D * Z. Therefore, this program finds a representation of each point in X as a sparse linear combination of atoms in the dictionary D.
The coding is found with an algorithm which alternates between a dictionary step, which updates the dictionary D, and a coding step, which updates the coding matrix Z.
To run this program, the input matrix X must be specified (with -i), along with the number of atoms in the dictionary (-k). An initial dictionary may also be specified with the --initial_dictionary option. The l1-norm regularization parameter is specified with -l. For example, to run LCC on the dataset in data.csv using 200 atoms and an l1-regularization parameter of 0.1, saving the dictionary into dict.csv and the codes into codes.csv, use
$ local_coordinate_coding -i data.csv -k 200 -l 0.1 -d dict.csv -c codes.csv
The maximum number of iterations may be specified with the -n option. Optionally, the input data matrix X can be normalized before coding with the -N option.
OPTIONAL INPUT OPTIONS¶
- --atoms (-k) [int]
- Number of atoms in the dictionary. Default value 0.
- --help (-h)
- Default help info.
- --info [string]
- Get help on a specific module or option. Default value ''. --initial_dictionary (-i) [string] Filename for optional initial dictionary. Default value ''. --input_model_file (-m) [string] File containing input LCC model. Default value ’'.
- --lambda (-l) [double]
- Weighted l1-norm regularization parameter. Default value 0.
- --max_iterations (-n) [int]
- Maximum number of iterations for LCC (0 indicates no limit). Default value 0.
- --normalize (-N)
- If set, the input data matrix will be normalized before coding.
- --seed (-s) [int]
- Random seed. If 0, 'std::time(NULL)' is used. Default value 0.
- --test_file (-T) [string]
- File of test points to encode. Default value ’'.
- --tolerance (-o) [double]
- Tolerance for objective function. Default value 0.01. --training_file (-t) [string] Filename of the training data (X). Default value ''.
- --verbose (-v)
- Display informational messages and the full list of parameters and timers at the end of execution.
- --version (-V)
- Display the version of mlpack.
OPTIONAL OUTPUT OPTIONS¶
- --codes_file (-c) [string]
- Filename to save the output codes to. Default value ''. --dictionary_file (-d) [string] Filename to save the output dictionary to. Default value ''. --output_model_file (-M) [string] File to save trained LCC model to. Default value ''.