anabatsh / TT_pro

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

TT_pro

Description

Method PROTES (PRobability Optimizer with TEnsor Sampling) for optimization of the multidimensional arrays and discretized multivariable functions based on the tensor train (TT) format.


Attention! This is a repository for code development and testing. Please use the stable version of our optimizer from the protes repository (it can be installed as pip install protes).


Installation

  1. Install python (version 3.8; you may use anaconda package manager);

  2. Create a virtual environment:

    conda create --name tt_pro python=3.8 -y
  3. Activate the environment:

    conda activate tt_pro
  4. Install dependencies:

    pip install numpy scipy teneva==0.12.8 ttopt==0.5.0 jax optax equinox qubogen gekko nevergrad torch
  5. Clean temporary dir after runs:

    find /tmp -type d -maxdepth 1 -iname "*model*" -exec rm -fr {} \;
  6. Delete virtual environment at the end of the work (optional):

    conda activate && conda remove --name tt_pro --all -y

Usage

Please, see our colab notebook with various examples.

Authors

Citation

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

@article{batsheva2023protes,
    author    = {Batsheva, Anastasia and Chertkov, Andrei  and Ryzhakov, Gleb and Oseledets, Ivan},
    year      = {2023},
    title     = {PROTES: Probabilistic Optimization with Tensor Sampling},
    journal   = {arXiv preprint arXiv:2301.12162},
    url       = {https://arxiv.org/pdf/2301.12162.pdf}
}

About

License:MIT License


Languages

Language:Python 100.0%