Course Information

Description

Probability is a mathematical discipline for reasoning about randomness: it helps us make decisions in the face of uncertainty and build better systems. In this course, we will teach you the fundamental ideas of probability and random processes. The various assignments are carefully designed to strengthen your mathematical understanding of probability and to demonstrate how these concepts can be applied to the real world, be it in communication networks, control systems, or machine learning.

Prerequisites

Knowledge of probability at the level of CS 70 or STAT 134. Familiarity with linear algebra.

Textbooks

Course Outline

(Subject to some changes)

  1. M1: Fundamentals of Probability / 4 weeks / Main Reference: BT
    • Review: Discrete and Continuous Probability
    • Conditioning, Convolution, Transforms
    • Bounds, Convergence of Random Variables, Information Theory and Coding
    • Labs: Introduction/ Fountain Codes/ Auctions/ Huffman Codes
  2. M2: Random Processes / 4.5 weeks / Main References: BT & W
    • Markov Chains (Discrete and Continuous Time), Queueing
    • Poisson Processes
    • Random Graphs
    • Labs: Sampling, Random Graphs
  3. M3: Inference, Estimation, Learning / 4 weeks / Main References: BT & W
    • MLE/MAP, Detection, Communication, Hypothesis Testing
    • Estimation, Kalman Filter
    • Hidden Markov Models, Expectation Maximization & Clustering
    • Labs: Project, Kalman Filter, Viterbi Algorithm, EM Algorithm

Piazza

We will be using Piazza for class discussion. Rather than emailing questions to the GSIs, we encourage you to post your questions on Piazza. Find our class page here.

Grading

The grading breakdown is as follows:

Exams

See the exams page for details.

Homework

Labs

Project

Collaboration

Discussions about assignments are allowed and encouraged, but each student is expected to write his/her own solutions.