8 releases (4 breaking)

0.6.1 Dec 3, 2022
0.6.0 Jun 15, 2022
0.5.1 Mar 1, 2022
0.5.0 Oct 21, 2021
0.2.1 Nov 29, 2020

#257 in Machine learning

Download history 70/week @ 2023-06-08 56/week @ 2023-06-15 76/week @ 2023-06-22 127/week @ 2023-06-29 97/week @ 2023-07-06 58/week @ 2023-07-13 125/week @ 2023-07-20 89/week @ 2023-07-27 96/week @ 2023-08-03 75/week @ 2023-08-10 104/week @ 2023-08-17 105/week @ 2023-08-24 49/week @ 2023-08-31 109/week @ 2023-09-07 78/week @ 2023-09-14 96/week @ 2023-09-21

352 downloads per month
Used in linfa-tsne

MIT/Apache

280KB
5K SLoC

Dimensional Reduction

linfa-reduction aims to provide pure Rust implementations of dimensional reduction algorithms.

The Big Picture

linfa-reduction is a crate in the linfa ecosystem, an effort to create a toolkit for classical Machine Learning implemented in pure Rust, akin to Python's scikit-learn.

Current state

linfa-reduction currently provides an implementation of the following dimensional reduction methods:

  • Diffusion Mapping
  • Principal Component Analysis (PCA)

Examples

There is an usage example in the examples/ directory. To run, use:

$ cargo run --release --example diffusion_map
$ cargo run --release --example pca

BLAS/LAPACK backend

See this section to enable an external BLAS/LAPACK backend.

License

Dual-licensed to be compatible with the Rust project.

Licensed under the Apache License, Version 2.0 http://www.apache.org/licenses/LICENSE-2.0 or the MIT license http://opensource.org/licenses/MIT, at your option. This file may not be copied, modified, or distributed except according to those terms.

Dependencies

~4–14MB
~225K SLoC