class SVDImputed extends SVDecomp
The SVDImputed
class is used to predict the missing values of an input matrix
by employing the concept of column mean imputation and then applying
Singular Value Decomposition to factor the matrix. Once the factors are obtained
the missing value in the matrix is obtained as the dot product of 'p' and 'q', where
p = u * sqrt(s) left orthogonal matrix * Singular Values Vector q = sqrt(s) * v.t singular values vector * transpose of right orthogonal matrix predict (i, j) = p dot q
- Alphabetic
- By Inheritance
- SVDImputed
- SVDecomp
- Factorization
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
Type Members
- type FactorType = (MatriD, VectoD, MatriD)
Factor type contains 'u, s, v' which are the left orthogonal matrix, the diagonal matrix/vector containing singular values and the right orthogonal matrix.
Factor type contains 'u, s, v' which are the left orthogonal matrix, the diagonal matrix/vector containing singular values and the right orthogonal matrix.
- Definition Classes
- SVDecomp
- type FactorTypeFull = (MatriD, MatriD, MatriD)
- Definition Classes
- SVDecomp
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native() @HotSpotIntrinsicCandidate()
- def conditionNum: Double
Compute the condition number of 'this' matrix, i.e., the ratio of the largest singular value to the smallest.
Compute the condition number of 'this' matrix, i.e., the ratio of the largest singular value to the smallest. Note, if not of full rank, it will be infinity.
- Definition Classes
- SVDecomp
- def denormalize(i: Int): Double
Create a row denormalized version of 'this' matrix and return the denormalized value of the row.
Create a row denormalized version of 'this' matrix and return the denormalized value of the row.
- i
the row id
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef → Any
- def factor(): SVDecomp
Factor/deflate the matrix by iteratively turning elements not in the main diagonal to zero.
Factor/deflate the matrix by iteratively turning elements not in the main diagonal to zero.
- Definition Classes
- SVDecomp → Factorization
- def factor1(): MatriD
Factor a matrix into the product of two matrices, e.g., 'a = l * l.t', returning only the first matrix.
Factor a matrix into the product of two matrices, e.g., 'a = l * l.t', returning only the first matrix.
- Definition Classes
- Factorization
- def factor12(): (MatriD, MatriD)
Factor a matrix into the product of two matrices, e.g., 'a = l * l.t' or a = q * r, returning both the first and second matrices.
Factor a matrix into the product of two matrices, e.g., 'a = l * l.t' or a = q * r, returning both the first and second matrices.
- Definition Classes
- Factorization
- def factor123(): FactorType
Factor/deflate the matrix by iteratively turning elements not in the main diagonal to zero.
Factor/deflate the matrix by iteratively turning elements not in the main diagonal to zero. Then return the vector of singular values (i.e., the main diagonal), along with the left and right singular matrices.
- Definition Classes
- SVDecomp
- def factor2(): MatriD
Factor a matrix into the product of two matrices, e.g., 'a = l * l.t', returning only the second matrix.
Factor a matrix into the product of two matrices, e.g., 'a = l * l.t', returning only the second matrix.
- Definition Classes
- Factorization
- val factored: Boolean
Flag indicating whether the matrix has been factored
Flag indicating whether the matrix has been factored
- Attributes
- protected
- Definition Classes
- Factorization
- def factors: (MatriD, MatriD)
Return the two factored matrices.
Return the two factored matrices.
- Definition Classes
- SVDecomp → Factorization
- def flip(u: MatriD, v: MatriD): Unit
Flip negative main diagonal elements in the singular vectors to positive.
Flip negative main diagonal elements in the singular vectors to positive.
- u
the left orthongonal matrix
- v
the right orthongonal matrix
- Definition Classes
- SVDecomp
- def flip(u: MatriD, s: VectoD): Unit
Flip negative singular values to positive and set singular values close to zero to zero.
Flip negative singular values to positive and set singular values close to zero to zero.
- u
the left orthongonal matrix
- s
the vector of singular values
- Definition Classes
- SVDecomp
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- def hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def normalize(ia: MatrixD): MatrixD
Create a row normalized version of 'this' matrix.
Create a row normalized version of 'this' matrix. For all values that are not 0 replace with self - row mean (mean calculation doesnot include 0s).
- ia
the column mean inputed matrix
- final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @HotSpotIntrinsicCandidate()
- var p: MatriD
- def predict(i: Int, j: Int): Double
Predict the final value for a missing value in the matrix.
Predict the final value for a missing value in the matrix.
- i
the row id
- j
the column id
- See also
Application of Dimensionality Reduction in Recommender System -- A Case Study
www.dtic.mil/get-tr-doc/pdf?AD=ADA439541
- var q: MatriD
- def reorder(ft: FactorType): Unit
Reorder the singular values to be in non-increasing order.
Reorder the singular values to be in non-increasing order. Must swap singular vectors in lock step with singular values. To minimize the number of swaps, selection sort is used.
- ft
the factored matrix (u, s, v)
- Definition Classes
- SVDecomp
- def solve(b: VectoD): VectoD
Solve for 'x' in 'a^t*a*x = b' using
SVD
.Solve for 'x' in 'a^t*a*x = b' using
SVD
.- b
the constant vector
- Definition Classes
- SVDecomp → Factorization
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
- Definition Classes
- AnyRef → Any
- def train(factors: FactorType): SVDImputed
Train the model to myield the 'p' and 'a' matices using the dataset.
Train the model to myield the 'p' and 'a' matices using the dataset.
- factors
the u, s and v from SVD factorization
- See also
Application of Dimensionality Reduction in Recommender System -- A Case Study
www.dtic.mil/get-tr-doc/pdf?AD=ADA439541
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
Deprecated Value Members
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable]) @Deprecated
- Deprecated