T3Toolbox#
A pure-Python (NumPy + optional JAX) library for Tucker tensor trains (T3). A Tucker tensor train is the composition of a Tucker decomposition with a tensor train decomposition of the central core. When the ranks are moderate, a T3 breaks the curse of dimensionality: storing a dense tensor costs O(N^d) memory, while the T3 representing it costs O(dnr^2 + dnN). Tucker tensor trains are also known as extended tensor trains (ETT).
The library provides the T3 format itself (arithmetic, orthogonalization, T3-SVD), the three
sampling operations (entries / apply / probe) and their derivatives, the fixed-rank
T3 manifold with tangent vectors and Riemannian geometry, least-squares fitting with four
optimizers, and a mask-based uniform (padded, GPU/jit-friendly) mirror of the whole stack.
Installation#
The package is pure Python. Dependencies:
pip install t3toolbox
To include the optional JAX backend:
pip install "t3toolbox[jax]"
From source (development install):
git clone https://github.com/NickAlger/T3Toolbox.git
cd T3Toolbox
pip install -e .
Websites#
GitHub: NickAlger/T3Toolbox
Documentation: https://nickalger.github.io/T3Toolbox/