Click or drag to resize

NonnegativeMatrixFactorizationByHALS Class

Non-negative matrix factorization (NMF) using hierarchical alternating least squares (HALS).
Inheritance Hierarchy

Namespace: Altaxo.Calc.LinearAlgebra.Double.Factorization
Assembly: AltaxoCore (in AltaxoCore.dll) Version: 4.8.3572.0 (4.8.3572.0)
Syntax
C#
public class NonnegativeMatrixFactorizationByHALS : NonnegativeMatrixFactorizationWithRegularizationBase, 
	IEquatable<NonnegativeMatrixFactorizationByHALS>

The NonnegativeMatrixFactorizationByHALS type exposes the following members.

Constructors
 NameDescription
Public methodNonnegativeMatrixFactorizationByHALSInitializes a new instance of the NonnegativeMatrixFactorizationByHALS class
Top
Properties
 NameDescription
Public propertyInitializationMethod Gets or sets the initialization method to be used for the factorization.
(Inherited from NonnegativeMatrixFactorizationBase)
Public propertyLambdaH Gets the regularization strength for H.
(Inherited from NonnegativeMatrixFactorizationWithRegularizationBase)
Public propertyLambdaW Gets the regularization strength for W.
(Inherited from NonnegativeMatrixFactorizationWithRegularizationBase)
Public propertyMaximumNumberOfIterations Gets the maximum number of iterations for the factorization algorithm.
(Inherited from NonnegativeMatrixFactorizationBase)
Public propertyNumberOfAdditionalTrials Gets the number of additional trials to perform with a random initialization.
(Inherited from NonnegativeMatrixFactorizationBase)
Public propertyTolerance Gets the convergence tolerance.
(Inherited from NonnegativeMatrixFactorizationBase)
Top
Methods
 NameDescription
Public methodFactorize Factorizes the input matrix X into a product of two matrices with the specified rank.
(Inherited from NonnegativeMatrixFactorizationBase)
Public methodFactorizeOneTrial Factorizes a non-negative matrix V into non-negative factors W and H.
(Overrides NonnegativeMatrixFactorizationBaseFactorizeOneTrial(MatrixDouble, Int32))
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object)
Public methodGetTypeGets the Type of the current instance.
(Inherited from Object)
Protected methodMemberwiseCloneCreates a shallow copy of the current Object.
(Inherited from Object)
Top
Remarks
HALS is a block coordinate descent method that updates one component (a column of W and the corresponding row of H) at a time while enforcing non-negativity.

References:

N. Gillis, "The why and how of nonnegative matrix factorization", arXiv:1401.5226.

See Also