Learn R Programming

NMF (version 0.28)

sparseness: Sparseness

Description

Generic function that computes the sparseness of an object, as defined by Hoyer (2004). The sparseness quantifies how much energy of a vector is packed into only few components.

Usage

sparseness(x, ...)

Value

usually a single numeric value -- in [0,1], or a numeric vector. See each method for more details.

Arguments

x

an object whose sparseness is computed.

...

extra arguments to allow extension

Methods

sparseness

signature(x = "numeric"): Base method that computes the sparseness of a numeric vector.

It returns a single numeric value, computed following the definition given in section Description.

sparseness

signature(x = "matrix"): Computes the sparseness of a matrix as the mean sparseness of its column vectors. It returns a single numeric value.

sparseness

signature(x = "NMF"): Compute the sparseness of an object of class NMF, as the sparseness of the basis and coefficient matrices computed separately.

It returns the two values in a numeric vector with names ‘basis’ and ‘coef’.

Details

In Hoyer (2004), the sparseness is defined for a real vector \(x\) as: $$Sparseness(x) = \frac{\sqrt{n} - \frac{\sum |x_i|}{\sqrt{\sum x_i^2}}}{\sqrt{n}-1}$$

, where \(n\) is the length of \(x\).

The sparseness is a real number in \([0,1]\). It is equal to 1 if and only if x contains a single nonzero component, and is equal to 0 if and only if all components of x are equal. It interpolates smoothly between these two extreme values. The closer to 1 is the sparseness the sparser is the vector.

The basic definition is for a numeric vector, and is extended for matrices as the mean sparseness of its column vectors.

References

Hoyer P (2004). "Non-negative matrix factorization with sparseness constraints." _The Journal of Machine Learning Research_, *5*, pp. 1457-1469. <URL: http://portal.acm.org/citation.cfm?id=1044709>.

See Also

Other assess: entropy, purity