**About this course: **Probabilistic graphical models (PGMs) are a rich framework for encoding probability distributions over complex domains: joint (multivariate) distributions over large numbers of random variables that interact with each other. These representations sit at the intersection of statistics and computer science, relying on concepts from probability theory, graph algorithms, machine learning, and more. They are the basis for the state-of-the-art methods in a wide variety of applications, such as medical diagnosis, image understanding, speech recognition, natural language processing, and many, many more. They are also a foundational tool in formulating many machine learning problems.
This course is the first in a sequence of three. It describes the two basic PGM representations: Bayesian Networks, which rely on a directed graph; and Markov networks, which use an undirected graph. The course discusses both the theoretical properties of these representations as well as their use in practice. The (highly recommended) honors track contains several hands-on assignments on how to represent some real-world problems. The course also presents some important extensions beyond the basic PGM representation, which allow more complex models to be encoded compactly.

JH

Excellent course. The video lectures are challenging (had to keep my finger on the pause key) even if you're familiar with the math, since the instructor encapsulates concepts in an amazingly concise manner. This pays off with a lot of "Aha!" moments as strong concepts are combined to create insights, especially starting around week 3. I'm already in love with this subject after 1 part

It would have been nice to have more worked homework problems, since this is a math course. But, this is not necessary to pass the class or understand the concepts. I've purchased Prof Koller's text on PGM and hope to solidify some of the intuitions I'm missing shortly.

Taking off a star because the test cases and grading software for the honors homework assessments were clearly low effort and sometimes incorrect. There were a lot of cases where functions passed all the provided and automatic test cases despite major flaws (e.g. not working for any cases besides n=1), which made it difficult to tell if things worked since the programming style is unique. The homework itself was super interesting and valuable, but I probably spent over 50% of the time fighting the grader instead of learning stuff. Given that I'm a professional programmer and completed most of the homework in 25-50% of the estimated time, I'm guessing that the average student wasted even more time with issues that are ultimately unrelated to our understanding of PGM.