Skip to content

online-ml/light-river

Repository files navigation

🦀 LightRiver • fast and simple online machine learning

bsd_3_license

Discord

LightRiver is an online machine learning library written in Rust. It is meant to be used in high-throughput environments, as well as TinyML systems.

This library is complementary to River. The latter provides a wide array of online methods, but is not ideal when it comes to performance. The idea is to take the algorithms that work best in River, and implement them in a way that is more performant. As such, LightRiver is not meant to be a general purpose library. It is meant to be a fast online machine learning library that provides a few algorithms that are known to work well in online settings. This is a akin to the way scikit-learn and LightGBM are complementary to each other.

🧑‍💻 Usage

🚨 Anomaly detection

cargo run --release --example credit_card

📈 Regression

🏗️ We plan to implement Aggregated Mondrian Forests.

📊 Classification

🏗️ We plan to implement Aggregated Mondrian Forests.

🛒 Recsys

🏗️ Vowpal Wabbit is very good at recsys via contextual bandits. We don't plan to compete with it. Eventually we want to research a tree-based contextual bandit.

🚀 Performance

TODO: add a benches directory

📝 License

LightRiver is free and open-source software licensed under the 3-clause BSD license.