University of Waterloo

Term and Year of Offering: Spring 2012

Course Number and Title: CS786, Probabilistic Inference and Machine Learning



Comp Sec Camp Loc Time Days/Date Bldg Room Instructor
LEC 001 UW U 10:00-11:20TTh DC 2568

Instructor's Name Office Location Contact Office Hours
Pascal Poupart DC2514   TTh 11:30-12:30

Course Description:

The design of automated systems capable of accomplishing complicated tasks is at the heart of computer science.  Abstractly, automated systems can be viewed as taking inputs and producing outputs towards the realization of some objectives.  In practice, the design of systems that produce the best possible outputs can be quite challenging when the consequences of the outputs are uncertain and/or dependent on other systems, the information provided by the inputs is incomplete and/or noisy, there are multiple (possibly competing) objectives to satisfy, the system must adapt to its environment over time, etc.  This course will focus on the principles of probabilistic inference and machine learning.  The modelling and algorithmic techniques that will be covered are quite versatile and can be used to tackle a wide range of problems in many fields including robotics (e.g., mobile robot navigation), computer systems (e.g., autonomic computing, query optimization), human-computer interaction (e.g., spoken dialog systems, user modelling), natural language processing (e.g., topic modeling, document clustering), bioinformatics (e.g., gene sequencing, design of experiments), data mining (e.g., fraud detection, information retrieval).  Hence, the course should be of interest to a wide audience.

Course Objectives:

At the end of the course, students should have the ability to:

Course Overview:

The topics we will cover include:

  1. Model Representations
    1. Directed graphical models: Bayesian networks
    2. Undirected graphical models: Markov networks (including deep belief networks and Markov logic networks)
  2. Probabilistic inference techniques
    1. Variable elimination
    2. Weighted model counting
    3. Inference as optimization
    4. Sampling techniques
    5. MAP inference
  3. Machine Learning
    1. Parameter estimation
    2. Partially observed data
    3. Structure learning

Required text:

The textbook for CS786 is Probabilistic Graphical Models: Principles and Techniques MIT Press, by Koller and Friedman.  This will be the main reference for the course.  A copy is currently on reserve at the library.  Readings in the textbook are assigned for most lectures in the course schedule.


The grading scheme for the course is as follows:

NB: For an audit mark, you need to submit the assignments.


There will be five assignments.  Each assignment must be done individually (i.e., no team) and will consist entirely of programming questions.  More precisely, you will be asked to program some algorithms for probabilistic inference and machine learning and to test them on some datasets.  You are free to program in the language of your choice, as long as it is supported by Marmoset, which is an automated system to compile, run and evaluate programs. 


There is no midterm and no final exam.

Rules for Group Work:

Assignments and projects must be done individually. The paper presentations can be done in groups of up to 3 people.

Indication of how late submission of assignments and missed assignments will be treated

On the due date of an assignment, programs should be submitted via Marmoset.  Late programs may be submitted for half credit within 24 hours. Programs submitted more than 24 hours late will not be marked.

Indication of where students are to submit assignments and pick up marked assignments

Assignments must be submitted electronically via Marmoset. All that is returned is a mark based on the performance of the program.  The marks will be made available via Marmoset.

Academic Integrity: In order to maintain a culture of academic integrity, members of the University of Waterloo community are expected to promote honesty, trust, fairness, respect and responsibility. [Check for more information.]

Grievance: A student who believes that a decision affecting some aspect of his/her university life has been unfair or unreasonable may have grounds for initiating a grievance. Read Policy 70, Student Petitions and Grievances, Section 4, When in doubt please be certain to contact the department's administrative assistant who will provide further assistance.

Discipline: A student is expected to know what constitutes academic integrity [check] to avoid committing an academic offence, and to take responsibility for his/her actions. A student who is unsure whether an action constitutes an offence, or who needs help in learning how to avoid offences (e.g., plagiarism, cheating) or about 'rules' for group work/collaboration should seek guidance from the course instructor, academic advisor, or the undergraduate Associate Dean. For information on categories of offences and types of penalties, students should refer to Policy 71, Student Discipline, For typical penalties check Guidelines for the Assessment of Penalties,

Appeals: A decision made or penalty imposed under Policy 70 (Student Petitions and Grievances) (other than a petition) or Policy 71 (Student Discipline) may be appealed if there is a ground. A student who believes he/she has a ground for an appeal should refer to Policy 72 (Student Appeals)

Note for Students with Disabilities: The Office for persons with Disabilities (OPD), located in Needles Hall, Room 1132, collaborates with all academic departments to arrange appropriate accommodations for students with disabilities without compromising the academic integrity of the curriculum. If you require academic accommodations to lessen the impact of your disability, please register with the OPD at the beginning of each academic term.