Wilson Mar bio photo

Wilson Mar


Email me Calendar Skype call

LinkedIn Twitter Gitter Instagram Youtube

Github Stackoverflow Pinterest

TensorFlow Certification

US (English)   Español (Spanish)   Français (French)   Deutsch (German)   Italiano   Português   Estonian   اَلْعَرَبِيَّةُ (Egypt Arabic)   中文 (简体) Chinese (Simplified)   日本語 Japanese   한국어 Korean


Here are links to each skill to be tested by the $100 5-hour Tensorflow Certification Exam, according to the Certificate Candidate Handbook pdf:

  1. Build and train neural network models using TensorFlow 2.x
  2. Image classification
  3. Natural language processing (NLP)
  4. Time series, sequences, and predictions

NOTE: Content here are my personal opinions, and not intended to represent any employer (past or present). “PROTIP:” here highlight information I haven’t seen elsewhere on the internet because it is hard-won, little-know but significant facts based on my personal research and experience.

The above certification categories is used as the structure of 4 classes in the TensorFlow in Practice Specialization:

  1. Introduction to TensorFlow for Artificial Intelligence, Machine Learning, and Deep Learning
  2. Convolutional Neural Networks (CNN) in Tensorflow
  3. Natural Language Processing (NLP) in TensorFlow
  4. Sequences, Time Series, and Prediction

They are offered by deeplearning.ai (Andrew Ng) through Coursera.com. The instruction is Laurence Moroney who works at Google Brain.

Each course is scheduled for 4 weeks (containing 4 lessons each), but you may be able to finish earlier since each course costs $49 per month after a 7-day free trial.

In quizzes along the way, you get 3 attempts 8 hours apart. You have to answer all questions again on every attempt.

PROTIP: I usually set the speed at 1.25X.


These certification topics are arranged differently than documentation:

Tutorials arranges topics by order of difficulty:

  • BEGINNER: ML basics with Keras
  • BEGINNER: Load and preprocess data
  • BEGINNER: Estimator

  • ADVANCED: Customization
  • ADVANCED: Distributed training
  • ADVANCED: Images
  • ADVANCED: Text
  • ADVANCED: Structured data
  • ADVANCED: Generative
  • ADVANCED: Interoperability

The Guide arranges topics by type:

  • TensorFlow 2
  • Keras
  • Estimators
  • Customization
  • Data input pipelines
  • Save a model
  • Accelerators
  • Performance
  • Appendix: Version compatibility


Deep Learning with Python, 2nd edition (Manning book) by Francois Chollet

Build and train neural network models using TensorFlow 2.x

You need to understand the foundational principles of machine learning (ML) and deep learning (DL) using TensorFlow 2.x:

  • Use TensorFlow 2.x.
  • Build, compile, and train machine learning (ML) models using TensorFlow.
  • Preprocess data to get it ready for use in a model.
  • Use models to predict results.
  • Build sequential models with multiple layers.
  • Build and train models for binary classification.
  • Build and train models for multi-class categorization.
  • Plot loss and accuracy of a trained model.
  • Identify strategies to prevent overfitting, including augmentation and dropout.
  • Use pretrained models (transfer learning).
  • Extract features from pre-trained models.
  • Ensure that inputs to a model are in the correct shape.
  • Ensure that you can match test data to the input shape of a neural network.
  • Ensure you can match output data of a neural network to specified input shape for test data.
  • Understand batch loading of data.

  • Use callbacks to trigger the end of training cycles.
  • Use datasets from different sources.
  • Use datasets in different formats,including json and csv.
  • Use datasets from tf.data.datasets.

Image classification

You need to understand how to build image recognition and object detection models with deep neural networks and convolutional neural networks using TensorFlow 2.x:

  • Define Convolutional neural networks with Conv2D and pooling layers.
  • Build and train models to process real-world image datasets.
  • Understand how to use convolutions to improve your neural network.
  • Use real-world images in different shapes and sizes.
  • Use image augmentation to prevent overfitting.
  • Use Image Data Generator.
  • Understand how ImageDataGenerator labels images based on the directory structure.

