Machine Learning with TensorFlow
Nishant Shukla
with Kenneth Fricklas
  • January 2018
  • ISBN 9781617293870
  • 272 pages
  • printed in black & white

A great guide to machine learning. It helped launch my third career!

William Wheeler, TEKsystems

Machine Learning with TensorFlow gives readers a solid foundation in machine-learning concepts plus hands-on experience coding TensorFlow with Python.

Table of Contents detailed table of contents

Part 1: My Machine Learning Rig

1. A machine-learning odyssey

1.1. Machine learning fundamentals

1.1.1. Parameters

1.1.2. Learning and inference

1.2. Data representation and features

1.3. Distance Metrics

1.4. Types of Learning

1.4.1. Supervised Learning

1.4.2. Unsupervised Learning

1.4.3. Reinforcement Learning

1.5. TensorFlow

1.6. Overview of future chapters

1.7. 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.8.1. Implementing a moving average

2.8.2. Visualizing the moving average

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. Application of linear regression

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 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. Application of classification

4.7. 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. Application of clustering

5.7. 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.6.1. Modeling a video

6.6.2. Modeling DNA

6.6.3. Modeling an image

6.7. Application of hidden Markov models

6.8. 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. Application of autoencoders

7.6. Summary

8. Reinforcement learning

8.1. Formal notions

8.1.1. Policy

8.1.2. Utility

8.2. Applying reinforcement learning

8.3. Implementation

8.4. Applications of reinforcement learning

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. Application of convolutional neural networks

9.7. Summary

10. Recurrent neural networks

10.1. Contextual information

10.2. Introduction to recurrent neural networks

10.3. Implementing a recurrent neural network

10.4. A predictive model for timeseries data

10.5. Application of recurrent neural networks

10.6. Summary

11. Sequence-to-sequence models for chatbots

11.1. Building on Classification and RNNs

11.2. Seq-to-seq architecture

11.3. Vector representation of symbols

11.4. Putting it all together

11.5. Gathering dialogue data

11.6. Summary

12. Utility landscape

12.1. Preference model

12.2. Image embedding

12.3. Ranking images

12.4. Summary

12.5. What’s next?

Appendixes

Appendix A: 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

About the Technology

TensorFlow, Google's library for large-scale machine learning, simplifies often-complex computations by representing them as graphs and efficiently mapping parts of the graphs to machines in a cluster or to the processors of a single machine.

About the book

Machine Learning with TensorFlow gives readers a solid foundation in machine-learning concepts plus hands-on experience coding TensorFlow with Python. You'll learn the basics by working with classic prediction, classification, and clustering algorithms. Then, you'll move on to the money chapters: exploration of deep-learning concepts like autoencoders, recurrent neural networks, and reinforcement learning. Digest this book and you will be ready to use TensorFlow for machine-learning and deep-learning applications of your own.

What's inside

  • Matching your tasks to the right machine-learning and deep-learning approaches
  • Visualizing algorithms with TensorBoard
  • Understanding and using neural networks

About the reader

Written for developers experienced with Python and algebraic concepts like vectors and matrices.

About the authors

Author Nishant Shukla is a computer vision researcher focused on applying machine-learning techniques in robotics.

Senior technical editor, Kenneth Fricklas, is a seasoned developer, author, and machine-learning practitioner.


FREE domestic shipping on three or more pBooks

The many examples provide excellent hands-on experience.

Mikael Dautrey, ISITIX

Helped me to jump-start working with TensorFlow.

Ursin Stauss, Swiss Post

Learn how to use TensorFlow to power your machine-learning projects with this fast-paced yet unintimidating book!

Arthur Zubarev, SERMO