Chapter 14. Going Deeper – The Mechanics of TensorFlow

In Chapter 13, Parallelizing Neural Network Training with TensorFlow, we trained a multilayer perceptron to classify MNIST digits, using various aspects of the TensorFlow Python API. That was a great way to dive us straight into some hands-on experience with TensorFlow neural network training and machine learning.

In this chapter, we'll now shift our focus squarely on to TensorFlow itself, and explore in detail the impressive mechanics and features that TensorFlow offers:

  • Key features and advantages of TensorFlow
  • TensorFlow ranks and tensors
  • Understanding and working with TensorFlow graphs
  • Working with TensorFlow variables
  • TensorFlow operations with different scopes
  • Common tensor transformations: working with ranks, shapes, and types
  • Transforming tensors as multidimensional arrays
  • Saving and restoring a model in TensorFlow
  • Visualizing neural network graphs with TensorBoard

We'll stay hands-on in this chapter, of course, and implement graphs throughout the chapter to explore the main TensorFlow features and concepts. Along the way, we'll also revisit a regression model, explore neural network graph visualization with TensorBoard, and suggest some ways that you could explore visualizing more of the graphs that you'll make through this chapter.

Key features of TensorFlow

TensorFlow gives us a scalable, multiplatform programming interface for implementing and running machine learning algorithms. The TensorFlow API has been relatively stable and mature since its 1.0 release in 2017. There are other deep learning libraries available, but they are still very experimental by comparison.

A key feature of TensorFlow that we already noted in Chapter 13, Parallelizing Neural Network Training with TensorFlow, is its ability to work with single or multiple GPUs. This allows users to train machine learning models very efficiently on large-scale systems.

TensorFlow has strong growth drivers. Its development is funded and supported by Google, and so a large team of software engineers work on improvements continuously. TensorFlow also has strong support from open source developers, who avidly contribute and provide user feedback. This has made the TensorFlow library more useful to both academic researchers and developers in their industry. A further consequence of these factors is that TensorFlow has extensive documentation and tutorials to help new users.

Last but not least among these key features, TensorFlow supports mobile deployment, which makes it a very suitable tool for production.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset