Title: | CUR/CX Tensor Decomposition |
---|---|
Description: | CUR/CX decomposition factorizes a matrix into two factor matrices and Multidimensional CX Decomposition factorizes a tensor into a core tensor and some factor matrices. See the reference section of GitHub README.md <https://github.com/rikenbit/ccTensor>, for details of the methods. |
Authors: | Koki Tsuyuzaki [aut, cre], Itoshi Nikaido [aut] |
Maintainer: | Koki Tsuyuzaki <[email protected]> |
License: | MIT + file LICENSE |
Version: | 1.0.2 |
Built: | 2025-02-09 05:00:29 UTC |
Source: | https://github.com/rikenbit/cctensor |
CUR/CX decomposition factorizes a matrix into two factor matrices and Multidimensional CX Decomposition factorizes a tensor into a core tensor and some factor matrices. See the reference section of GitHub README.md <https://github.com/rikenbit/ccTensor>, for details of the methods.
The DESCRIPTION file:
Package: | ccTensor |
Type: | Package |
Title: | CUR/CX Tensor Decomposition |
Version: | 1.0.2 |
Date: | 2021-08-02 |
Authors@R: | c(person("Koki", "Tsuyuzaki", role = c("aut", "cre"), email = "[email protected]"), person("Itoshi", "Nikaido", role = "aut")) |
Depends: | R (>= 4.1.0) |
Imports: | methods, fields, MASS, igraph, rTensor |
Suggests: | testthat, nnTensor |
Description: | CUR/CX decomposition factorizes a matrix into two factor matrices and Multidimensional CX Decomposition factorizes a tensor into a core tensor and some factor matrices. See the reference section of GitHub README.md <https://github.com/rikenbit/ccTensor>, for details of the methods. |
License: | MIT + file LICENSE |
URL: | https://github.com/rikenbit/ccTensor |
Config/pak/sysreqs: | libglpk-dev libxml2-dev |
Repository: | https://rikenbit.r-universe.dev |
RemoteUrl: | https://github.com/rikenbit/cctensor |
RemoteRef: | HEAD |
RemoteSha: | b4d01ef0fd476ad32ec76732cdac70754f61d809 |
Author: | Koki Tsuyuzaki [aut, cre], Itoshi Nikaido [aut] |
Maintainer: | Koki Tsuyuzaki <[email protected]> |
Index of help topics:
CUR CUR Matrix Decomposition CX CX Matrix Decomposition MultiCX MultiCX Tensor Decomposition ccTensor-package CUR/CX Tensor Decomposition
Koki Tsuyuzaki [aut, cre], Itoshi Nikaido [aut]
Maintainer: Koki Tsuyuzaki <[email protected]>
Michael W. Mahoney, et. al., (2009). CUR matrix decompositions for improved data analysis. PNAS
Petros Drineas et.al., (2008). Relative-error CUR Matrix Decompositions. SIAM J. Matrix Anal. Appl.
Maria F. K. B. et. al. (2019). Multidimensional CX Decomposition of Tensors. WCNPS
ls("package:ccTensor")
ls("package:ccTensor")
The input data is assumed to be a matrix. CUR decomposes the matrix to three low-dimensional factor matices. C and R are not estimated values but the actual column and row vectors sampled from the matrix.
CUR(A, c.rank=NULL, r.rank=NULL, thr=0.9, c.method=c("best.match", "random", "exact.num.random", "top.scores"), u.method=c("invCR", "invW"), r.method=c("best.match", "random", "exact.num.random", "top.scores"))
CUR(A, c.rank=NULL, r.rank=NULL, thr=0.9, c.method=c("best.match", "random", "exact.num.random", "top.scores"), u.method=c("invCR", "invW"), r.method=c("best.match", "random", "exact.num.random", "top.scores"))
A |
The input matrix which has N-rows and M-columns. |
c.rank |
The number of low-dimension of C (J1 < N,M). If this argument is not specified or specified as NULL, the low-dimension is estimated based on the cumulative singular value (Default: NULL). |
r.rank |
The number of low-dimension of R (J2 < N,M). If this argument is not specified or specified as NULL, the low-dimension is estimated based on the cumulative singular value (Default: NULL). |
thr |
The threshold to determine the low-dimension J1 and J2. The value must be range 0 to 1 (Default: 0.9). |
c.method |
The column sampling algorithm (Default: best.match). |
u.method |
The algorithm to calculate U (Default: invCR). |
r.method |
The row sampling algorithm (Default: best.match). |
C: A N-rows and J1-columns matrix contains the sampled column vectors from the input matrix A. U: A J1-rows and J2-columns matrix. R: A J2-rows and M-columns matrix contains the sampled row vectors from the input matrix A. indC: The sampled column indices. indC: The sampled row indices. RecError : The reconstruction error between data matrix and reconstructed matrix from C and X.
Koki Tsuyuzaki
Michael W. Mahoney, et. al., (2009). CUR matrix decompositions for improved data analysis. PNAS
library("ccTensor") library("nnTensor") # Test data matdata <- toyModel(model = "NMF") # Simple usage out <- CUR(matdata, c.rank=3, r.rank=4)
library("ccTensor") library("nnTensor") # Test data matdata <- toyModel(model = "NMF") # Simple usage out <- CUR(matdata, c.rank=3, r.rank=4)
The input data is assumed to be a matrix. CX decomposes the matrix to two low-dimensional factor matices. C is not an estimated values but the actual column vectors sampled from the matrix.
CX(A, rank=NULL, thr=0.9, c.method=c("best.match", "random", "exact.num.random", "top.scores"))
CX(A, rank=NULL, thr=0.9, c.method=c("best.match", "random", "exact.num.random", "top.scores"))
A |
The input matrix which has N-rows and M-columns. |
rank |
The number of low-dimension (J < N,M). If this argument is not specified or specified as NULL, the low-dimension is estimated based on the cumulative singular value (Default: NULL). |
thr |
The threshold to determine the low-dimension J. The value must be range 0 to 1 (Default: 0.9). |
c.method |
The column sampling algorithm (Default: best.match). |
C: A N-rows and J-columns matrix contains the sampled column vectors from the input matrix A. X: A J-rows and M-columns matrix. indC: The sampled column indices. RecError : The reconstruction error between data matrix and reconstructed matrix from C and X.
Koki Tsuyuzaki
Petros Drineas et.al., (2008). Relative-error CUR Matrix Decompositions. SIAM J. Matrix Anal. Appl.
library("ccTensor") library("nnTensor") # Test data matdata <- toyModel(model = "NMF") # Simple usage out <- CX(matdata, rank=5)
library("ccTensor") library("nnTensor") # Test data matdata <- toyModel(model = "NMF") # Simple usage out <- CX(matdata, rank=5)
The input data is assumed to be a tensor. MultiCX decomposes the tensor into a core tensor and some factor matrices. The factor matrices are not estimated values but the actual column vectors sampled from the unfolded matrix in each mode.
MultiCX(Y, rank=NULL, modes=1:3, thr=0.9, c.method=c("best.match", "random", "exact.num.random", "top.scores"))
MultiCX(Y, rank=NULL, modes=1:3, thr=0.9, c.method=c("best.match", "random", "exact.num.random", "top.scores"))
Y |
The input tensor (e.g. N times M times L). |
rank |
The number of low-dimension of factor matrices (e.g. J1, J2, and J3). If this argument is not specified or specified as NULL, the low-dimension is estimated based on the cumulative singular value (Default: NULL). |
modes |
The vector of the modes on whih to perform the decomposition (Default: 1:3 <all modes>). |
thr |
The threshold to determine the low-dimension of factor matrices. The value must be range 0 to 1 (Default: 0.9). |
c.method |
The column sampling algorithm (Default: best.match). |
U: Core tensor (e.g. J1 times J2 times J3). C: Factor matrices (e.g. C_1: ????????) RecError : The reconstruction error between data tensor and reconstructed tensor from C and X.
Koki Tsuyuzaki
Maria F. K. B. et. al. (2019). Multidimensional CX Decomposition of Tensors. WCNPS
library("ccTensor") library("nnTensor") # Test data tensdata <- toyModel(model = "CP") # Simple usage out <- MultiCX(tensdata, rank=c(3,4,5))
library("ccTensor") library("nnTensor") # Test data tensdata <- toyModel(model = "CP") # Simple usage out <- MultiCX(tensdata, rank=c(3,4,5))