This course is focused on using the flexibility and “ease of use” of TensorFlow 2.x and Keras to build, train, and deploy machine learning models. You will learn about the TensorFlow 2.x API hierarchy and will get to know the main components of TensorFlow through hands-on exercises. We will introduce you to working with datasets and feature columns. You will learn how to design and build a TensorFlow 2.x input data pipeline. You will get hands-on practice loading csv data, numPy arrays, text data, and images using tf.Data.Dataset. You will also get hands-on practice creating numeric, categorical, bucketized, and hashed feature columns.
We will introduce you to the Keras Sequential API and the Keras Functional API to show you how to create deep learning models. We’ll talk about activation functions, loss, and optimization. Our Jupyter Notebooks hands-on labs offer you the opportunity to build basic linear regression, basic logistic regression, and advanced logistic regression machine learning models. You will learn how to train, deploy, and productionalize machine learning models at scale with Cloud AI Platform.
Introduction to course
This course is an introduction to TensorFlow 2.x, which incorporates the ease of use of Keras for building machine learning models. This course covers designing and building a TensorFlow 2.x input data pipeline, building machine learning models with TensorFlow 2.x and Keras, improving the accuracy of machine learning models, and writing machine learning models for scaled use.
Introduction to TensorFlow
We will introduce you to the new paradigm of TensorFlow 2.x. You will learn about the the TensorFlow API hierarchy and will get to know the main components of TensorFlow, tensors and variables, through hands-on exercises.
Design and Build a TensorFlow Input Data Pipeline
We will introduce you to working with datasets and feature columns. You will get hands-on practice loading csv data, numPy arrays with tf.data.Dataset, text data, and load images using tf.data.Dataset. You will also get hands on practice creating numeric, categorical, bucketized, and hashed feature columns.
Training neural networks with Tensorflow 2 and the Keras Sequential API
In this module you will get introduced to writing TensorFlow models using the Keras Sequential API. But, before you jump right into writing the model, we will talk about activation functions, loss and optimization. You will then be introduced to the Keras Sequential API to learn how you can create deep learning models with it. You will also learn how to deploy the model for prediction in the cloud.
Training neural networks with Tensorflow 2 and the Keras Functional API
The Sequential model API is great for developing deep learning models in most situations, but it also has some limitations. One example is that it is not straightforward to define models that may have multiple different input sources, produce multiple output destinations or models that re-use layers. The Keras Functional API is a way to create models that are more flexible than the tf.keras.Sequential API. The functional API can handle models with non-linear topology, models with shared layers, and models with multiple inputs or outputs. The Keras Functional API provides a more flexible way for defining models. It specifically allows you to define multiple input or output models as well as models that share layers. More than that, it allows you to define ad hoc acyclic network graphs. The main idea that a deep learning model is usually a directed acyclic graph (DAG) of layers. So the Functional API is a way to build graphs of layers. Additionally, we will also talk about how regularization can help with model performance.
Here we summarize the TensorFlow topics we covered so far in this course. We'll revisit core TensorFlow code, the tf.data API, Keras Sequential and Functional APIs and end with scaling your machine learning models with Cloud AI Platform.