linfa

The linfa project provides a machine learning framework written in Rust.

github.com/rust-ml/linfa
linfa homepage screenshot

About linfa

linfa is a machine learning framework for building machine learning applications with Rust. Similar in spirit to Python's scikit-learn, it focuses on common preprocessing tasks and classical machine learning algorithms.

It provides sub-packages for supervised learning, clustering, dimensionality reduction, preprocessing, and partial-fit methods. By default it uses a pure-Rust implementation for linear algebra routines, with optional external BLAS/LAPACK backends and a wasm-bindgen feature for browser-style WASM on wasm32-unknown-unknown.

Key features

  • Supervised learning with Naive Bayes, logistic regression, SVMs and trees
  • Clustering via K-Means, DBSCAN, OPTICS, GMM and hierarchical methods
  • Preprocessing with normalization, count vectorization, TF-IDF and kernel mapping
  • Dimensionality reduction using PCA, t-SNE, diffusion mapping and random projections
  • Incremental model updates with FTRL and logistic regression partial fit
  • Optional external BLAS/LAPACK backends including OpenBLAS, Netlib and Intel MKL
Best for: Developers building classical machine learning applications in Rust.
Good for
  • Covers preprocessing, supervised learning, clustering and dimensionality reduction in Rust
  • Uses pure-Rust linear algebra by default with optional BLAS/LAPACK backends
  • Dual-licensed to be compatible with the Rust project
Watch out for
  • Logistic regression builds two-class models
  • OpenBLAS and Netlib backends are listed with Linux support only in the compatibility table

linfa at a glance

Type
Open-source project
Pricing
Not confirmed. Check the site
Open source
Yes · Source code
Language
English
Last checked
Oct 5, 2026 · Online when checked
Listed
Oct 5, 2026

linfa alternatives

Tools and sites you could use instead, ranked by how closely they match.

All 24 alternatives

Popular in AI Infrastructure & MLOps

Well-known listings from the same topic.

All 341

linfa FAQ

Can linfa use an external BLAS/LAPACK library?
Yes. By default it uses a pure-Rust implementation, but you can enable the blas feature and a backend feature for OpenBLAS, Netlib, or Intel MKL.
What kind of algorithms does linfa focus on?
Common preprocessing tasks and classical machine learning algorithms for everyday tasks, similar in spirit to scikit-learn.
What license covers linfa?
It is dual-licensed to be compatible with the Rust project, including the Apache License, Version 2.0.
Is something wrong or out of date?

Tell us and an editor will check it.

Own this website?

Claim the listing and suggest updates yourself. An editor checks every claim first.

Claim this listing