Should the Tensorflow Developer Certificate be your next certification?

Kasturi Mitra
Credera Engineering
6 min readMay 10, 2022

A day after Covid-19 was declared a pandemic, Google introduced a new certification — the Tensorflow Developer Certificate. In case you are unfamiliar with it, Tensorflow is a widely used machine learning framework and it is very similar to PyTorch in terms of capabilities. It helps you to build and deploy deep learning models to perform a variety of tasks ranging from image classification to text generation.

A brief introduction to Artificial Neural Networks

Artificial Neural Networks (ANNs) consist of an input layer, an output layer, and either a single or multiple hidden layers. Each layer usually has multiple neurons (represented as nodes in Fig 1) which are then linked with other neurons. These connections together form a neural network. Such networks form the basis of deep learning, which is much of what Tensorflow offers.

Fig 1: A densely connected Deep Neural Network with multiple hidden layers | Source: https://www.ibm.com/cloud/learn/neural-networks

Further, each neuron has a weight associated, which determines its importance in the network. As a model is trained, these weights are updated so that the final layer produces an output as close to the actual output value as possible. For example, while classifying a bunch of animals as either dogs or cats, we would want the picture of a golden retriever (input) to be accurately classified as a dog (output).

So, what are tensors and how do they flow?

Despite the fancy name, tensors are nothing more than multidimensional arrays. These are what our input data points look like. In context to the example above, it would be the picture of a dog represented as a rank 3 tensor — 2 dimensions for x and y axes and 1 dimension for the RGB colour channel. When we look at a batch of these images together, we get a rank 4 tensor.

Fig 2: A rank 4 image data tensor, where each sample is a rank 3 tensor | Source: https://livebook.manning.com/concept/deep-learning/shape

If this notation seems confusing, it’s worth taking a look at this Kaggle notebook. Once you get a hang of how to represent the data in hand as tensors, designing the architecture for the neural network becomes easier.

Multiple math operations are performed on the input tensor as it flows through the network. These are handled by the Tensorflow library behind the scenes; we only create the underlying architecture, which is surprisingly intuitive thanks to the Tensorflow documentation.

The exam structure

Once you feel confident enough to test your knowledge, it would be best to understand how your knowledge would be tested and what you need to do to prepare for it.

The exam is priced at USD $100 (about £80), which is roughly the same as other certifications, if not cheaper. You can start your exam any time within six months from the purchase date, so there is no need to book a date or test centre in advance. You are expected to use your own computer and have all the prerequisite software installed before starting the exam.

You will be given five questions (or datasets) based on which you will need to train five models using Tensorflow. For the final exam, you are required to install a plugin in PyCharm and use the provided PyCharm environment for training and submitting your models. The models are scored on a scale of 1 to 5, based on their performance on hidden test datasets. You are allowed to submit models as many times as you like in the overall five hour time limit for the exam.

It is worth noting that the exam is purely practical, and you need to write the code from scratch; there are no multiple choice questions, unlike most certification exams. Additionally, there are no restrictions on what resources you can use. While the windows aren’t locked and you are free to Google as you please, you still need to understand the code in order to improve the models or fix any bugs. Bear in mind that you cannot ask an external person for help during the exam.

There are plenty of resources online to help you familiarise yourself with the course content and logistics. A good place to start would be the official Candidate Handbook. It lists what skills will be tested, what resources can be used, and how to setup the environment, amongst many other things. It is not a particularly long read and is incredibly helpful. You can use this as a self-assessment checklist to ensure you have brushed up on all the necessary skills before sitting for the exam.

Challenges whilst preparing

In theory, the Tensorflow exam is fairly simple — write a bunch of code to produce decent models with no need for memorising command line arguments or oddly named services on a cloud platform. You are expected to work with only three types of data: (1) image, (2) text, and (3) time series and sequencing, which narrows down the scope of the exam extensively.

However, training models from scratch comes with its own set of challenges, particularly because you are not just expected to train models. Here’s a short (albeit not exhaustive) list of tasks for every model:

  • Prepare and wrangle data from a variety of file formats such as JSON, CSV, image, plain text. The data may not be in the expected format
  • Generate artificial data — you may not have enough data to train more complex architectures without overfitting
  • Design the ANN architecture — this includes which layers to use, how many neurons each layer should have, and how this affects training time and performance. Five hours may not be sufficient if the architecture is too complex
  • Understand which hyperparameters to tune to improve the model, and how this affects model training time
  • Understand loss functions and how loss corresponds to overfitting or underfitting models
  • Identify and submit the best model

Figuring out how to cover everything within the stipulated timeframe requires a solid understanding of machine learning along with hours of hands-on experience with Tensorflow. In short, there is not much room for guess work, and practice is the only way forward.

That being said, I personally struggled a lot to find practice exams online. While it is easy to find sample datasets, there is no resource to give you a feel of the real exam. It is frustrating to have to create your own test dataset every time; this also defeats the purpose of the test dataset to some extent since you already know what the test data looks like.

Further, there is no clear grading scheme. What does it even mean to have model performance at 3/5? Is it good, okay, or outright unacceptable for passing? At what accuracy (or any other metric) are your models marked 5/5? Does this threshold change for different datasets? Personally, I found this to be the most challenging aspect of preparation. I crave feedback; with little to no context on how the models will be marked, there is no way of assessing how well prepared one is to sit for the final exam.

Is it worth it, then?

Mostly yes, and maybe no.

If you are new to machine learning, the syllabus for the certificate is a great place to start learning and applying your skills. However, with the lack of practice exams, it is easy to get lost in a never-ending quest for perfection, where no amount of practice is ever good enough. Though I would recommend holding off the exam until you’re confident working with new, unseen datasets, you need to set a hard deadline instead of pushing the test date every two weeks. The certificate is definitely worth getting to showcase your machine learning skills, especially if you’re switching from another field.

If you have some experience with machine learning (and deep learning), the course itself will act as a refresher module. It might be beneficial to have that extra certification on your CV. However, if you’ve already got a degree in a relevant field along with relevant work experience, the certificate will not add much value, despite taking minimal effort to obtain.

Overall, I would recommend the Tensorflow Developer Certificate. It is still quite niche, with only 3926 (as of 4th May 2022) holders so far. It stays valid for 36 months from the day of passing the exam, unlike many certificates which expire within a year. Being purely code based, it tests your understanding of the subject instead of memorisation skills. With the AI industry growing rapidly, you can never go wrong by having an ML certificate under your belt.

Interested in joining us?

Credera is currently hiring! View our open positions and apply here.

Got a question?

Please get in touch to speak to a member of our team.

--

--