Neural Networks
Consistent with deep learning trends, the Rust community has built several neural network libraries.
Taking a page from python’s scikit-learn project, rusty-machine is a major ML crate in the Rust ecosystem. It also powers Learning Machines, a set of interactive tutorials on machine learning, and this presentation provides a solid introduction.
Juice is a forked attempt to revive Leaf which was a deep learning framework that made a huge splash in the community before being orphaned.
And of course, there are Tensorflow bindings.
Other neural network libraries have been created but are often experimental. Some of the projects listed here appear to be inactive, but are still listed to serve as an inspiration for any future projects.
leaf [ crate · repo · docs ]
Machine Learning Framework for Hackers
tensorflow [ crate · repo · docs ]
Rust language bindings for TensorFlow.
rusty-machine [ crate · repo · docs ]
A machine learning library.
juice [ crate · repo · docs ]
Machine Learning Framework for Hackers
tch [ crate · repo · docs ]
Rust wrappers for the PyTorch C++ api (libtorch).
nn [ crate · repo · docs ]
A multilayer feedforward backpropagation neural network library
tedsta/deeplearn-rs [ repo · ]
Deep neural networks in Rust
hal-ml [ crate · repo · docs ]
HAL: a machine learning library that is able to run on Nvidia, OpenCL or CPU BLAS based compute backends. It currently provides stackable classical neural networks, RNN's and soon to be LSTM's. A differentiation of this package is that we are looking to implement RTRL (instead of just BPTT) for the recurrent layers in order to provide a solid framework for online learning. We will also (in the future) be implementing various layers such as unitary RNN's, NTM's and Adaptive Computation time based LSTM's. HAL also comes with the ability to plot and do many basic math operations on arrays.
torchrs/torchrs [ repo · ]
Torch.rs (torturous) is a set of Rust bindings for torch intended to provide an API very close to that of PyTorch.
alumina [ crate · repo · docs ]
An Experimental Deep Learning Library
rustml [ crate · repo · docs ]
A library for doing maching learning in Rust.
neuroflow [ crate · repo · docs ]
The neural network library implemented in Rust
prophet [ crate · repo · docs ]
A neural network implementation with a focus on cache-efficiency and sequential performance.
cntk [ crate · repo · docs ]
Wrapper around Microsoft CNTK library
tvm [ crate · repo · docs ]
TVM Rust runtime
fann [ crate · repo · docs ]
Wrapper for the Fast Artificial Neural Networks library
revonet [ crate · repo · docs ]
Rust implementation of real-coded genetic algorithm for solving optimization problems and training of neural networks. The latter is also known as neuroevolution.
Looking for something you didn't find? Try asking on IRC.
Are we learning yet?