Machine Learning with TensorFlow
Nishant Shukla
  • MEAP began July 2016
  • Publication in Summer 2017 (estimated)
  • ISBN 9781617293870
  • 325 pages (estimated)
  • printed in black & white

We're living in a big data world. Being able to make near-real-time decisions becomes increasingly crucial. To succeed, we need machine learning systems that can turn massive amounts of data into valuable insights. But when you're just starting out in the data science field, how do you get started creating machine learning applications? The answer is TensorFlow, a new open source machine learning library from Google that they use in their own successful products like Search, Maps, YouTube, Translate, and Photos. The TensorFlow library can take your high level designs and turn them into the low level mathematical operations required by machine learning algorithms.

Machine Learning with TensorFlow teaches you machine learning algorithms and how to implement solutions with TensorFlow. You'll start with an overview of machine learning concepts. Next, you'll learn the essentials you'll need to begin using TensorFlow before moving on to specific machine learning problems and solutions. With lots of diagrams, code examples, and exercises, this tutorial teaches you cutting-edge machine learning algorithms and techniques to solve them. Each chapter zooms into a prominent example of machine learning, such as classification, regression, anomaly detection, clustering, and neural networks. Cover them all to master the basics, or cater to your needs by skipping around. By the end of this book, you'll be able to solve classification, clustering, regression, and prediction problems in the real world.

Table of Contents detailed table of contents

Part 1: My Machine Learning Rig

1. A machine-learning odyssey

1.1. Machine learning fundamentals

1.2. Data representation and features

1.3. Distance Metrics

1.4. Supervised Learning

1.5. Unsupervised Learning

1.6. Reinforcement Learning

1.7. Existing Tools

1.7.1. Theano

1.7.2. Caffe

1.7.3. Torch

1.7.4. Computational Graph Toolkit

1.8. TensorFlow

1.9. Summary

2. TensorFlow essentials

2.1. Ensuring TensorFlow works

2.2. Representing tensors

2.3. Creating operators

2.4. Executing operators with sessions

2.4.1. Understanding code as a graph

2.4.2. Session configurations

2.5. Writing code in Jupyter

2.6. Using variables

2.7. Saving and Loading Variables

2.8. Visualizing data using TensorBoard

2.9. Summary

Part 2: Core Learning Algorithms

3. Linear regression and beyond

3.1. Formal notation

3.1.1. How do you know the regression algorithm is working?

3.2. Linear Regression

3.3. Polynomial Model

3.4. Regularization

3.5. Available datasets

3.6. Summary

4. A gentle introduction to classification

4.1. Formal Notation

4.2. Measuring Performance

4.2.1. Accuracy

4.2.2. Precision and Recall

4.2.3. Receiver operating characteristic (ROC) curve

4.3. Using linear regression for classification

4.4. Using logistic regression

4.4.1. Solving one-dimensional logistic regression

4.4.2. Solving two-dimensional logistic regression

4.5. Multiclass classifier

4.5.1. One versus all

4.5.2. One versus one

4.5.3. Softmax regression

4.6. Summary

5. Automatically clustering data

5.1. Traversing files in TensorFlow

5.2. Extracting features from audio

5.3. K-means clustering

5.4. Audio segmentation

5.5. Clustering using a self-organizing map

5.6. Summary

6. Hidden Markov models

6.1. Example of a not-so-interpretable model

6.2. Markov Model

6.3. Hidden Markov Model

6.4. Forward algorithm

6.5. Viterbi decode

6.6. Uses of Hidden Markov Models

6.7. Summary

Part 3: The Neural Network Paradigm

7. A peek into autoencoders

7.1. Neural Networks

7.2. Autoencoder

7.3. Batch training

7.4. Working with images

7.5. Modern Autoencoders

7.6. Summary

8. Reinforcement learning

8.1. Real-world examples

8.2. Formal notions

8.2.1. Policy

8.2.2. Utility

8.3. Applying reinforcement learning

8.4. Implementation

8.5. Summary

9. Convolutional neural networks

9.1. Drawback of neural networks

9.2. Convolutional neural networks

9.3. Preparing the image

9.3.1. Generate filters

9.3.2. Convolve using filters

9.3.3. Max-pooling

9.4. Implementing a convolutional neural network in TensorFlow

9.4.1. Measuring performance

9.4.2. Training the classifier

9.5. Tips and tricks to improve performance

9.6. Summary

10. Recurrent neural networks


Appendix A: Software installation

A.1. Installing TensorFlow using Docker

A.1.1. Install Docker on Windows

A.1.2. Install Docker on Linux

A.1.3. Install Docker on OSX

A.1.4. How to user Docker

A.2. Installing Matplotlib

What's inside

  • Formulating machine learning frameworks for real-world problems
  • Understanding machine learning problems
  • Solving problems with TensorFlow
  • Visualizing algorithms with TensorBoards
  • Using well-studied neural network architectures
  • Reusing provided code for your own applications

About the reader

This book is for programmers who have some experience with Python and linear algebra concepts like vectors and matrices. No experience with machine learning is necessary.

About the author

Nishant Shukla is a computer vision researcher at UCLA, focusing on machine learning techniques with robotics. He has been a developer for Microsoft, Facebook, and Foursquare, and a machine learning engineer for SpaceX, as well as the author of the Haskell Data Analysis Cookbook.

Manning Early Access Program (MEAP) Read chapters as they are written, get the finished eBook as soon as it’s ready, and receive the pBook long before it's in bookstores.
MEAP combo $44.99 pBook + eBook
MEAP eBook $35.99 pdf + ePub + kindle

FREE domestic shipping on three or more pBooks