10708 - Probablistic Graphical Models, Fall 2023

Instructors:

Andrej Risteski

Email: aristesk [at] andrew [dot] cmu [dot] edu


Course Outline


Many of the problems in artificial intelligence, statistics, computer systems, computer vision, natural language processing, and computational biology, among many other fields, can be viewed as the search for a coherent global conclusion from local information. The probabilistic graphical models’ framework provides a unified view for this wide range of problems, enabling efficient inference, decision-making, and learning in problems with a very large number of attributes and huge datasets. This graduate-level course will provide you with a strong foundation for both applying graphical models to complex problems and for addressing core research topics in graphical models. The class will cover classical families of undirected and directed graphical models (i.e. Markov Random Fields and Bayesian Networks), modern deep generative models, as well as topics in graph neural networks and causal inference. It will also cover the necessary algorithmic toolkit, including variational inference and Markov Chain Monte Carlo methods. Students entering the class should have a pre-existing working knowledge of probability, statistics, and algorithms, though the class has been designed to allow students with a strong mathematical background to catch up and fully participate. Students are required to have successfully completed an introductory course to ML (for example 10715, 10701, or 10601) or an equivalent class.

Course Relevance
Probabilistic graphical models provide a unified view for a wide range of problems in artificial intelligence, statistics, causal reasoning, computer vision, natural language processing, and computational biology, among many other fields.
Course Goals
Students should obtain sufficient working knowledge of multivariate probabilistic modeling and inference for practical applications, should be able to formulate and solve a wide range of problems in their own domain using GM, and should be able to advance into more specialized technical literature by themselves.

Logistics

Time and Location
TTh 12:30pm - 2:50pm in POS 153
Contact Information
If you have a question, to get a response from the teaching staff quickly we strongly encourage you to post it to the class Piazza forum. For private matters, please make a private note visible only to the course instructors. For longer discussions with TAs and to get help in person, we strongly encourage you to come to office hours.
Office Hours
Office hours can be found here.
Teaching Assistants
Arnhav Datar
     
Atishay Jain
     
Lawrence Jang
     
Yilong Qin
     
Chloe Su
Prerequisites
Students entering the class are expected to have a pre-existing working knowledge of the following:
  • Introductory machine learning.
  • Significant experience programming in a general programming language. Some homeworks may require you to use Python, so you will need to at least be proficient in the basics of Python.
  • Mathematical maturity, including college-level probability, calculus, linear algebra, and discrete mathematics.
Course Materials
Homework assignments will be announced on Piazza when released. Slides will be posted periodically on the course website. The instructor will try to upload slides before class, and additional readings will be posted whenever possible.


Assignments, Quizzes and Grading

Assignments: There are 5 planned assignments scheduled this semester. These will typically include both a written component and a programming component. The tentative schedule of release and due dates can be seen in the schedule. Written solutions can be completed using either the latex templates, which will be released with the assignments, or handwritten onto the PDF handout. The assignments are to be done by each student individually. You may discuss the general idea of the questions with anyone you like, but your discussion may not include the specific answers to any of the problems and when writing your solutions you must close all notes and write the answer entirely yourself.
Project: The course will have one project, to be completed by the end of the semester. It will give you an opportunity to explore a probablistic graphical model area of particular interest. You will work in groups of 2-3 (exceptions may be granted on a case-by-case basis). More details will be released later in the semester on Piazza. Example projects from previous semesters can be found here
Course grades: The final course grade will be based on the following breakdown:

  • Assignments - 70%
  • Project - 30%
  • Class Attendance (extra credit) - 3%.
Submitting Assignments
Assignments will be submitted through Gradescope. Writeups should be typeset in Latex and should be submitted in PDF form. All code should be submitted with a README file with instructions on how to execute your code. You should have received an invite to Gradescope for 10708 Probabilistic Graphical Models Fall 2022. Login via the invite.
Marking
As a general rule, matters of marking on assignments and exams (apparent errors, questions about evaluation criteria, etc.) should be taken to the marker (via Gradescope Regrade Request).

General Policies

