10 releases (5 breaking)

0.7.1 Jan 14, 2025
0.7.0 Oct 16, 2023
0.6.1 Dec 3, 2022
0.6.0 Jun 15, 2022
0.2.1 Nov 29, 2020

#765 in Machine learning

Download history 34/week @ 2024-10-06 78/week @ 2024-10-13 64/week @ 2024-10-20 73/week @ 2024-10-27 81/week @ 2024-11-03 50/week @ 2024-11-10 103/week @ 2024-11-17 112/week @ 2024-11-24 107/week @ 2024-12-01 254/week @ 2024-12-08 233/week @ 2024-12-15 64/week @ 2024-12-22 29/week @ 2024-12-29 113/week @ 2025-01-05 313/week @ 2025-01-12 173/week @ 2025-01-19

635 downloads per month
Used in 2 crates

MIT/Apache

260KB
4.5K SLoC

Decision tree learning

linfa-trees provides methods for decision tree learning algorithms.

The Big Picture

linfa-trees 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.

Decision Trees (DTs) are a non-parametric supervised learning method used for classification and regression. The goal is to create a model that predicts the value of a target variable by learning simple decision rules inferred from the data features.

Current state

linfa-trees currently provides an implementation of single tree fitting

Examples

There is an example in the examples/ directory showing how to use decision trees. To run, use:

$ cargo run --release --example decision_tree

This generates the following tree:

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

~5MB
~101K SLoC