Published in


Building Blocks of Raven Distribution Framework

Photo by Daniel Cheung on Unsplash

Raven Distribution Framework(RDF) is our suite of libraries to train machine learning/deep learning models in a decentralized and distributed manner. It can be used to perform statistical operations also. Most importantly, it facilitates the faster and cheaper training of ML/DL models on browser nodes. With RDF, we aim to build an ecosystem and accelerate the development of the fundamentals.

Let’s explore the libraries:

RavCom is a common library that contains various methods to interact with the databases like MySQL, Redis, PostgreSQL, and others. It is a common library used in most of our libraries.

Op is the fundamental unit of RDF. RavOp is our library to work with ops. You can create ops, interact with ops, and create scalars and tensors. RavOp is a crucial building block of the framework. It can be used to write various algorithms, formulas, and mathematical calculations.

RavSock is the second most crucial building block of the framework. It sits between the developer(who create ops and write algorithms) and the contributor who contribute the idle computing power. It facilitates the efficient distribution of ops and the efficient merging of results.

  • RavML — Machine Learning Library

RavML is the machine learning library based on RavOp. It contains implementations of various machine learning algorithms like ordinary least squares, linear regression, logistic regression, KNN, Kmeans, Mini batch Kmeans, Decision Tree classifier, and Naive Bayes classifier. These algorithms can be used out of the box. We are constantly working on new algorithms and looking for enthusiasts to contribute.

  • RavViz — Visualization Library

RavViz is the visualization library. While training models, it is crucial to understand how your model is doing. In RavViz, you can see:

  1. Progress of models
  2. Ops and their values
  3. Graphs and their ops

RavJS is the Javascript library to calculate various ops on the browser node. We support 100+ ops for now and constantly adding new ops. Currently, we are taking TensorflowJS’s help to calculate ops and very soon will be working on our own library.

  • Most of the ops are based on TensorflowJS because of its support for thousands of operations.

Inviting all AI/ML developers to contribute:

Visit our website:

Follow us on Twitter:

Join our community on Telegram:

Join Raven Dev Community on Discord:




Decentralized and Distributed Deep Learning

Recommended from Medium

How Facebook Enables Efficient A/B Testing of Machine Learning Models

Disruptive Machine Learning

What is Named Entity Recognition?

Automated model serving to mobile devices

3D Pose Estimation Datasets

How Datumix created a state of the art recommendation engine

Building a Brain Tumor Classification App

Confusion Matrix

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store
Kailash Ahirwar

Kailash Ahirwar

Co-founder - Mate Labs | Co-founder - Raven Protocol | Author - Generative Adversarial Networks Projects | Democratizing Artificial Intelligence

More from Medium

#SpotifyWrapped — using AI and ML is fun

Microsoft AI ML Workathon 2021 with Vision AI

Surveying scikit-learn usage — Part II: The (Un)reasonable Popularity of Random Forests

Run Tensorflow on Qarnot

Leaf over hardware