In this class, you will learn the basics of the PGM representation and how to construct them, using both human knowledge and machine learning techniques.
What are Probabilistic Graphical Models?
Uncertainty is unavoidable in real-world applications: we can almost never predict with certainty what will happen in the future, and even in the present and the past, many important aspects of the world are not observed with certainty. Probability theory gives us the basic foundation to model our beliefs about the different possible states of the world, and to update these beliefs as new evidence is obtained. These beliefs can be combined with individual preferences to help guide our actions, and even in selecting which observations to make. While probability theory has existed since the 17th century, our ability to use it effectively on large problems involving many inter-related variables is fairly recent, and is due largely to the development of a framework known as Probabilistic Graphical Models (PGMs). This framework, which spans methods such as Bayesian networks and Markov random fields, uses ideas from discrete data structures in computer science to efficiently encode and manipulate probability distributions over high-dimensional spaces, often involving hundreds or even many thousands of variables. These methods have been used in an enormous range of application domains, which include: web search, medical and fault diagnosis, image understanding, reconstruction of biological networks, speech recognition, natural language processing, decoding of messages sent over a noisy communication channel, robot navigation, and many more. The PGM framework provides an essential tool for anyone who wants to learn how to reason coherently from limited and noisy observations.In this class, you will learn the basics of the PGM representation and how to construct them, using both human knowledge and machine learning techniques; you will also learn algorithms for using a PGM to reach conclusions about the world from limited and noisy evidence, and for making good decisions under uncertainty. The class covers both the theoretical underpinnings of the PGM framework and practical skills needed to apply these techniques to new problems.
Topics covered include:
There will be short weekly review quizzes and programming assignments (Octave/Matlab) focusing on case studies and applications of PGMs to real-world problems:
To prepare for the class in advance, you may consider reading through the following sections of the textbook (discount code DKPGM12) by Daphne and Nir Friedman:
These will be covered in the first two weeks of the online class.
The slides for the whole class can be found here.
Yes. Students who successfully complete the class will receive a statement of accomplishment signed by the instructor.
You should be able to program in at least one programming language and have a computer (Windows, Mac or Linux) with internet access (programming assignments will be conducted in Matlab or Octave). It also helps to have some previous exposure to basic concepts in discrete probability theory (independence, conditional independence, and Bayes' rule).
Although the lectures are designed to be self-contained, students wanting to expand their knowledge beyond what we can cover in a one-quarter class can find a much more extensive coverage of this topic in the book "Probabilistic Graphical Models", by Koller and Friedman, published by MIT Press. MIT Press has generously provided a discount code (DKPGM12) for students enrolled in this course.
This class does require some abstract thinking and mathematical skills. However, it is designed to require fairly little background, and a motivated student can pick up the background material as the concepts are introduced. We hope that, using our new learning platform, it should be possible for everyone to understand all of the core material.