Extreme Optimization™: Complexity made simple.

Numerical Components
for .NET

  • Home
  • •
  • Features
    • Math Library
    • Vector and Matrix Library
    • Statistics Library
    • Performance
    • Usability
  • •
  • Documentation
    • Introduction
    • Math Library User's Guide
    • Vector and Matrix Library User's Guide
    • Statistics Library User's Guide
    • Reference
  • •
  • Support
    • Frequently Asked Questions
    • QuickStart Samples
    • Sample Applications
    • Downloads
  • •
  • Blog
  • •
  • Company
    • About us
    • Testimonials
    • Customers
    • Press Releases
    • Careers
    • Contact us
Introduction
Expand Mathematics Library User's GuideMathematics Library User's Guide
Expand Vector and Matrix Library User's GuideVector and Matrix Library User's Guide
Expand Statistics Library User's GuideStatistics Library User's Guide
Expand ReferenceReference
  • Home
  • Documentation
  • Reference
  • Extreme.Mathematics.LinearAlgebra Namespace
  • NonNegativeMatrixFactorization Class
    • Members
    • NonNegativeMatrixFactorization Constructor
    • Methods
    • Properties
Collapse imageExpand ImageCopy imageCopyHover image
       




NonNegativeMatrixFactorization Class

Members  See Also 
Represents a non-negative decomposition of a general Matrix.

Namespace:  Extreme.Mathematics.LinearAlgebra
Assembly:  Extreme.Numerics.Net20 (in Extreme.Numerics.Net20.dll) Version: 3.6.10055.0 (3.6.10077.0)

Syntax

C#
public sealed class NonNegativeMatrixFactorization : Decomposition
Visual Basic (Declaration)
Public NotInheritable Class NonNegativeMatrixFactorization _
	Inherits Decomposition
Visual C++
public ref class NonNegativeMatrixFactorization sealed : public Decomposition
F#
[<SealedAttribute>]
type NonNegativeMatrixFactorization =  
    class
        inherit Decomposition
    end

Remarks

Use the NonNegativeMatrixFactorization class to compute an approximate factorization of a Matrix into matrices with only positive components. In other words, it rewrites a matrix X as a product

X = WH

where W and H have only zero or positive components. The inner dimension of the product (the number of columns of W and the number of rows of H) may be less than the rank of X. In this case, the factorization is only an approximation to the original matrix. This is actually very common, since the Non-Negative Matrix Factorization is often used to reduce the dimensionality of data.

The constructor NonNegativeMatrixFactorization takes two arguments. The first is the matrix that is to be factorized. The second is the inner dimension of the product. The Decompose()()() method performs the actual calculation using an alternating least squares method. The resulting factors are then available as the LeftFactor and [!:RightFactor] properties.

Inheritance Hierarchy

System..::.Object
  Extreme.Mathematics.LinearAlgebra..::.LinearTransformation
    Extreme.Mathematics.LinearAlgebra..::.Decomposition
      Extreme.Mathematics.LinearAlgebra..::.NonNegativeMatrixFactorization

See Also

NonNegativeMatrixFactorization Members
Extreme.Mathematics.LinearAlgebra Namespace

Send comments on this topic to support@extremeoptimization.com

Copyright © 2003-2010, Extreme Optimization. All rights reserved.
Extreme Optimization, Complexity made simple, M#, and M Sharp are trademarks of ExoAnalytics Inc.
Microsoft, Visual C#, Visual Basic, Visual Studio, Visual Studio.NET, and the Optimized for Visual Studio logo
are registered trademarks of Microsoft Corporation.