Book Image

Hands-On Machine Learning with TensorFlow.js

By : Kai Sasaki
Book Image

Hands-On Machine Learning with TensorFlow.js

By: Kai Sasaki

Overview of this book

TensorFlow.js is a framework that enables you to create performant machine learning (ML) applications that run smoothly in a web browser. With this book, you will learn how to use TensorFlow.js to implement various ML models through an example-based approach. Starting with the basics, you'll understand how ML models can be built on the web. Moving on, you will get to grips with the TensorFlow.js ecosystem to develop applications more efficiently. The book will then guide you through implementing ML techniques and algorithms such as regression, clustering, fast Fourier transform (FFT), and dimensionality reduction. You will later cover the Bellman equation to solve Markov decision process (MDP) problems and understand how it is related to reinforcement learning. Finally, you will explore techniques for deploying ML-based web applications and training models with TensorFlow Core. Throughout this ML book, you'll discover useful tips and tricks that will build on your knowledge. By the end of this book, you will be equipped with the skills you need to create your own web-based ML applications and fine-tune models to achieve high performance.
Table of Contents (17 chapters)
Free Chapter
1
Section 1: The Rationale of Machine Learning and the Usage of TensorFlow.js
5
Section 2: Real-World Applications of TensorFlow.js
12
Section 3: Productionizing Machine Learning Applications with TensorFlow.js

Learning how K-means works

Now, we are going to illustrate how K-means works. This algorithm is the most famous clustering algorithm to be created and is widely used, regardless of the field. It is popular in both industry and academia due to its simplicity and efficiency. The purpose of this algorithm is to allocate a specific group to each sample in the dataset. Concretely, the task is to partition N samples into K clusters, in which each sample belongs to the nearest mean of the cluster.

The clustering problem is NP-hard in principle. K-means optimizes the loss function iteratively and converges the local minimum quickly. This means that it tries to minimize the given loss function step by step. In that sense, K-means is very similar to the supervised learning algorithms we introduced previously. The biggest difference is that the loss function can be calculated without any...