Natural language processing (NLP)

You need to understand how to use neural networks to solve natural language processing problems using TensorFlow.

  • Build natural language processing systems using TensorFlow.
  • Prepare text to use in TensorFlow models.
  • Build models that identify the category of a piece of text using binary categorization.
  • Build models that identify the category of a piece of text using multi-class categorization.
  • Use word embeddings in your TensorFlow model.
  • Use LSTMs in your model to classify text for either binary or multi-class categorization.
  • Add RNN and GRU layers to your model.
  • Use RNNS, LSTMs, GRUs and CNNs in models that work with text.
  • Train LSTMs on existing text to generate text (such as songs and poetry).

Time series, sequences, and predictions

You need to understand how to solve time series and forecasting problems in TensorFlow. You need to know how to:

  • Train, tune, and use timeseries, sequence, and prediction models.
  • Prepare data for time series learning.
  • Understand Mean Average Error (MAE) and how it can be used to evaluate accuracy of sequence models.

    errors = forecasts - actual
     mae = np.abs(errors) .mean()  # absolute value to not penalize large values
     keras.metrics.mean_absolute_error(x_valid, naive_forecast).numpy()
    # mean squared error:
     mse = np.square(errors) .mean()  # so opposite errors don't cancel each other out
     rmse = np.sqrt(mse)  # root mean square error
     mape = np.abs(errors / x_valid) .mean()  # mean absolute percentage error
  • Use RNNs and CNNs for timeseries, sequence, and forecasting models.
  • Identify when to use trailing versus centred windows.
  • Use TensorFlow for forecasting.
  • Prepare features and labels.
  • Identify and compensate for sequence bias.
  • Adjust the learning rate dynamically in time series, sequence, and prediction models.

Multi-Variate (births/deaths, CO2/Temp, Longitude/Latitude) imputation. Seasonality. Autocorrelation with lag. Impulses. Spikes are called innovations. Stationary. Fixed partioning of Training Period, Validation Period, Test Period. Or roll-forward partioning a day at a time. “Differencing” Moving averge for a smoothing effect. Trailing window and centered windows to smooth past values.

Week 1 Lesson 2 has an error https://github.com/tensorflow/tensorflow/issues/27470

Week 1 Lesson 3 Forecasting


In lesson 4, sun spot activity.


Those who have passed the test get listed on Google’s directory (for 3 years). The first certificate was dated 6 March 2020. There were 198 as of 18 Jun 2020.


https://www.mrdbourke.com/ml-study-may-2020/ https://towardsdatascience.com/how-i-passed-the-tensorflow-developer-certification-exam-f5672a1eb641 by Daniel Bourke

Test environment

You can take the test at home The TensorFlow certificate exam runs in the TF Exam plugin inside PyCharm, which provide the UI to submit answers.

PyCharm has a free Community Edition and a Professional edition for $89.

Call the project “TFExams”.

Not all questions have the same weight. In the test you have to code five models of increasing difficulty:

  1. Basic/Simple model
  2. Model from learning dataset
  3. Convolutional Neural Network with real-world image dataset
  4. NLP Text Classification with real-world text dataset
  5. Sequence Model with real-world numeric dataset

It’s an open book test. But you need to score 90% or more to pass. If you don’t pass, you must wait 14 days before taking it a second time, two months for the third attempt, and one year for the 4th exam.

TensorFlow Developer Certificate | Google Brain

Colab Run Environment

For practice, it’s free to run Google Colab (Colaboratory) environment on-line, but more memory, faster CPU, longer runtimes can be had for $10/month.

Colab have a UI like Google Docs. Click the Settings icon to change Site Theme to “Adaptive” for white font on black background. PROTIP: Press Shift+Enter to run.