Machine Learning in Rust
Depending on the needs of the developers, different machine learning open source libraries have been developed that provide access to a wide variety of algorithms. These libraries, though mostly expose their public apis over Python while the cores are built in C or C++. Thus there is a dissonance between the users and the developers of these algorithms. Additionally, developers are increasingly limited to only the abstractions that these libraries provide. It is time that we are able to easily create our own abstractions and we already have the tools to build them.
Rust as a highly expressive language has the potential to narrow the gap between data scientists and data engineers
and a core machine learning engineers capable of creating these libraries. There are already good machine learning libraries (or crates as they are called) in the Rust sphere.
Outline/Structure of the Workshop
In this workshop, we will go with
* Creating libraries (or crates) in Rust - 10 mins
* Data Engineering in Rust [You dont need to learn pandas] - 10 mins
* Create a simple image classifier in Rust using pytorch - 15 mins
* Creating a simple ML web api in Rust. (Optional) - 5 mins
* Questions from the audience - 5 mins
Learning Outcome
* Basic Rust programming
* Thinking in Rust patterns
* Creating machine learning packages for production usage.
Target Audience
This talk is for audience of all levels (beginner, intermediate, Expert)
Prerequisites for Attendees
Interest in machine learning and Rust.
Links
This talk is inspired by one blog and one listing the latest packages for ML and my own work in an upcoming book on the same topic.
http://www.arewelearningyet.com/
https://ehsanmkermani.com/2019/05/13/state-of-machine-learning-in-rust/
Public Feedback