public interface MatrixFactorization
Matrix
into two sub
Matrix
s that are linked by some form of latent variable. Examples
of these decomposition algorithms are Singular Value Decomposition, Principal
Component Analysis, and Non-Negative Matrix Factorization.
Given a MatrixFactorization
algorithm, call factorize
with a
SparseMatrix
representing the data points and the desired number of
dimensions. The algorithm will then split the matrix into two smaller Matrix
s: a data point by latent variable Matrix
and a latent
variable by feature Matrix
. The interpretations of these matrices
differer for each algorithm, but in all cases, these can be used as reduced
representations of either the data points or the features. with a minimal
loss of information.Modifier and Type | Method and Description |
---|---|
Matrix |
classFeatures()
Returns the latent class by feature
Matrix . |
Matrix |
dataClasses()
Returns the data point by latent class
Matrix . |
void |
factorize(MatrixFile m,
int numDimensions)
Factorizes the
MatrixFile m . |
void |
factorize(SparseMatrix m,
int numDimensions)
Factorizes the
SparseMatrix m . |
MatrixBuilder |
getBuilder()
Returns a
MatrixBuilder that is optimized for MatrixFile s
that will be processed by this MatrixFactorization algorithm. |
MatrixBuilder getBuilder()
MatrixBuilder
that is optimized for MatrixFile
s
that will be processed by this MatrixFactorization
algorithm.void factorize(SparseMatrix m, int numDimensions)
SparseMatrix
m
. If m
is of size
MxN, this will generate two matrices: one of size MxnumDimensions
and one of size numDimensions
xN. This method must be called
before calling dataClasses
and classFeatures
.void factorize(MatrixFile m, int numDimensions)
MatrixFile
m
. If m
is of size
MxN, this will generate two matrices: one of size MxnumDimensions
and one of size numDimensions
xN. This method must be called
before calling dataClasses
and classFeatures
.Matrix dataClasses()
Matrix
. This matrix
represents the degree by which each data point can be explained by the
discovered latent classes. Actual interpretations of the latent classes
depends on the actual algorithm used. This Matrix
can be used as
a reduced representation of the data points themselves.Matrix classFeatures()
Copyright © 2012. All Rights Reserved.