TensorFlow: Data and Deployment Specialization

  • 4 courses
  • Intermediate
  • >
    4 months (3 hours/week)
  • >
    Laurence Moroney

What you will learn

Run models in your browser using TensorFlow.js

Prepare and deploy models on mobile devices using TensorFlow Lite

Access, organize, and process training data more easily using TensorFlow Data Services

Explore four advanced deployment scenarios using TensorFlow Serving, TensorFlow Hub, and TensorBoard

Skills you will gain

  • Machine Learning
  • Tensorflow
  • Advanced Deployment
  • Object Detection
  • JavaScript
  • Convolutional Neural Network
  • Tensorflow.js
  • Tensorflow Lite
  • Mathematical Optimization
  • Extraction, Transformation And Loading (ETL)
  • Data Pipelines

Continue developing your skills in TensorFlow as you learn to navigate through a wide range of deployment scenarios and discover new ways to use data more effectively when training your machine learning models.

In this four-course Specialization, you’ll learn how to get your machine learning models into the hands of real people on all kinds of devices. Start by understanding how to train and run machine learning models in browsers and in mobile applications. Learn how to leverage built-in datasets with just a few lines of code, learn about data pipelines with TensorFlow data services, use APIs to control data splitting, process all types of unstructured data and retrain deployed models with user data while maintaining data privacy. Apply your knowledge in various deployment scenarios and get introduced to TensorFlow Serving, TensorFlow, Hub, TensorBoard, and more.


Syllabus

Course 1: Browser-based Models with TensorFlow.js

You may think that machine learning models can only be trained with supercomputers and big data. This first course shows you how you can train and run machine learning models in any browser using TensorFlow.js. You’ll learn techniques for handling data in the browser, and at the end you’ll build a computer vision project that recognizes and classifies objects from a webcam.

Enroll

Week 1: Training and Inference Using Javascript

  • Introduction: A conversation with Andrew Ng
  • Starting the code
  • Training
  • First example in code
  • Using an imported dataset for a multi-class classifier
  • Looking at the data
  • One hot encoding
  • Designing the neural network
  • Iris classifier in code

Week 2: Running Inference on Models in the Browser

  • Introduction: A conversation with Andrew Ng
  • Creating a convolutional net with JavaScript
  • Visualization of the training
  • What is a sprite sheet?
  • Looking deeper into the code
  • Handwriting classifier in code

Week 3: Running Models in a Browser

  • Introduction: A conversation with Andrew Ng
  • Text-based models
  • Toxicity classifier in code
  • MobileNet
  • Using a pre-trained MobileNet
  • Converting to JavaScript

Week 4: Rock Paper Scissors

  • Introduction: A conversation with Andrew Ng
  • Transfer learning
  • Building a simple web page
  • Retraining the MobileNet model
  • Training function
  • Code to capturing the data
  • The dataset class
  • Training the network
  • Rock paper scissors in code

Course 2: Device-based Models with TensorFlow Lite

You know how to build models in TensorFlow, but how do you get it into the hands of real people? This second course teaches you how to run your machine learning models in mobile applications. You’ll learn how to prepare models for a lower-powered, battery-operated devices, then execute models on both Android and iOS platforms. Finally, you’ll explore how to deploy on embedded systems using TensorFlow on Raspberry Pi and microcontrollers.

Enroll

Week 1: Device-based Models with TensorFlow Lite

  • Introduction: A conversation with Andrew Ng
  • Features and components of mobile AI
  • Architecture and performance
  • Optimization techniques
  • Saving, converting, and optimizing a model
  • Quantization
  • TF-Select
  • Paths in optimization
  • Running the models
  • Transfer learning
  • Converting a model to TF Lite
  • Transfer learning with TF Lite

Week 2: Running a TensorFlow Model in an Android App

  • Introduction: A conversation with Andrew Ng
  • Installation and resources
  • Architecture of a model
  • Preparing the input
  • Inference and results
  • Run the app
  • Classifying camera images
  • Initialize and prepare the input
  • Demo of a camera image classifier
  • Demo of the object detection app

Week 3: Building the TensorFlow Model on iOS

  • Introduction: A conversation with Andrew Ng
  • What is Swift?
  • TensorFlow Lite Swift
  • Cats vs. dogs app
  • Scaling the image
  • Looking at the app in Xcode
  • App architecture
  • Model details
  • Looking at the code for the image classification app
  • Object classification intro
  • TF Lite detect app
  • Looking at the code for the object detection model

Week 4: TensorFlow Lite on Devices

  • Introduction: A conversation with Andrew Ng
  • Devices
  • Starting to work on a Raspberry Pi
  • Image classification
  • The four-step process
  • Object detection
  • Raspberry Pi demo
  • Microcontrollers

Course 3: Data Pipelines with TensorFlow Data Services

In this third course, you will: Perform efficient ETL tasks using Tensorflow Data Services APIs; Construct train/validation/test splits of any dataset – either custom or present in TensorFlow Hub Dataset library – using Splits API; Use different modules and functions of the TFDS API to prepare your data for training pipelines; Identify bottlenecks in your input pipelines and increase your workflow efficiency by input parallelization.

