O'Reilly logo
live online training icon Live Online training

Introduction to TensorFlow 2.0

Learn the basics of machine learning and deep learning using TensorFlow 2.0

Dylan Bargteil

TensorFlow is a popular, open-source, machine learning software developed by Google’s Brain Team. TensorFlow boasts a collection of visualization tools and can run on multiple GPUs, CPUs, and mobile operating systems. This workshop will introduce participants to core concepts in machine learning and TensorFlow, with a focus on neural networks. Topics include building and launching graphs in TensorFlow, evaluating model performance, and managing overfitting. Students will also gain a deep understanding of how neural networks work, including more complex architectures such as convolutional neural networks and recurrent neural networks. During the course, students will engage in exercises that develop their ability to apply these concepts to build models suitable for classification and regression tasks using structured and unstructured data, such as tables, text, images, and time-series data as well as data of mixed structure and type.

What you'll learn-and how you can apply it

By the end of this live, hands-on, online course, you’ll understand:

  • What machine learning, neural networks, deep learning, and artificial intelligence are.
  • What TensorFlow is and what applications it is good for.
  • How to build predictive models using a mix of structured and unstructured data sets.
  • Where neural network architecture has been extended for more complex modeling.

And you’ll be able to:

  • Create statistical models for classification and regression using TensorFlow.
  • Evaluate the benefits and disadvantages of using TensorFlow over other machine learning software.
  • Document, save, share, and recreate models using TensorFlow’s Keras API.
  • Design model architectures that combine data sources and types for predictions in complex contexts.

This training course is for you because...

  • You are a software engineer or programmer with a background in Python, and you wish to develop a basic understanding of machine learning.
  • You have experience modeling or have a background in data science, and you would like to learn TensorFlow.
  • You are in a non-technical role, and you would like to more effectively communicate with the engineers and data scientists in your company about TensorFlow and neural networks.

Prerequisites

  • Experience with Python, including NumPy
  • Familiarity with matrices and linear algebra
  • Familiarity with machine learning

Recommended preparation:

  • Chapters 1 & 2 of Practical Statistics for Data Scientists (book)

Recommended follow-up:

  • Chapter 9 of TensorFlow for Deep Learning (book)

About your instructor

  • Dylan Bargteil studied physics and math at University of Maryland, and received a PhD in physics from New York University. At University of Maryland he was a research and teaching assistant developing new introductory physics curriculum and pedagogy in partnership with HHMI. Prior to joining The Data Incubator as a Data Scientist in Residence, he worked with deep learning models to assist surgical robots. At The Data Incubator he continues his research-guided curriculum development and instruction

Schedule

The timeframes are only estimates and may vary according to how the class is progressing

Intro to TensorFlow (40 minutes)

  • Lecture: Tensors and the computation graph
  • Exercise: Students will practice programming functions using TF’s computation graph to accomplish mathematical computations of increasing complexity
  • Break: 5 minutes
  • Lecture: Variable Tensors and Iterative Algorithms
  • Exercise: Newton’s method for root finding is an iterative optimization process. Students will implement this algorithm using TF’s automatic differentiation.
  • Q&A

Machine Learning (80 minutes)

  • Lecture: Overview of machine learning
  • Exercise: Students will implement their own version of gradient descent, the optimization algorithm used for fitting neural networks.
  • Break: 5 minutes
  • Lecture: Logistic regression and “neurons”
  • Exercise: Students will use what they’ve learned of supervised machine learning and gradient descent to fit a logistic regressor built in TF to classify flowers in the iris dataset.
  • Q&A

Neural Networks & Deep Learning (40 minutes)

  • Lecture: Basic neural networks
  • Exercise: Students will explore different neural network architectures to discover how changes in layer size and number of layers in a neural network impact how the network fits data.
  • Break: 5 minutes
  • Lecture: Keras and deep neural networks
  • Q&A

Advanced Architectures (80 minutes)

  • Lecture: Convolutional neural networks
  • Exercise: Students will use what they have learned about convolutions and pooling to create a convolutional neural network. They will train the network to classify images in the CalTech 101 dataset.
  • Break: 5 minutes
  • Lecture: Recurrent neural networks
  • Q&A