outbrain / fwumious_wabbit

Fwumious Wabbit, fast on-line machine learning toolkit written in Rust
Other
133 stars 19 forks source link
data-stream-mining deep-learning factorization-machines incremental-learning logistic-regression machine-learning online-learning rust

Fwumious Wabbit is

Rust-UbuntuLatest Rust-Ubuntu18 Gitter

Fwumious Wabbit is actively used in Outbrain for offline research, as well as for some production flows. It enables "high bandwidth research" when doing feature engineering, feature selection, hyperparameter tuning, and the like.

Data scientists can train hundreds of models over hundreds of millions of examples in a matter of hours on a single machine.

For our tested scenarios it is almost two orders of magnitude faster than the fastest Tensorflow implementation of Logistic Regression and FFMs that we could come up with. It is an order of magnitude faster than Vowpal Wabbit for some specific use-cases.

Check out our benchmark, here's a teaser:

benchmark results

Why is it faster? (see here for more details)

Weight patching

This repo also contains the patching algorithm that enables very fast weight diff computation see weight_patcher for more details.