hosvd-methods | R Documentation |
Higher-order SVD of a K-Tensor.
Write the K-Tensor as a (m-mode) product of a core Tensor
(possibly smaller modes) and K orthogonal factor matrices.
Truncations can be specified via ranks
(making them smaller than the original modes of the K-Tensor will
result in a truncation).
For the mathematical details on HOSVD, consult Lathauwer et. al. (2000).
hosvd(darr, ranks=NULL)
## S4 method for signature 'DelayedArray'
hosvd(darr, ranks)
darr |
Tensor with K modes |
ranks |
a vector of desired modes in the output core tensor,
default is |
This function is an extension of the hosvd
by DelayedArray.
A progress bar is included to help monitor operations on large tensors.
a list containing the following:
Z
core tensor with modes speficied by ranks
U
a list of orthogonal matrices, one for each mode
est
estimate of darr
after compression
fnorm_resid
the Frobenius norm of the error
fnorm(est-darr)
- if there was no truncation,
then this is on the order of mach_eps * fnorm.
The length of ranks
must match darr@num_modes
.
L. Lathauwer, B.Moor, J. Vanderwalle "A multilinear singular value decomposition". Journal of Matrix Analysis and Applications 2000.
tucker
library("DelayedRandomArray")
darr <- RandomUnifArray(c(3,4,5))
hosvd(darr, ranks=c(2,1,3))
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.