TensorDec
Package for the decomposition of tensors and polynomial-exponential series.
Introduction
The package TensorDec.jl
provides tools for the following decomposition problems:
Symmetric tensor decomposition
For symmetric tensors or multivariate homogeneous polynomials $\sigma(\mathbf{x}) = \sum_{|\alpha|=d} \sigma_{\alpha} {d \choose \alpha} \mathbf{x}^{\alpha}$, we consider their Waring decomposition:
\[ \sigma(\mathbf{x}) = \sum_{i=1}^r \omega_i\, (\xi_{i,1} x_1+ \cdots + \xi_{i,n} x_n)^d\]
with r
minimal.
Multilinear tensor decomposition
For multilinear tensors, $\sigma=(\sigma_{i,j,k})\in E_1 \otimes E_2 \otimes E_3$ we consider the decomposition:
\[ \sigma = \sum_{i=1}^r \omega_i\, U_i^1 \otimes U_i^2 \otimes U_i^3\]
with $U_i^j \in E_j$ vectors and r
minimal.
Tutorials
- Decomposition algorithm
- Symmetric tensors
- Multilinear tensors
- Phylogenetic trees
- Best rank one approximation and optimization on the sphere
- Low rank approximation of symmetric tensors
- Decomposition of a mixture of spherical Gaussians
Manual
Installation
The package is available at https://github.com/AlgebraicGeometricModeling/TensorDec.jl.
To install it from Julia:
] add https://github.com/AlgebraicGeometricModeling/TensorDec.jl
It can then be used as follows:
using TensorDec
For more details, see the tutorials.
Dependencies
The package TensorDec
depends on the following packages:
LinearAlgebra
standard package for linear algebra.DynamicPolynomials
package on multivariate polynomials represented as lists of monomials.MultivariatePolynomials
generic interface package for multivariate polynomials.MultivariateSeries
for duality on multivariate polynomials.
These packages are installed with TensorDec
(see installation).