Deep Learning with JavaScript

Authors: Shanqing Cai, Stan Bileschi and Eric Nielsen
Publisher: Manning
Date: February 2020
Pages: 560
ISBN: 978-1617296178
Print: 1617296171
Audience: JavaScript Programmers
Rating: 5
Reviewer: Mike James
JavaScript doesn't seen a natural for AI but... is more suited than you might imagine. What makes it possible is that Tensorflow.js provides JavaScript access to the Tensorflow computational engine and this means JavaScript can be as efficient as Python. This book is aimed at readers who know somthing about JavaScript but less about Deep Learning.

Part One: Motivation and Basic Concepts, which consists of a single chapter, gets you started with TensorFlow.js by way of a small example - linear regression. Don't be fooled into thinking that linear regression is a deep learning technique, but it is a good, simple, way of getting started. What the book doesn't help with is getting things setup. You are assumed to have Tensorflow.js already working in a development environment of your choice. If you aren't up to this then you are going to struggle with even the simple stuff.


Another thing that you need to know is that this book doesn't limit itself to simple models because we are working in JavaScript. Despite its title, things ramp up fairly quickly in Part Two: A Gentle Introduction to TensorFlow.js. Working with convolutional nets is covered in Chapter 4 and the usually advanced topic of transfer learning is covered in Chapter 5.


Part 3: Advanced Deep Learning with TensorFlow.js consists of six chapters and occupies the bulk of the book. At first this is more about learning some of the characteristics of deep learning - data, visualization and the problem of over and under fitting. The final three chapters are on what most would consider advanced techniques including sequence learning, i.e. recurrent neural networks, generative netows and reinforcement learning. As these are big topics in their own right the treatment is practical and not deeply theoretical. 

Part 4: Summary and Closing Words  is just two chapters. The first is on testing, optimization and deployment. The second is a general discussion of where to go next.

This is essentially a hands on guide. It is fairly difficult to read if you aren't following along with the examples. Overall the descriptions of techniques are good, but sometimes you are going to be left wondering why some approach or other has been used in the exact form that it has - this is almost the nature of deep learning practice. Theory is a very general guide to practice in this case, but my preferred approach is to learn the theory in depth and then try to follow the logic of why things work in practice.This book is very much practice-led and, while this isn't my preferred way of learning something as technical as deep learning, it is very well done. If you are looking to master deep learning and you know JavaScript then this book comes highly recommended.

To keep up with our coverage of books for programmers, follow @bookwatchiprog on Twitter or subscribe to I Programmer's Books RSS feed for each day's new addition to Book Watch and for new reviews.


The Big Book of Small Python Projects

Author: Al Sweigart
Publisher: No Starch Press
Date: June 2021
Pages: 432
ISBN: 978-1718501249
Print: 1718501242
Kindle: B08FH9FV7M
Audience: Novice Python developers
Rating: 4
Reviewer: Lucy Black
A project book? A good way to learn Python?

Geometrical Vectors

Author: Gabriel Weinreich
Publisher: University of Chicago Press
Pages: 126
ISBN: 978-0226890487
Print: 0226890481
Kindle: B01EYG40HO
Audience: Mathematicians, physicists and engineers.
Rating: 5
Reviewer: Mike James
Geometrical Vectors - are there any other kind?

More Reviews




Last Updated ( Saturday, 16 July 2022 )