Learn fundamentals of probabilistic analysis and inference. Build computer programs that reason with uncertainty and make predictions. Tackle machine learning problems, from recommending movies to spam filtering to robot navigation.
Probability and inference are used everywhere. For example, they help us figure out which of your emails are spam, what results to show you when you search on Google, how a self-driving car should navigate its environment, or even how a computer can beat the best Jeopardy and Go players! What do all of these examples have in common? They are all situations in which a computer program can carry out inferences in the face of uncertainty at a speed and accuracy that far exceed what we could do in our heads or on a piece of paper.
In this data analysis and computer programming course, you will learn the principles of probability and inference. We will put these mathematical concepts to work in code that solves problems people care about. You will learn about different data structures for storing probability distributions, such as probabilistic graphical models, and buld efficient algorithms for reasoning with these data structures.
By the end of this course, you will know how to model real-world problems with probability, and how to use the resulting models for inference.
You don’t need to have prior experience in either probability or inference, but you should be comfortable with basic Python programming and calculus.
What you'll learn:
- Basic discrete probability theory
- Graphical models as a data structure for representing probability distributions
- Algorithms for prediction and inference
- How to model real-world problems in terms of probabilistic inference