Doing machine learning with TensorFlow.js requires knowledge of a number of different domains, in particular: machine learning and neural networks, JavaScript, and either Node.JS or browser-based development. Depending on your background you may not be familiar with one or more of these areas. There are lots of great learning resources available on the web, this page will focus on a few resources to help bootstrap your knowledge of machine learning with neural networks.

## High Level Introduction

We recommend the following videos to get a high level introduction to deep learning and TensorFlow.js:

- But what is a Neural Network? by 3blue1brown
- Deep Learning in JS by Ashi Krishnan

## TensorFlow.js focused

These video resources focus on TensorFlow.js and are also focused on beginners to machine learning.

- TensorFlow.js by TensorFlow
- TensorFlow.js: Intelligence and Learning Series by Coding Train
- TensorFlow.js Deep Learning with JavaScript by Deeplizard

## Comprehensive Courses

These are comprehensive online courses that cover deep learning. Most courses use Python as the primary language of instruction. However the concepts do translate to using TensorFlow.js even if the syntax doesn’t.

- Machine Learning Crash Course by Google
- Deep Learning Specialization by Coursera

## Comprehensive Books

- Neural Networks and Deep Learning by Michael Nielsen
- Deep Learning with Python by Francois Chollet

## Math Concepts

Machine Learning is a math heavy discipline, and while it is not necessary to understand the math if you are just using machine learning models, if you plan to modify machine learning models or build new ones from scratch, familiarity with the underlying math concepts can be helpful. You don't have to learn all the math upfront, but rather can look up concepts you are unfamiliar with as you come across them.

- Essence of Linear Algebra by 3blue1brown
- Essence of Calculus by 3blue1brown
- Linear Algebra by Khan Academy
- Calculus by Khan Academy