3 unstable releases

0.1.1 Oct 11, 2020
0.1.0 Oct 6, 2019
0.0.1 Aug 19, 2019

#674 in Machine learning

MIT license

74KB
611 lines

Tinguely

crate documentation minimum rustc 1.46.0 maintenance pipeline status

Tinguely is a machine learning library implemented entirely in Rust. This library is still in early stages of development.

Features

Tinguely uses mathru for its linear algebra calculations and optimization algorithms. There is still lot of room for optimization, but BLAS/LAPACK support is already integrated.

Currently implemented algorithms:

  • Clustering
    • K-MEANS
  • Regression
    • Linear Regression
  • Classification
    • Logistic Regression

The models all provide predict and train methods enforced by the SupervisedLearn and UnsupervisedLearn traits.

Usage

Add this to your Cargo.toml for the native Rust implementation:

[dependencies.tinguely]
version = "0.1"

Add the following lines to 'Cargo.toml' if the openblas library should be used:

[dependencies.tinguely]
version = "0.1"
default-features = false
features = "openblas"

One of the following implementations for linear algebra can be activated as a feature:

  • native: Native Rust implementation(activated by default)
  • openblas: Optimized BLAS library
  • netlib: Collection of mathematical software, papers, and databases
  • intel-mkl: Intel Math Kernel Library
  • accelerate Make large-scale mathematical computations and image calculations, optimized for high performance and low-energy consumption.(macOS only)

Then import the modules and it is ready to be used.

use tinguely as tg;

Documentation

See project page for more information and examples. The API is documented on docs.rs.

License

Licensed under

Contribution

Any contribution is welcome!

Dependencies

~2–19MB
~250K SLoC