Brings machine learning into the browser

Google’s Deeplearn.js comes to the rescue of machine learning aficionados

Gabriela Motroc

© Shutterstock / Holmlund

Companies are racing to find programmers capable of coding for ML and deep learning but, as Googlers Nikhil Thorat and Daniel Smilkov point out, “the development of ML systems is often restricted to those with computational resources and the technical expertise to work with commonly available ML libraries.” Enter deeplearn.js, an open source JavaScript library for machine learning.

It’s a machine learning’s world! Kevlin Henney, independent consultant and trainer told JAXenter earlier this year that “machine learning is taking us in a new direction.” You may or may not agree with him but one thing’s sure: machine learning is here to stay and we’ve only scratched the surface.

Earlier this month, IBM released Watson Machine Learning for a general audience and, before that, Tensorflow brought machine learning to mobile devices. Stack Overflow did some digging and found that DevOps and machine learning specialists are the best paid so it goes without saying that those with machine learning skills hold the power — and the money.

Deeplearn.js brings machine learning into the browser

According to Googlers Nikhil Thorat and Daniel Smilkov, “the development of ML systems is often restricted to those with computational resources and the technical expertise to work with commonly available ML libraries.” Enter deeplearn.js, an open source WebGL-accelerated JavaScript library for machine learning. The best part is that this library runs entirely in your browser, so there are no installations and no backend.

Thorat and  Smilkov, both software engineers in the Big Picture team at Google revealed in a blog post announcing deeplearn.js 0.1.0 that “a client-side ML library can be a platform for interactive explanations, for rapid prototyping and visualization, and even for offline computation. And if nothing else, the browser is one of the world’s most popular programming platforms.”

Web machine learning libraries are hardly a novelty but one of the biggest disadvantages is that they have been either limited by the speed of Javascript or restricted to inference. Enter deeplearn.js — a library which “offers a significant speedup by exploiting WebGL to perform computations on the GPU, along with the ability to do full backpropagation.”

SEE ALSO: Top 5 machine learning libraries for Java

The software engineers explained that the API imitates the structure of TensorFlow and NumPy, with a delayed execution model for training (like TensorFlow), and an immediate execution model for inference (like NumPy).

We have also implemented versions of some of the most commonly-used TensorFlow operations. With the release of deeplearn.js, we will be providing tools to export weights from TensorFlow checkpoints, which will allow authors to import them into web pages for deeplearn.js inference.

If you’d like to see what this library can do, you’ll be happy to learn that you can train a convolutional neural network to recognize photos and handwritten digits. The best part? Everything is done in the comfort of your browser without writing a single line of code.

The library can be used for everything from education, to model understanding, to art projects. Head on over to the deeplearn.js website to look at the demos that show this library in action. 



Gabriela Motroc
Gabriela Motroc was editor of and JAX Magazine. Before working at Software & Support Media Group, she studied International Communication Management at the Hague University of Applied Sciences.

Inline Feedbacks
View all comments