Probabilistic Deep Learning with TensorFlow 2 (Coursera)

Probabilistic Deep Learning with TensorFlow 2 (Coursera)

Welcome to this course on Probabilistic Deep Learning with TensorFlow! This course builds on the foundational concepts and skills for TensorFlow taught in the first two courses in this specialisation, and focuses on the probabilistic approach to deep learning. This is an increasingly important area of deep learning that aims to quantify the noise and uncertainty that is often present in real world datasets. This is a crucial aspect when using deep learning models in applications such as autonomous vehicles or medical diagnoses; we need the model to know what it doesn't know.

Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.

You will learn how to develop probabilistic models with TensorFlow, making particular use of the TensorFlow Probability library, which is designed to make it easy to combine probabilistic models with deep learning. As such, this course can also be viewed as an introduction to the TensorFlow Probability library.
You will learn how probability distributions can be represented and incorporated into deep learning models in TensorFlow, including Bayesian neural networks, normalising flows and variational autoencoders. You will learn how to develop models for uncertainty quantification, as well as generative models that can create new samples similar to those in the dataset, such as images of celebrity faces.
You will put concepts that you learn about into practice straight away in practical, hands-on coding tutorials, which you will be guided through by a graduate teaching assistant. In addition there is a series of automatically graded programming assignments for you to consolidate your skills.
At the end of the course, you will bring many of the concepts together in a Capstone Project, where you will develop a variational autoencoder algorithm to produce a generative model of a synthetic image dataset that you will create yourself.
This course follows on from the previous two courses in the specialisation, Getting Started with TensorFlow 2 and Customising Your Models with TensorFlow 2. The additional prerequisite knowledge required in order to be successful in this course is a solid foundation in probability and statistics. In particular, it is assumed that you are familiar with standard probability distributions, probability density functions, and concepts such as maximum likelihood estimation, change of variables formula for random variables, and the evidence lower bound (ELBO) used in variational inference.
Course 3 of 3 in the TensorFlow 2 for Deep Learning Specialization.

Syllabus

WEEK 1
TensorFlow Distributions
Probabilistic modelling is a powerful and principled approach that provides a framework in which to take account of uncertainty in the data. The TensorFlow Probability (TFP) library provides tools for developing probabilistic models that extend the capability of TensorFlow. In this first week of the course, you will learn how to use the Distribution objects in TFP, and the key methods to sample from and compute probabilities from these distributions. You will also learn how to make these distributions trainable. The programming assignment or this week will put these techniques into practice by implementing a Naive Bayes classifier on the Iris dataset.

WEEK 2
Probabilistic layers and Bayesian neural networks
Accounting for sources of uncertainty is an important aspect of the modelling process, especially for safety-critical applications such as medical diagnoses. Most standard deep learning models do not quantify the uncertainty in their predictions. In this week you will learn how to use probabilistic layers from TensorFlow Probability to develop deep learning models that are able to provide measures of uncertainty in both the data, and the model itself. In the programming assignment for this week, you will develop a Bayesian CNN for the MNIST and MNIST-C datasets.

WEEK 3
Bijectors and normalising flows
Normalising flows are a powerful class of generative models, that aim to model the underlying data distribution by transforming a simple base distribution through a series of bijective transformations. In this week you will learn how to use bijector objects from the TensorFlow Probability library to implement these transformations, and learn a complex transformed distribution from data. These models can be used to sample new data generations, as well as evaluate the likelihood of data examples. In the programming assignment for this week, you will develop a RealNVP normalising flow model for the LSUN bedroom dataset.

WEEK 4
Variational autoencoders
Variational autoencoders are one of the most popular types of likelihood-based generative deep learning models. In the VAE algorithm two networks are jointly learned: an encoder or inference network, as well as a decoder or generative network. In this week you will learn how to implement the VAE using the TensorFlow Probability library. You will then use the trained networks to encode data examples into a compressed latent space, as well as generate new samples from the prior distribution and the decoder. In the programming assignment for this week, you will develop the variational autoencoder for an image dataset of celebrity faces.

WEEK 5
Capstone Project
In this course you have learned how to develop probabilistic deep learning models using tools and concepts from the TensorFlow Probability library such as Distribution objects, probabilistic layers, bijectors, and KL divergence optimisation. The Capstone Project brings many of these concepts together with a task to create a synthetic image dataset using normalising flows, and train a variational autoencoder on the dataset.

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Getting started with TensorFlow 2 (Coursera) Coursera
Imperial College London

Getting started with TensorFlow 2 (Coursera)

Welcome to this course on Getting started with TensorFlow 2! In this course you will learn a complete end-to-end workflow for developing deep learning models with Tensorflow, from building, training, evaluating and predicting with models using the Sequential API, validating your models and including regularisation, implementing callbacks, and saving and loading models.

