Skip to main content

Tensor train based machine learning estimator

Project description

ttml

Tensor train based machine learning estimator.

Uses existing machine learning estimators to initialize a tensor train decomposition on a particular feature space discretization. Then this tensor train is further optimized with Riemannian conjugate gradient descent.

This library also implements much functionality related to tensor trains, and Riemannian optimization of tensor trains. Finally there is some functionality for turning decision trees and forests into CP/tensor trains.

Installation

The ttml python package can be installed using pip by running

    pip install ttml

or by cloning this repository and running the following command in the root directory of this project:

    git clone git@github.com:RikVoorhaar/ttml.git
    pip install .

If you want to reproduce the experiments discussed in our paper, then first clone this repository. Then run the script datasets/download_datasets.py to download all relevant datasets from the UCI Machine Learning Repository. Then all figures and results can be reproduced by the scripts in the notebooks folder. To install all the dependencies for the scripts and tests, you can use the conda environment defined in environment.yml.

Documentation

The documentation for this project lives on ttml.readthedocs.io.

Credits

All code for this library has been written by Rik Voorhaar, in a joint project with Bart Vandereycken. This has been performed in the scope of a Swiss National Science Foundation grant.

This software is free to use and edit. When using this software for academic purposes, please cite the following preprint:

@article{
    title = {TTML: Tensor Trains for general supervised machine learning},
    journal = {arXiv:2202.XXXXX},
    author = {Vandereycken, Bart and Voorhaar, Rik},
    year = {2022}, 
}

All figures in the preprint have been produced using version 1.0 of this software.

Project details


Release history Release notifications | RSS feed

This version

1.0

Download files

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

Source Distribution

ttml-1.0.tar.gz (82.1 kB view details)

Uploaded Source

Built Distribution

ttml-1.0-py3-none-any.whl (97.1 kB view details)

Uploaded Python 3

File details

Details for the file ttml-1.0.tar.gz.

File metadata

  • Download URL: ttml-1.0.tar.gz
  • Upload date:
  • Size: 82.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.26.0 requests-toolbelt/0.9.1 urllib3/1.26.6 tqdm/4.62.3 importlib-metadata/4.6.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.8.10

File hashes

Hashes for ttml-1.0.tar.gz
Algorithm Hash digest
SHA256 3bbbc5e1afa17fef5f17a5a824f6950392b22394d2c356456fd621058fa11808
MD5 b5fd4bf3f1cbbceb84b3c70f13ebd835
BLAKE2b-256 c83034f07e8c3904d3d0a8d7fb38e09924a13216880492dd45155ca16fdc2321

See more details on using hashes here.

File details

Details for the file ttml-1.0-py3-none-any.whl.

File metadata

  • Download URL: ttml-1.0-py3-none-any.whl
  • Upload date:
  • Size: 97.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.26.0 requests-toolbelt/0.9.1 urllib3/1.26.6 tqdm/4.62.3 importlib-metadata/4.6.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.8.10

File hashes

Hashes for ttml-1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e53d1c6fb8a5a5755c5b05e4b7b1e86edf4f71547171a4880c98f85fd8720fe5
MD5 8ae6754a721456259db74a74db82fc90
BLAKE2b-256 c25e125e2e55ac39d85756710555768f5dde6cd20e143078d3e5a50c9dcc3514

See more details on using hashes here.

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