Enroll

Week 1: Data Pipelines with TensorFlow Data Services

  • A Conversation with Andrew Ng
  • Popular Datasets
  • Data Pipelines
  • Extract, Transform, and Load
  • Versioning Datasets
  • Looking at the Notebook
  • Try Out the Notebook Yourself
  • Using TFDS in Keras to Train Fashion MNIST
  • Horses or Humans in TFDS
  • Try the Horses or Human Notebook

Week 2: Splits and Slices API for Datasets in TensorFlow

  • Introduction to Splits API
  • Splits API Notebook Walkthrough
  • File Structure in TensorFlow Datasets
  • Feature Descriptors
  • TFRecord Colab Walkthrough

Week 3: Exporting your Data into the Training Pipeline

  • A Conversation with Andrew Ng
  • Input Data
  • Basic Mechanics
  • Numeric and Bucketized Columns
  • Vocabulary and Hashed Columns, Feature Crossing
  • Embedding Columns
  • Notebook Walkthrough
  • Loading Data Present Outside TFDS using Numpy, Pandas,
  • Image Data
  • CSV Data
  • Text Data and TFRecords
  • Generators

Week 4: Performance

  • Notebook walkthrough
  • A Conversation with Andrew Ng
  • ETL
  • What Happens When You Train a Model
  • Caching
  • Parallelism APIs
  • Autotuning
  • Parallelizing Data Extraction
  • Best Practices for Code Improvements
  • A Few Words by Laurence

Course 4: Advanced Deployment Scenarios with TensorFlow

In this final course, you’ll explore four different scenarios you’ll encounter when deploying models. You’ll be introduced to TensorFlow Serving, a technology that lets you do inference over the web. You’ll move on to TensorFlow Hub, a repository of models that you can use for transfer learning. Then you’ll use TensorBoard to evaluate and understand how your models work, as well as share your model metadata with others. Finally, you’ll explore federated learning and how you can retrain deployed models with user data while maintaining data privacy.

Enroll

Week 1: TensorFlow Extended

  • Introduction: A conversation with Andrew Ng
  • Serving
  • Installing TF Serving
  • Setup for serving
  • Predictions
  • Passing data to serving
  • Getting the predictions back
  • Running the colab
  • Complex model

Week 2: Sharing pre-trained models with TensorFlow Hub

  • Introduction: A conversation with Andrew Ng
  • Introduction to TF Hub
  • Transfer Learning
  • Inference
  • Module Storage
  • Text-based models
  • Word embeddings
  • Experimenting with embeddings
  • Classify cats and dogs
  • Transfer learning

Week 3: Tensorboard: tools for model training

  • Introduction: A conversation with Andrew Ng
  • Tensorboard scalars
  • Callbacks
  • Histograms
  • Publishing model details
  • Local tensorboard
  • Looking at graphics in a dataset
  • More than one image
  • Confusion matrix
  • Multiple callbacks

Week 4: Federated learning

  • Introduction: A conversation with Andrew Ng
  • Training on mobile devices
  • Data at the edge
  • How it works
  • Maintaining user privacy
  • Masking
  • APIs for federated learning
  • Example of federated learning

Program Instructors

Laurence Moroney Instructor

Lead AI Advocate, Google

Sign Up

Be notified of new courses

    Frequently Asked Questions

    The TensorFlow: Data and Deployment Specialization is for anyone who has a basic understanding of how to build models in TensorFlow and wants to learn how to more effectively train and deploy models in TensorFlow.

    In Course 1, you’ll learn how to run models in your browser using TensorFlow.js. In Course 2, you’ll prepare your model for mobile devices using TensorFlow Lite. In Course 3, you’ll access, organize, and process training data more easily using TensorFlow Data Services. In Course 4, you’ll explore four advanced deployment scenarios including federated learning.

    We recommend taking our TensorFlow in Practice Specialization first to understand how to build models in TensorFlow and understand best practices.

    It typically takes 4 weeks, 4-5 hours per week to complete each course. There will be four courses in the Specialization.

    It typically takes 4 weeks, 4-5 hours per week to complete each course. There will be four courses in the Specialization.

    The Specialization costs $49/month. You can also purchase each course for $49.

    You can audit the TensorFlow Specialization for free by going to the homepage of the course, clicking “Enroll,” and clicking “audit” at the bottom of the window. Note that you will not receive a certificate at the end of the course if you choose to audit.

    Yes, Coursera provides financial aid to learners who cannot afford the fee. You can apply for it by going to the Coursera course page and clicking on the Financial Aid link beneath the “Enroll” button on the left.

    You will receive a certificate at the end of each course if you pay for the courses and complete the programming assignments. There is a limit of 180 days of certificate eligibility, after which you would have to re-purchase the course. If you audit the course for free, you will not receive a certificate.

    Once all four courses in the Specialization are released and you are subscribed to the Specialization, you will also receive a certificate for the Specialization if you complete all four courses.

    This is a deeplearning.ai Specialization made up of multiple courses. You can take the Specialization now on Coursera.