Udemy
    •  
    •  
    •  
    •  
    •  
    •  
    •  
    •  
Turn what you know into an opportunity and reach millions around the world.
Learn More
Your cart is empty.
Keep shopping
Machine Learning with Javascript
Rating: 4.7 out of 5(3,508 ratings)
32,595 students

Machine Learning with Javascript

Master Machine Learning from scratch using Javascript and TensorflowJS with hands-on projects.
Created byStephen Grider
Last updated 2/2026
English

What you'll learn

  • Assemble machine learning algorithms from scratch!
  • Build interesting applications using Javascript and ML techniques
  • Understand how ML works without relying on mysterious libraries
  • Optimize your algorithms with advanced performance and memory usage profiling
  • Use the low-level features of Tensorflow JS to supercharge your algorithms
  • Grow a strong intuition of ML best practices

Course content

15 sections186 lectures17h 40m total length
  • Getting Started - How to Get Help0:57

    Learn how to get help in this course via Udemy boards, Twitter, or email, with typical weekday response times and where to post questions in the discussion boards.

  • Course Resources0:38
  • Solving Machine Learning Problems6:04

    Explore a practical machine learning workflow from problem framing to data assembly. Relate rainfall to flood damage using features and labels, and build a data set for prediction.

  • A Complete Walkthrough9:53

    Form a data set with features and a label, then choose a regression or classification approach. Train a model to predict flood damage from rainfall.

  • App Setup2:01

    Start by cloning the starter pack from the repository, open the email kits/Blinco folder, and view the index.html to begin the first example and algorithm in this fun project.

  • Problem Outline2:53

    Model a plinko-like game with machine learning in Javascript, predicting which bucket a dropped ball will land in based on its drop position, using simple algorithms.

  • Identifying Relevant Data4:11

    Identify the data that predicts bucket outcomes by recording drop position, ball bounciness, and ball size, forming three features and one label before assembling the dataset.

  • Dataset Structures5:47

    Learn how to store data sets in JavaScript by using an array of objects or an array of arrays to record drop position, bounciness, ball size, and bucket.

  • Recording Observation Data3:59

    Record observations by creating an outputs array of arrays to capture drop position, bounciness, size, and bucket label on each score update, then inspect via the console.

  • What Type of Problem?4:35

    Explain how ball drop data collection forms a ten-bucket classification. Explain using the k nearest neighbors algorithm to predict the bucket.

Requirements

  • Basic understanding of terminal and command line usage
  • Ability to read basic math equations

Description

If you're here, you already know the truth: Machine Learning is the future of everything.

In the coming years, there won't be a single industry in the world untouched by Machine Learning.  A transformative force, you can either choose to understand it now, or lose out on a wave of incredible change.  You probably already use apps many times each day that rely upon Machine Learning techniques.  So why stay in the dark any longer?

There are many courses on Machine Learning already available.  I built this course to be the best introduction to the topic.  No subject is left untouched, and we never leave any area in the dark.  If you take this course, you will be prepared to enter and understand any sub-discipline in the world of Machine Learning.


A common question - Why Javascript?  I thought ML was all about Python and R?

The answer is simple - ML with Javascript is just plain easier to learn than with Python.  Although it is immensely popular, Python is an 'expressive' language, which is a code-word that means 'a confusing language'.  A single line of Python can contain a tremendous amount of functionality; this is great when you understand the language and the subject matter, but not so much when you're trying to learn a brand new topic.

Besides Javascript making ML easier to understand, it also opens new horizons for apps that you can build.  Rather than being limited to deploying Python code on the server for running your ML code, you can build single-page apps, or even browser extensions that run interesting algorithms, which can give you the possibility of developing a completely novel use case!


Does this course focus on algorithms, or math, or Tensorflow, or what?!?!

Let's be honest - the vast majority of ML courses available online dance around the confusing topics.  They encourage you to use pre-build algorithms and functions that do all the heavy lifting for you.  Although this can lead you to quick successes, in the end it will hamper your ability to understand ML.  You can only understand how to apply ML techniques if you understand the underlying algorithms.

That's the goal of this course - I want you to understand the exact math and programming techniques that are used in the most common ML algorithms.  Once you have this knowledge, you can easily pick up new algorithms on the fly, and build far more interesting projects and applications than other engineers who only understand how to hand data to a magic library.

Don't have a background in math?  That's OK! I take special care to make sure that no lecture gets too far into 'mathy' topics without giving a proper introduction to what is going on.


A short list of what you will learn:

  • Advanced memory profiling to enhance the performance of your algorithms

  • Build apps powered by the powerful Tensorflow JS library

  • Develop programs that work either in the browser or with Node JS

  • Write clean, easy to understand ML code, no one-name variables or confusing functions

  • Pick up the basics of Linear Algebra so you can dramatically speed up your code with matrix-based operations. (Don't worry, I'll make the math easy!)

  • Comprehend how to twist common algorithms to fit your unique use cases

  • Plot the results of your analysis using a custom-build graphing library

  • Learn performance-enhancing strategies that can be applied to any type of Javascript code

  • Data loading techniques, both in the browser and Node JS environments

Who this course is for:

  • Javascript developers interested in Machine Learning