Grace Day/Late Homework Policy
Homeworks: Each student will have a total of 5 grace days that a student may choose to apply to the homework assignments. No more than 2 grace days can be used on any single assignment. There will be no late days allowed for the projects (either for the proposal or final project.)
Homeworks submitted late when the student has no Grace days remaining or 2 days past the deadline will be given a score of 0.
Extensions

In general, we do not grant extensions on assignments. There are several exceptions:

For any of the above situations, you may request an extension by emailing the instructor – do not email the TAs. The email should be sent as soon as you are aware of the conflict and at least 5 days prior to the deadline. In the case of an emergency, no notice is needed.

Audit Policy

Official auditing of the course (i.e. taking the course for an “Audit” grade) is permitted this semester with permission from the instructor.

Pass/Fail Policy

We allow you take the course as Pass/Fail. Instructor permission is not required. What grade is the cutoff for Pass will depend on your program. Be sure to check with your program / department as to whether you can count a Pass/Fail course towards your degree requirements.

Accommodations for Students with Disabilities:

If you have a disability and have an accommodation letter from the Disability Resources office, I encourage you to discuss your accommodations and needs with the instructor as early in the semester as possible. We will work with you to ensure that accommodations are provided as appropriate. If you suspect that you may have a disability and would benefit from accommodations but are not yet registered with the Office of Disability Resources, I encourage you to contact them at access@andrew.cmu.edu.

Academic Integrity Policies

Read this carefully!

(Adapted from Roni Rosenfeld’s 10-601 Spring 2016 Course Policies.)

Collaboration among Students
Previously Used Assignments

Some of the homework assignments used in this class may have been used in prior versions of this class, or in classes at other institutions, or elsewhere. Solutions to them may be, or may have been, available online, or from other people or sources. It is explicitly forbidden to use any such sources, or to consult people who have solved these problems before. It is explicitly forbidden to search for these problems or their solutions on the internet. You must solve the homework assignments completely on your own. We will be actively monitoring your compliance. Collaboration with other students who are currently taking the class is allowed, but only under the conditions stated above.

Policy Regarding “Found Code”:

You are encouraged to read books and other instructional materials, both online and offline, to help you understand the concepts and algorithms taught in class. These materials may contain example code or pseudo code, which may help you better understand an algorithm or an implementation detail. However, when you implement your own solution to an assignment, you must put all materials aside, and write your code completely on your own, starting “from scratch”. Specifically, you may not use any code you found or came across. If you find or come across code that implements any part of your assignment, you must disclose this fact in your collaboration statement.

Duty to Protect One’s Work

Students are responsible for pro-actively protecting their work from copying and misuse by other students. If a student’s work is copied by another student, the original author is also considered to be at fault and in gross violation of the course policies. It does not matter whether the author allowed the work to be copied or was merely negligent in preventing it from being copied. When overlapping work is submitted by different students, both students will be punished.

To protect future students, do not post your solutions publicly, neither during the course nor afterwards.

Penalties for Violations of Course Policies

All violations (even first one) of course policies will always be reported to the university authorities (your Department Head, Associate Dean, Dean of Student Affairs, etc.) as an official Academic Integrity Violation and will carry severe penalties.

  1. The penalty for the first violation is a one-and-a-half letter grade reduction. For example, if your final letter grade for the course was to be an A-, it would become a C+.

  2. The penalty for the second violation is failure in the course, and can even lead to dismissal from the university.

Support

Take care of yourself. Do your best to maintain a healthy lifestyle this semester by eating well, exercising, avoiding drugs and alcohol, getting enough sleep and taking some time to relax. This will help you achieve your goals and cope with stress.

All of us benefit from support during times of struggle. You are not alone. There are many helpful resources available on campus and an important part of the college experience is learning how to ask for help. Asking for support sooner rather than later is often helpful.

If you or anyone you know experiences any academic stress, difficult life events, or feelings like anxiety or depression, we strongly encourage you to seek support. Counseling and Psychological Services (CaPS) is here to help: call 412-268-2922 and visit their website at http://www.cmu.edu/counseling/. Consider reaching out to a friend, faculty or family member you trust for help getting connected to the support that can help.

If you or someone you know is feeling suicidal or in danger of self-harm, call someone immediately, day or night:

If you have questions about this or your coursework, please let the instructors know.


Contact Information

Email: aristesk [at] andrew [dot] cmu [dot] edu