CS4323 Bayesian Methods for Neural Networks

Probabilistic methods, particularly Bayesian methods, are fundamental for many machine learning techniques, including deep learning. Bayesian methods focus on modeling uncertainty, which is key in many real-world applications with noisy data. This class will focus on the theory, the implementation (in Python), and the real-world application of Bayesian methods (e.g. Variational Inference) for neural networks. It will build on the Python programming knowledge taught in CS 2020 and the probability and statistics knowledge taught in OS 3307.

Prerequisite

CS2020, OS3307

Lecture Hours

3

Lab Hours

2

Course Learning Outcomes

  • Explain the mathematics underlying probabilistic, particularly Bayesian, linear and neural network methods
  • Translate those mathematical concepts into Python code, using libraries such as Tensorflow or Pytorch
  • Apply the Bayesian linear and neural network methods discussed in the course to solve problems, where those methods are applicable