bugl
bugl
HomeLearnPatternsPathsSearchPremium
HomeLearnPatternsPaths
Learn/AI/Machine Learning
AI•Machine Learning

Machine Learning in JavaScript

Traditionally, Machine Learning applications are using R or Python.

But JavaScript has a great future as a Machine Learning language:

  • JavaScript is well known. All developers can use it.
  • Security is built in. JavaScript cannot access your files.
  • JavaScript is faster than Python.
  • JavaScript can use hardware acceleration.
  • JavaScript runs in the browser

JavaScript is Good for Machine Learning

Machine Learning can be math-heavy. The nature of neural networks is highly technical, and the jargon that goes along with it tends to scare people away.

This is where JavaScript comes to help, with easy to understand software to simplifying the process of creating and training neural networks.

With new Machine Learning libraries, JavaScript developers can add Machine Learning and Artificial Intelligence to web applications.

JavaScript Machine Learning Libraries

Machine Learning in the Browser means: Machine Learning in JavaScript Machine Learning for the Web Machine Learning for Everyone Machine Learning on more Platforms

  • Machine Learning in JavaScript
  • Machine Learning for the Web
  • Machine Learning for Everyone
  • Machine Learning on more Platforms

Advantages

  • Easy to use. Nothing to install.
  • Powerful graphics. Browsers support WebGL.
  • Better privacy. Data can stay on the client.
  • More platforms. JavaScript runs on mobile devices.

Brain.js

Brain.js is a JavaScript library that makes it easy to understand Neural Networks because it hides the complexity of the mathematics.

Brain.js is simple to use. You do not need to know neural networks in details to work with Brain.js.

Brain.js provides multiple neural network implementations as different neural nets can be trained to do different things well.

ml5.js

ml5.js is trying to make machine learning more accessible to a wider audience.

The ml5 team is working to wrap machine learning functionality in friendlier ways.

The example below uses only three lines of code to classify an image:

Runnable example

<img id="myImage" src="pic1.jpg" width="100%"> <script> const classifier =  ml5.imageClassifier('MobileNet');
classifier.classify(document.getElementById("myImage"), gotResult);
function gotResult(error, results) { ... }
</script>

Try substitute pic1.jpg with pic2.jpg, pic3.jpg and pic4.jpg.

TensorFlow

TensorFlow Playground is a web application written in d3.js .

With TensorFlow Playground you can learn about Neural Networks (NN) without math.

In your own Web Browser you can create a Neural Network and see the result.

TensorFlow.js was previously called Tf.js and Deeplearn.js.

Math in the Browser

Math.js is an extensive math library for JavaScript and Node.js.

Math.js is powerful and easy to use. It comes with a large set of built-in functions, a flexible expression parser, and solutions to work with many data types like numbers, big numbers, complex numbers, fractions, units, arrays, and matrices.

Plotting in the Browser

Here is a list of some JavaScript libraries to use for both Machine Learning graphs and other HTML charts:

  • HTML Canvas
  • Plotly.js
  • Chart.js
  • Google Chart
  • D3.js

WebGL API

WebGL is a JavaScript API for rendering 2d and 3D graphics in any browser.

WebGL can run on both integrated and standalone graphic cards in any PC.

WebGL brings 3D graphics to the web browser. Major browser vendors Apple (Safari), Google (Chrome), Microsoft (Edge), and Mozilla (Firefox) are members of the WebGL Working Group.

Previous

Machine Learning Languages

Next

Linear Graphs

This chapter

Overview
16

Lessons

69m

Read time

1. Machine Learning2. Artificial Intelligence3. Machine Learning Languages4. Machine Learning in JavaScript5. Linear Graphs6. Scatter Plots7. Perceptrons8. Pattern Recognition9. Testing a Perceptron10. Machine Learning11. ML Terminology12. Machine Learning Data13. Data Clusters14. Linear Regressions15. Deep Learning (DL)16. Brain.js

On this page

JavaScript is Good for Machine LearningJavaScript Machine Learning LibrariesBrain.jsml5.jsTensorFlowMath in the BrowserPlotting in the BrowserWebGL API