CMPSCI 688—Spring 2024
Probabilistic Graphical Models

Welcome to the Spring 2024 homepage for CMPSCI 688: Probabilistic Graphical Models. Below find basic information, coursework and schedule, and course policies.

Basic Information

Instructor Dan Sheldon, (email: sheldon at cs)
Lecture Tuesday, Thursday 4:00–5:15pm, Goessmann Lab 20
Echo 360
TAs Jinlin Lai (jinlinlai at
Shakir Sahibul (ssahibul at
Office Hours See list on Piazza (will be updated throughout semester)

Coursework and Schedule

Homework Assignments

There will be five homework assignments during the semester. Assignment packages will be posted on Canvas roughly 2 weeks before the due date and submitted via Gradescope.

Final Exam

The final exam is on May 13, 2023 from 1–3pm in Goesmann Lab 20.

Schedule and Topics

Here is an approximate schedule and list of topics for the course. This is subject to change and will be updated as we go. Slides will be added after class and links will be broken until they are added.

Week Lecture Date Topic Materials
1 1 2/1 Course overview Slides: nup, annotated
2 2 2/6 Backbround + Bayesian networks Slides: nup, annotated
3 2/8 Bayesian networks Slides: nup, annotated
3 4 2/13 D-Separation Slides: nup, annotated
5 2/15 Learning in Bayes nets Slides: nup, annotated, whiteboard
4 6 2/20 Undirected models Slides: nup, annotated
5 7 2/27 Undirected models Slides: nup, annotated
8 2/29 Inference Slides: nup, annotated
6 9 3/5 Message passing Slides: nup, annotated
10 3/7 Learning in undirected models Slides: nup, annotated
7 11 3/12 Exponential families Slides: nup, annotated
3/14 NO CLASS - illness
8 12 3/26 Exponential families Slides: nup, annotated
13 3/28 Markov chain Monte Carlo Slides: nup, annotated
9 14 4/2 MCMC foundations Slides: nup, annotated
15 4/4 Gibbs and Metropolis-Hastings Slides: nup, annotated
10 16 4/9 MCMC additional topics Slides: nup, annotated
17 4/11 Conjugate Bayesian inference Slides: nup, annotated
11 18 4/16 Hamiltonian Monte Carlo Slides: nup, annotated
19 4/18 Variational inference Slides: nup, annotated
12 20 4/23 Black-box VI Slides: nup, annotated
21 4/25 Variational autoencoders Slides: nup, annotated
13 4/30 NO CLASS
22 5/2 Gaussian Processes Slides: nup, annotated
14 23 5/7 Normalizing flows Slides: nup, annotated
24 5/9 Final review Slides: nup, annotated

For futher information, including readings and other source materials corresponding to the topics above, please see this list of topcs.


Course Description

Probabilistic graphical models are an intuitive visual language for describing the structure of joint probability distributions using graphs. They enable the compact representation and manipulation of exponentially large probability distributions, which allows them to efficiently manage the uncertainty and partial observability that commonly occur in real-world problems. As a result, graphical models have become invaluable tools in a wide range of areas from computer vision and sensor networks to natural language processing and computational biology. The aim of this course is to develop the knowledge and skills necessary to effectively design, implement and apply these models to solve real problems.

The course will cover (a) Bayesian and Markov networks and their dynamic and relational extensions; (b) exact and approximate inference methods; (c) estimation of both the parameters and structure of graphical models.


Students entering the class should have good programming skills and knowledge of algorithms. Python is strongly recommended. Undergraduate-level knowledge of probability, linear algebra, and calculus will be assumed. A prior course in machine learning is extremely helpful.

Here are some review resources on probability, linear algebra, and Python / SciPy:


There is no required textbook. These two books provide useful supplemental reading:

  1. Machine Learning: A Probabilistic Perspective (MLPP) by Kevin Murphy. Here is a link to free eBook access for UMass students.
  2. Probabilistic Graphical Models (PGM) by Koller and Friedman

An additional resource is

I will not assign specific readings for individual lectures. However, there is a partial list of topics that have been covered in previous years with associated readings and source material. Please refer to this list to find reference material, and ask a course staff member if you would like additional pointers.

Course Communications

Official announcements will be made via Piazza. Piazza will also host discussion forums for the class. To contact the course staff, please use a Piazza private post (not email). Here is the link to the CS 688 Piazza page: We will attempt to respond to communications with 24 hours on weekdays, 48 hours on weekends.


The coursework will consist of homework assignments, quizzes, and a final exam. The assignments will consist of mathematical derivations, programming and experimentation, and some written questions. Assignment solutions will be written as short reports. Quizzes will be administered online using Gradescope. Assignments will be submitted online via Gradescope. The grading percentage breakdown is:


Homework Submission

Homework assignments will generally consist of written derivations, implementation of machine learning algorithms in a language of your choice (Python is strongly recommended), evaluation of algorithms, and writing of reports. Both the code and report must be submitted by the due date for a submission to be considered on time. Reports must be typed. Assignments will be submitted via Gradescope.

Late Homework

To allow some flexibility to complete assignments given other constraints, you have a total of five free late days. You will be charged one late day for handing in an assignment within 24 hours after it is due, two late days for handing in an assignment within 48 hours after it is due, etc. Your assignment is considered late if either the written or code portions are submitted late. The late homework clock stops when both the written and code portions are submitted. After you have used up your late days, late homework will not count for credit except in special circumstances (i.e., illness documented by a doctor’s note).


Quizzes will be assigned roughly weekly on Gradescope. They will typically be posted at the end of a week and due the following Friday at 11:59pm. A quiz will generally involve solving 1–3 short problems. There is a one hour time limit. Quiz problems are not highly involved, but go beyond basic definitions and short answer questions. The intention is that students prepare by reviewing lecture slides and reading any associated materials before starting the quiz. With this preparation, the expected time to complete a quiz is no more than 30 minutes. There may not be sufficient time to both review material and produce answers within the time limits. The lowest quiz score will be dropped.


Homework assignments are considered individual work. You may discuss the problems with other students; however, to avoid issues with the course’s academic honesty policy, you should not take any materials out of such discussions (writing, whiteboard photos, etc.). You should never share your completed or in-progress code or write-up with another student in any form, or request to see another student’s code or write-up. Your derivations, code, and write-up must be your own work. Quizzes are strictly individual work. No collaboration of any kind is permitted on quizzes.

Academic Honesty

You are required to list the names of anyone you discuss problems with on the first page of your solution report. Copying any solution materials (derivations, code, method descriptions) from external sources (books, web pages, etc.) or from other students is considered cheating. Sharing your code or solutions with other students is also considered cheating. Collaboration indistinguishable from copying will be treated as copying. All instances of suspected cheating will be dealt with through official UMass Amherst Academic Honesty Procedures. Students are expected to be familiar with the relevant policies and procedures:


If you believe you’ve found a grading error for an assignment or quiz, please submit a regrade request. Regrade requests must be submitted no later than one week after the assignment is returned. Regrading may result in your original grade increasing or decreasing.

Attendance and Participation

Students are expected to attend class and participate in discussions and are responsible for all material presented and all announcements made in class. There is no grade penalty for missed classes. Video lectures will be available on Echo360 for all students 3-4 days after the lecture date; if a student is unable to attend class due to illness or a conflict, they may request access sooner via the CS688 Echo360 request form.

Course Material Intellectual Property Policy

The instructor and the University share intellectual property rights for all course materials including lecture slides, lecture audio/video recordings, demo code, assignment handouts, and exam materials. Students are allowed to keep copies of this material for personal use, but are prohibited from distributing it to other individuals and/or posting it in part or in whole on publicly accessible sites including on slide share sites and sites such as Chegg. Students are not permitted to make their own lecture recordings (audio or video). Official recordings will be made available to all students after a 10 day delay.

Accomodations for Disabilities

If you have a disability and would like to request accommodations, please contact Disability Services, located in 161 Whitmore Hall, (413) 545-0892. If you are eligible, they will grant you accommodations and notify the instructors.


Please read the CICS inclusivity statement, copied here:

At the Manning College of Information and Computer Sciences, we believe that you belong in computing. We welcome and value all individuals, regardless of previous computer science experience, age, citizenship, disability, sex, gender identity, military experience, political views, race, religion, or sexual orientation, while maintaining an environment that celebrates, welcomes, and honors those differences.

We’re committed to supporting all our students through their journeys in computer and information sciences–especially students from identities and backgrounds that are still underrepresented in our field. Diverse perspectives on the challenges our society faces animate our vision of Computing for the Common Good. Your insight, talents, and skills are needed to protect and improve an ecosystem that relies on the combined efforts of the greatest technical minds, and we believe your place is here.