O'Reilly logo
live online training icon Live Online training

Introduction to TensorFlow 2.0

enter image description here

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 (60 minutes)

  • Lecture: Machine learning and gradient descent
  • Lecture: Tensors and automatic differentiation
  • Exercise: Students will use tensors to compute statistical aggregates and use automatic differentiation to minimize functions
  • Lecture: Overview of TensorFlow API
  • Exercise: Students will extend the example of univariate linear regression in TensorFlow to a multivariate linear regression
  • Q&A
  • Break: 5 minutes

Computation Graphs (40 minutes)

  • Lecture: Optimizing computations with TensorFlow autograph
  • Exercise: Students will improve their linear regression class by using autograph to accelerate the fit method.
  • Lecture: Accelerators (GPUs/TPUs)
  • Q&A

Neural Networks (60 minutes)

  • Lecture: Logistic regression and neurons
  • Break: 5 minutes
  • Exercise: Students will extend a logistic regressor to perform multiclass classification
  • Lecture: Neural networks
  • Exercise: Students will experiment with the size of a hidden layer in a neural network designed for the XOR classification task
  • Q&A

Deep Learning (80 minutes)

  • Lecture: Keras API
  • Break: 5 minutes
  • Lecture: Stochastic gradient descent
  • Exercise: Students will use what they have learned about stochastic gradient and learning curves to perform hyperparameter tuning of a neural network
  • Lecture: Overfitting
  • Q&A