6.885 Probabilistic Programming and Artificial Intelligence


Graduate Level
Units: 3-0-9
Instructors: Professor Martin Rinard, Vikash Mansignhka, Josh Tenenbaum
Schedule: Lectures W2-5, room 1-135
This subject counts as a Computer Systems concetration subject.
Introduces probabilistic programming, an emerging field at the intersection of programming languages, probability theory, and artificial intelligence. Shows how to define models and inference algorithms using executable code in new probabilistic programming languages, and how to use technical ideas from programming languages to formalize, generalize, and integrate modeling and inference approaches from multiple eras of AI. Example modeling formalisms include generative models, neural networks, symbolic programs, hierarchical Bayesian models, and causal Bayesian networks. Example inference approaches include Monte Carlo, numerical optimization, and neural network techniques. Includes hands-on exercises in probabilistic programming fundamentals plus applications to computer vision and data analysis, using two new open-source probabilistic programming platforms recently prototyped at MIT.