Skip to content

mvanaltvorst/extra-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Extremely randomized forests

This package written in Rust implements extremely randomized forests by Geurts et al. [1]. There are Python bindings available as well. How to use this library can be found in the examples.

The main goal of this project is to learn more about random forests and provide a fast multi-threaded implementation of extremely randomized forests. I hope to make use of SIMD instructions in the future to further improve throughput and decrease latency.

WIP

  • Implement extremely randomized tree and forest regressors in Rust
  • Python bindings using maturin and pyo3
  • Benchmarks
  • Documentation
  • SIMD
    • x86_64: AVX512
    • ARM: NEON
  • Feature importance

Installation

git clone https://github.com/mvanaltvorst/extra-rs.git
cd extra-rs
pip install maturin
maturin develop --release

Architecture

extra-rs contains the Rust library which implements extremely randomized forests from scratch, whereas extra-py is the Maturin project that exposes Python bindings.

[1] Geurts, P., Ernst, D. & Wehenkel, L. Extremely randomized trees. Mach Learn 63, 3–42 (2006). https://doi.org/10.1007/s10994-006-6226-1

About

Extremely randomised trees in Rust

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published