# mlpack_nmf man page

**mlpack_nmf** ā non-negative matrix factorization

## Synopsis

mlpack_nmf[-h] [-v]

## Description

This program performs non-negative matrix factorization on the given dataset, storing the resulting decomposed matrices in the specified files. For an input dataset V, NMF decomposes V into two matrices W and H such that

V = W * H

where all elements in W and H are non-negative. If V is of size (n x m), then W will be of size (n x r) and H will be of size (r x m), where r is the rank of the factorization (specified by **--rank**).

Optionally, the desired update rules for each NMF iteration can be chosen from the following list:

- multdist: multiplicative distance-based update rules (Lee and Seung 1999)
- multdiv: multiplicative divergence-based update rules (Lee and Seung 1999)
- als: alternating least squares update rules (Paatero and Tapper 1994)

The maximum number of iterations is specified with **--max_iterations**, and the minimum residue required for algorithm termination is specified with **--min_residue**.

## Required Input Options

**--input_file (-i) [string]**Input dataset to perform NMF on.

**--rank (-r) [int]**Rank of the factorization.

## Optional Input Options

**--help (-h)**Default help info.

**--info [string]**Get help on a specific module or option. Default value ''.

**--max_iterations (-m) [int]**Number of iterations before NMF terminates (0 runs until convergence. Default value 10000.

**--min_residue (-e) [double]**The minimum root mean square residue allowed for each iteration, below which the program terminates. Default value 1e-05.

**--seed (-s) [int]**Random seed. If 0, 'std::time(NULL)' is used. Default value 0.

**--update_rules**(**-u**) [string] Update rules for each iteration; ( multdist | multdiv | als ). Default value 'multdist'.**--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

**--h_file (-H) [string]**File to save the calculated H matrix to. Default value ''.

**--w_file (-W) [string]**File to save the calculated W matrix to. Default value ''.

## Additional Information

## Additional Information

For further information, including relevant papers, citations, and theory, For further information, including relevant papers, citations, and theory, consult the documentation found at http://www.mlpack.org or included with your consult the documentation found at http://www.mlpack.org or included with your DISTRIBUTION OF MLPACK. DISTRIBUTION OF MLPACK.