Skip to main content

Compact implementation of basic operations in the tensor-train (TT) format with jax framework for approximation, optimization and sampling with multidimensional arrays and multivariate functions

Project description

teneva_jax

Description

This python package, named teneva_jax (tensor evaluation with jax), provides a very compact implementation of basic operations in the low rank tensor-train (TT) format with jax framework for approximation, optimization and sampling with multidimensional arrays and multivariate functions. The program code is organized within a functional paradigm and it is very easy to learn and use. Each function has detailed documentation and various usage demos.

Please, see also our github repository teneva, which contains the basic ("numpy") version of the code.

Installation

Current version "0.1.1".

The package can be installed via pip: pip install teneva (it requires the Python programming language of the version >= 3.8). It can be also downloaded from the repository teneva_jax and installed by python setup.py install command from the root folder of the project.

Required python package "jax[cpu]" (0.4.6+) will be automatically installed during the installation of the main software product. However, it is recommended that you manually install it first.

Documentation, examples and tests

  • See detailed online documentation for a description of each function and various numerical examples for each function.
  • See the jupyter notebooks in the demo folder with brief description and demonstration of the capabilities of each function from the teneva_jax package. Note that all examples from this folder are also presented in the online documentation.

Authors

✭__🚂 The stars that you give to teneva_jax, motivate us to develop faster and add new interesting features to the code 😃

Citation

If you find our approach and/or code useful in your research, please consider citing:

@article{chertkov2023black,
    author    = {Chertkov, Andrei and Ryzhakov, Gleb and Oseledets, Ivan},
    year      = {2023},
    title     = {Black box approximation in the tensor train format initialized by ANOVA decomposition},
    journal   = {arXiv preprint arXiv:2208.03380 (accepted into the SIAM Journal on Scientific Computing)},
    doi       = {10.48550/ARXIV.2208.03380},
    url       = {https://arxiv.org/abs/2208.03380}
}
@article{chertkov2022optimization,
    author    = {Chertkov, Andrei and Ryzhakov, Gleb and Novikov, Georgii and Oseledets, Ivan},
    year      = {2022},
    title     = {Optimization of functions given in the tensor train format},
    journal   = {arXiv preprint arXiv:2209.14808},
    doi       = {10.48550/ARXIV.2209.14808},
    url       = {https://arxiv.org/abs/2209.14808}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

teneva_jax-0.1.1.tar.gz (73.8 kB view hashes)

Uploaded Source

Built Distribution

teneva_jax-0.1.1-py3-none-any.whl (19.7 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page