Nov 9th 2026
5-12 Weeks
AI for Medical Diagnosis (Coursera) Coursera
DeepLearning.AI

AI for Medical Diagnosis (Coursera)

AI is transforming the practice of medicine. It’s helping doctors diagnose patients more accurately, make predictions about patients’ future health, and recommend better treatments. As an AI practitioner, you have the opportunity to join in this transformation of modern medicine. If you're already familiar with some of the math and coding behind AI algorithms, and are eager to develop your skills further to tackle challenges in the healthcare industry, then this specialization is for you. No prior medical expertise is required!

Nov 9th 2026
3 Weeks
Practical Python for AI Coding 1 (Coursera) Coursera
Korea Advanced Institute of Science and Technology - KAIST

Practical Python for AI Coding 1 (Coursera)

This course is for a complete novice of Python coding, so no prior knowledge or experience in software coding is required. This course selects, introduces and explains Python syntaxes, functions and libraries that were frequently used in AI coding. In addition, this course introduces vital syntaxes, and functions often used in AI coding and explains the complementary relationship among NumPy, Pandas and TensorFlow, so this course is helpful for even seasoned python users.

Nov 23rd 2026
5-12 Weeks
Browser-based Models with TensorFlow.js (Coursera) Coursera
DeepLearning.AI

Browser-based Models with TensorFlow.js (Coursera)

Bringing a machine learning model into the real world involves a lot more than just modeling. This Specialization will teach you how to navigate various deployment scenarios and use data more effectively to train your model. In this first course, you’ll 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.

Nov 9th 2026
4 Weeks
Customising your models with TensorFlow 2 (Coursera) Coursera
Imperial College London

Customising your models with TensorFlow 2 (Coursera)

Welcome to this course on Customising your models with TensorFlow 2! In this course you will deepen your knowledge and skills with TensorFlow, in order to develop fully customised deep learning models and workflows for any application. You will use lower level APIs in TensorFlow to develop complex model architectures, fully customised layers, and a flexible data workflow. You will also expand your knowledge of the TensorFlow APIs to include sequence models.

Nov 9th 2026
5-12 Weeks
AI Capstone Project with Deep Learning (Coursera) Coursera
IBM

AI Capstone Project with Deep Learning (Coursera)

In this capstone, learners will apply their deep learning knowledge and expertise to a real world challenge. They will use a library of their choice to develop and test a deep learning model. They will load and pre-process data for a real problem, build the model and validate it. Learners will then present a project report to demonstrate the validity of their model and their proficiency in the field of Deep Learning.

Nov 9th 2026
4 Weeks
Introduction to Artificial Intelligence (AI) (Coursera) Coursera
IBM

Introduction to Artificial Intelligence (AI) (Coursera)

In this course you will learn what Artificial Intelligence (AI) is, explore use cases and applications of AI, understand AI concepts and terms like machine learning, deep learning and neural networks. You will be exposed to various issues and concerns surrounding AI such as ethics and bias, & jobs, and get advice from experts about learning and starting a career in AI. You will also demonstrate AI in action with a mini project.

Nov 9th 2026
4 Weeks
Decision Making and Reinforcement Learning (Coursera) Coursera
Columbia University

Decision Making and Reinforcement Learning (Coursera)

This course is an introduction to sequential decision making and reinforcement learning. We start with a discussion of utility theory to learn how preferences can be represented and modeled for decision making. We first model simple decision problems as multi-armed bandit problems in and discuss several approaches to evaluate feedback. We will then model decision problems as finite Markov decision processes (MDPs), and discuss their solutions via dynamic programming algorithms. We touch on the notion of partial observability in real problems, modeled by POMDPs and then solved by online planning methods.

Nov 23rd 2026
5-12 Weeks
Sequence Models (Coursera) Coursera
DeepLearning.AI

Sequence Models (Coursera)

This course will teach you how to build models for natural language, audio, and other sequence data. Thanks to deep learning, sequence algorithms are working far better than just two years ago, and this is enabling numerous exciting applications in speech recognition, music synthesis, chatbots, machine translation, natural language understanding, and many others.

Nov 9th 2026
3 Weeks
NLP Modelos y Algoritmos (Coursera) Coursera
Universidad Austral

NLP Modelos y Algoritmos (Coursera)

Este curso te brindará los conocimientos necesarios para la implementación de algoritmos de NLP. Mediante el uso de los últimos algoritmos más populares en NLP se procederá a dar solución a un conjunto de problemas propios del área. Para realizar este curso es necesario contar con conocimientos de programación de nivel básico a medio, deseablemente conocimiento básico del lenguaje Python y es recomendable conocer los Jupyter Notebooks en el entorno Anaconda.

Nov 23rd 2026
4 Weeks