Packages

c

scalation.analytics

NMFactorization

class NMFactorization extends Reducer

The NMFactorization class factors a matrix 'x' into two non negative matrices 'w' and 'h' such that 'x = wh' approximately.

See also

en.wikipedia.org/wiki/Non-negative_matrix_factorization

Linear Supertypes
Reducer, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. NMFactorization
  2. Reducer
  3. AnyRef
  4. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new NMFactorization(x: MatriD, loops: Int = 10, r: Int = 0)

    x

    the matrix to be factored

    loops

    the number of iterations before checking the termination condition

    r

    factor the m-by-n matrix 'x' in to two factors: an m-by-r and r-by-n matrix

Value Members

  1. def factorReduce(): (MatrixD, MatrixD)

    Factor and reduce the original matrix 'x' into left 'w' and right 'h' matrices by iteratively calling the 'update' method until the difference between 'x' and its reduced approximation 'xr = w * h' is sufficiently small.

    Factor and reduce the original matrix 'x' into left 'w' and right 'h' matrices by iteratively calling the 'update' method until the difference between 'x' and its reduced approximation 'xr = w * h' is sufficiently small.

    Definition Classes
    NMFactorizationReducer
  2. var r: Int
  3. def recover(): MatriD

    Approximately recover the original matrix.

    Approximately recover the original matrix. The new matrix will have the same dimensionality, but will have some lose of information.

    Definition Classes
    NMFactorizationReducer
  4. def reduce(): MatriD

    Reduce the original data matrix by producing a lower dimensionality matrix that maintains most of the descriptive power of the original matrix.

    Reduce the original data matrix by producing a lower dimensionality matrix that maintains most of the descriptive power of the original matrix.

    Definition Classes
    NMFactorizationReducer